World: r3wp
[Ann-Reply] Reply to Announce group
older newer | first last |
Maxim 26-Oct-2010 [2172x2] | one note is that a few of the changes are in fact just added documentation in the host, which is scarce at best. I think it would be nice that as people work on and study the host files, more documentation be added, if only to improve its understanding. many of the view files use short variable names which is ok, but the sense of what and most especially *why* things are being done is currently very obscure and I can see it being hard to maintain in the long run. when you look at all the box region math, sometimes being done more than once on the same values, its very hard to positively identify what is being calculated and why it even needs to be done at that point in the various functions. when I look at the code, there are many very similar ops being done, and it might be that some of that should be reshaped into more re-usable code. maybe if only as multi-line macros, to keep it fast. |
christian, if you can send me the full trace of the app it might help me track the problem... either mail it to me or just dump it to me privately in altme. I think its a problem with how VC is optimisizing things to be parralelized by SSD type instructions. on my system its not crashing exactly at the same place but within the same source file. seeing a pattern might help me corner it. | |
Cyphre 26-Oct-2010 [2174] | Maxim, the demo crashes for me right when it attempts to open a window..I tried it also with the torus.r3d dataset so there must be some other problem. |
Maxim 26-Oct-2010 [2175x2] | I've had that too, but changing the optimizing on Release mode, I have just about the same issue as Christian. in debug mode I've *never* had a crash yet. even on very small or huge datasets. so AFAICT its a dreary compiler issue, and the worst of it is that I can't debug it, cause it *only* crashes when I'm not in Debug. |
at this point I've cornered it to the host-tools array code which is basically just a loop over the host-code. so its possible that the way the core dll was compiled is part of the problem. I'll try to compile the A107 version in Release mode.. maybe it was built using different switches. | |
Gregg 26-Oct-2010 [2177] | Crashes for me too, under XP x64. |
Maxim 26-Oct-2010 [2178] | on window open or after a ->> / <-- trace line? |
Gregg 26-Oct-2010 [2179] | On window open. |
Henrik 27-Oct-2010 [2180] | Maxim, all demos run fine now. |
Maxim 27-Oct-2010 [2181] | thanks. Andreas told me he was reaching 70fps using the simple tree demo running wine on linux! |
Henrik 27-Oct-2010 [2182x2] | closer to 2-5 fps here, but probably due to software OpenGL |
(strange that it runs now, when I was warned before that OpenGL wouldn't work) | |
Maxim 27-Oct-2010 [2184] | the heavy tree is quite hard... the torus should be real-time even using software mode. |
Henrik 27-Oct-2010 [2185x2] | also when first showing the window, the view area is only in about the upper left quarter of the window. a resize solves this. |
I get between 5-10 fps on the torus. I suppose virtualbox doesn't do this stuff very well. | |
Maxim 27-Oct-2010 [2187x2] | wrt resize, yes that is on purpose. it allows me to test events within and without the opengl. |
its possible wine allows some of the rendering to find its way to the gfx card. | |
Henrik 27-Oct-2010 [2189x2] | ok |
ok, next step: modeling dialect :-) | |
Maxim 27-Oct-2010 [2191] | and yes it is strange that it works now and didn't work before! I didn't change any of OpenGL code, though I had a serious memory corruption issue, so its possible that on your system, that translated to some bogus system call. |
Henrik 27-Oct-2010 [2192x2] | it has been behaving strangely just yesterday (openGL issues) and today (network flakey), so I'm not even sure it will keep working. :-) |
what is the .r3d format like? | |
Maxim 27-Oct-2010 [2194x3] | hehe. if you look at the demo files, you will see how to specify a polygon primitive... its dead simple... a list of vertex... and a list of faces (which are indices to the vertices) |
look into the torus... its a rebol loadable data file. | |
the same as the commented out primitive in the tests. | |
Henrik 27-Oct-2010 [2197] | It would be wonderful with an actual dialect: view [my-torus: torus scale .2 rotate 45 material [specular: blah]] |
Maxim 27-Oct-2010 [2198x2] | yep that is how it will be... its already close to a dialect. I just need to add more attributes. |
btw notice that I included your last release of the r3_gui.r3 in the cgr-apps to make sure I stay forward complient... though you may want to do a diff on the version included and yours in order to patch crashing events when they originate from a gob which isn't a face. | |
Henrik 27-Oct-2010 [2200] | ok, but I suspect many changes and additions are coming. I'm not sure if it will be a problem for you. |
Maxim 27-Oct-2010 [2201] | I'll also add a few default primitives like sphere, cube, teapot, etc. |
Pekr 27-Oct-2010 [2202] | how do I find fps for the Torus demo? |
Maxim 27-Oct-2010 [2203x2] | for me it won't change anyting as long as you can retrofit the event stuff I am "fixing" as I encounter them.. |
you count the number of refreshes in a second... printed in the console ;-) | |
Henrik 27-Oct-2010 [2205] | so, it simply renders into a GOB? can you make a demo where it's integrated between some styles? |
Maxim 27-Oct-2010 [2206x4] | pekr, on windows it shoudn't go beyond 60fps because of timing issues. |
henrik yes. the openGL CGR use the "container" rendering mode which allocates a windows control from scratch and adds it to the window. then when you call show, it gets notified of the change in size and automatically updates the control and gl viewport & camera | |
notice that I do not call show on it in animation. I call refresh, which bypasses view and makes it *much* faster. | |
henrik, I'll wait for the next release of r3-gui. I wasn't able to launch the style browser.. it gave some error. | |
Henrik 27-Oct-2010 [2210x2] | cool, I'd like to see a demo with styles, if possible. that will be a good indicator of real-world viability of the extension. |
Maxim, I'll build a new r3-gui.r for you. | |
Maxim 27-Oct-2010 [2212x2] | ok, I'll try it out tomorrow.. its 5AM here... got to go get some sleep :-) |
if you can do one thing to help me.... make a style which doesn't allocate any of the gob type data. (color, text, draw etc) so that when you print the gob its basically a none gob. | |
Henrik 27-Oct-2010 [2214] | ok, cool |
Maxim 27-Oct-2010 [2215x3] | I use the none type gob as an indicator that it *might* be a cgr, this allows me to quickly check any face without it being to slow to retrieve the CGR internal data. |
I hope Carl and I will agree on some definite way to allow some kind of custom data extension. | |
I need an extra pointer in the C gob structure. cause basically, all the renderer data is gob-centric... right now I'm allocating an array and iterating through it which isn't very optimal, though this makes it 100% safe in the current host-kit. | |
Pekr 27-Oct-2010 [2218] | Two consecutive runs cause following: >> do %opengl-complex-tree.r3 Script: "Untitled" Version: none Date: none Script: "Untitled" Version: none Date: none IMPORTING LIBS CANNOT SET CGR LIB MORE THAN ONCE (cgr_opengl.dll) ==================================== OpenGL CGR initialization: registering polygon primitive register-primitive() [ valid-prim?() [ ] cgr-name() [ OpenGL ] ] ==================================== Script: "Untitled" Version: none Date: none then it stops for a while, then it shows window, and outputs other stuff to console .... |
Oldes 27-Oct-2010 [2219] | Pekr, profesional way is to use tool like: http://www.fraps.com/faq.php I have 60fps for torus example |
Maxim 27-Oct-2010 [2220x2] | which is the max allowed by wait 0.01 |
yes pekr... as noted in the help message, you can only import the cgr lib once... if you do a script which already imports the cgr lib it will complain. | |
older newer | first last |