r3wp [groups: 83 posts: 189283]
  • Home
  • Script library
  • AltME Archive
  • Mailing list
  • Articles Index
  • Site search
 

World: r3wp

[View] discuss view related issues

Henrik
4-Aug-2010
[10114]
don't you have the R3 GUI source code?
Nicolas
4-Aug-2010
[10115]
agg_truetype_text.cpp ??
Anton
4-Aug-2010
[10116]
.cpp files are obviously C++ files, not rebol mezzanine code.
Henrik
4-Aug-2010
[10117]
rich text editing will probably not be handled at the AGG level.
Graham
6-Aug-2010
[10118x7]
This is cute.
I control-c'd a bit of rebol source from a web page ... which I wanted 
to edit before I pasted it into the console
Normally I would open up the rebol editor, and paste code into it, 
save it to a disk file and then run it.  And wondering why I always 
need rebol [ ] in the header ...
It just occurred to me ... can i just do this

editor clipboard://
and yes, it works!  I save the file after modification, close the 
editor, and then control-v to paste my code directly into the console 
... no more intermediate files saved!
so saving writes the changes back to the clipboard:// device
of course, do clipboard:// also works without screwing up the console 
history
BrianH
7-Aug-2010
[10125x2]
With R3 you can do clipboard:// even if the code doesn't have a header 
:)
But that editor clipboard:// trick is really cool.
Gregg
7-Aug-2010
[10127]
Indeed. I have clipboard shortcuts, but not that one.
Anton
7-Aug-2010
[10128]
Yeah, works for me too on linux. Very good.
Maxim
23-Aug-2010
[10129x4]
btw, I'm working on getting this kind of collision detection code 
working under REBOL  :-) 


in fact, I also want to support rotated shapes, which makes it quite 
a bit more complex to handle generically, but I've done enough research 
on the subject to have a good feel on how to get it to work.


I'm hashing out all the maths to do it, and will integrate this into 
my little game engine.
http://www.metanetsoftware.com/technique/diagrams/tutA_demo.html
I'd also really like to get some easy to use Veronoy region code 
implemented for use in REBOL, they can be quite usefull to simplify 
very advanced search algorythms and graphics apps.
typo... not  Veronoy... Veronoi
Anton
23-Aug-2010
[10133]
Voronoi
Maxim
23-Aug-2010
[10134x3]
yeah... was late (early) for me
I think I just found an interesting way to optimise AGG on R2  :-D 


I'm doing Animation tests with some complex vector & projection math 
(rotating/translating/projecting shapes using floating point math 
exclusively).


using AGG and a non-standard manual management of the window, I'm 
acheiving 0% CPU at 30fps FULL SCREEN (1440x900)
on a crappy 1.5GHz core2 duo.
Brock
23-Aug-2010
[10137]
Sounds like a great achievement Max, keep up the great work and post 
some samples or animations or something so we can see your work.
Maxim
23-Aug-2010
[10138x4]
when the collision stuff is finished, later this evening, I'll prebol 
a little script for you guys to test and have fun with.  :-D
animated vector projection tests :


http://www.pointillistic.com/open-REBOL/moa/files/ptest-preboled.r
notice that it follows the mouse even when the window isn't even 
activated :-)
updated it (much more mesmerizing now ;-)  
-now supports shape dragging (while everything still animates).  
-shape also rotates more quickly 

-animation is capped to 50 fps, but may go as high as 200 fps on 
your system while dragging, if you change the refresh-rate in the 
script begining.
AdrianS
23-Aug-2010
[10142]
how fast does it go if you don't output the progress dots?
Maxim
23-Aug-2010
[10143]
it doesn't change the speed, since there are no newlines.
AdrianS
23-Aug-2010
[10144x2]
this looks double buffered - does REBOL use this by default?
I would think that any console text output would significantly slow 
down animated graphics
Maxim
23-Aug-2010
[10146x2]
the refresh is manually limited to 50 fps, which occurs when dragging, 
and uses less than 1% cpu on my 5 year old machine.
no, what kills the speed is when you do newlines, especially if the 
lines are long.
AdrianS
23-Aug-2010
[10148x2]
what about the dubble buffering?
double
Maxim
23-Aug-2010
[10150x2]
the system I am using now, is doing double buffering.  the AGG is 
rendered on the raster, and the call to show, tells view to update 
the window's bitmap so it reflects the changes to the raster.
the raster being a pre-allocated image! which I use with the  'draw 
  function.
AdrianS
23-Aug-2010
[10152]
looked flicker-free, so I assumed it was
Maxim
23-Aug-2010
[10153x2]
cool thing is that if we don't blank the bg manually, we actually 
get a persistent buffer, and can do things like winamp visualizers 
easily.
but that means using face effects (and hence going thru view and 
back) which will kill the speed pretty quickly  :-(
AdrianS
23-Aug-2010
[10155x3]
why would this kill speed?
is it view being slow or just doing these kinds of effects in REBOL 
that is not so fast?
I thought I remembered some pretty fast animations (with effects) 
done by cyphre some years ago - he bypassed view effects for those?
Maxim
23-Aug-2010
[10158]
image processing requires a lot of CPU juice.


 we have to render the AGG, use the bitmap in a face, apply an effect 
 on it, and then re-create a new bitmap out of it.  we aren't just 
 drawing/effecting over and over the same image memory area but creating 
 a new image at every refresh.


it would be nice if there was a complement to the 'draw function 
called 'effect.  maybe its in R3, or maybe it should be.
AdrianS
23-Aug-2010
[10159]
sure it's slow - especially at today's fullscreen resolutions - that's 
a lot of pixels to process per second - maybe a view extension for 
offloading some of that on the GPU is in the works
Maxim
24-Aug-2010
[10160x2]
wrt console I/O killing gfx speed.... with my new high-performance 
chrono lib, here are the results for printing... compared to a single 
(average) call to sine. 

[print ""]
0:00:00.000792139

[prin "."]
0:00:00.000168666

[sine 45]
0:00:00.000001014
updated the animated vector projection tests script:

-uses the chrono library for more precise time management.

-now has option to prevent clearing the image at each refresh (feedback), 
press enter

-you can also manually increase and decrease max frame-rate on mouse 
drag using arrows.


http://www.pointillistic.com/open-REBOL/moa/files/ptest-preboled.r

on my system, I can easily go up to a 100fps before feeling lag.
AdrianS
24-Aug-2010
[10162]
I get 32 fps - surprised it's not higher
Sunanda
24-Aug-2010
[10163]
I also see current rate typically of 32fps/ current (max) rate shows 
as 40.00000000001 (plus or minus a zero)