| [MacOSX Irrlicht OpenGL] Geometry bug | |
|
|
Author | Message |
---|
kvakvs
Messages : 32 Date d'inscription : 2010-04-13 Localisation : Ukraine
| Subject: [MacOSX Irrlicht OpenGL] Geometry bug Tue Oct 19, 2010 8:01 am | |
| This is particle geometry bug, happening only in a single scene in our game. The scene contains two different types of systems (water streams, and water stream hitting the surface particles) about 7-8 of each type, estimated 500+ particles in one scene. The bug appears randomly, mostly based on how many systems I've commented out. Was reported as last water stream having bugged geometry effect, after I commented out few middle water streams (yes, that's less particles than when it was first spotted and reported), the effect now appears on almost every stream. System is: MacOSX 10.6 Irrlicht (OpenGL) as renderer Intel 32bit (in case it helps) GCC 4.0 Frameworks selection for the game to be compatible with MacOSX down to 10.4 To see parameters of particle systems: http://lytovchenko.ca:1081/simplespark/particles.zipXML sections: PatioWaterfall1...7 | |
|
| |
Juff Developer
Messages : 539 Date d'inscription : 2009-07-14 Age : 42
| Subject: Re: [MacOSX Irrlicht OpenGL] Geometry bug Tue Oct 19, 2010 9:23 am | |
| It seems like some particles coordinates are set to 0.
I have a few questions :
Does the problem exist only on MAC ? Do you use VBOs ? What is the orientation of the particles ?
It seems like some particles have the bug, and some other not (from the same group.) When a geometry is buggy is it during all the life time of a particle or does it change from frame to frame ?
I ll take a look at the code this evening. The problem is I have no mac to test on. | |
|
| |
kvakvs
Messages : 32 Date d'inscription : 2010-04-13 Localisation : Ukraine
| Subject: Re: [MacOSX Irrlicht OpenGL] Geometry bug Tue Oct 19, 2010 10:08 am | |
| - Juff wrote:
- Does the problem exist only on MAC ?
Yes. On windows we use Direct3D mode and there was no problem registered. - Juff wrote:
- Do you use VBOs ?
Not sure, where to check this? Last time we did something like this - when you suggested us to disable special VBO handling, when we had incorrectly initialized geometry in the very first frame of animation. This was here: https://spark.canadian-forum.com/questions-en-f2/spk-10502-irrquadrenderer-t67.htm - Juff wrote:
- What is the orientation of the particles ?
Camera is parallel projection, 1 unit in space = 1 pixel on screen. Other params can be found in attached XML. Not sure what else I can help you here with. - Juff wrote:
- It seems like some particles have the bug, and some other not (from the same group.) When a geometry is buggy is it during all the life time of a particle or does it change from frame to frame ?
Yes, whole lifetime, it either spaws good (a serie of particles) or bugged (for full life duration), and the effect seems quite stable and periodic. Its like small group of particles bugged (let's say X) then larger sequence of good particles (let's say X * 7...10 according to observations), then again X bugged, and again X * 7...10 fine. - Quote :
- I ll take a look at the code this evening. The problem is I have no mac to test on.
I can offer you a TeamViewer access to my mac-mini desktop screen, so you could observe results right after they're made. But that would be 8AM to 5PM GMT+0, not sure if its convenient time. Also I believe this could be OpenGL related and repeatable on any OS. I can try rebuild my game in OpenGL mode on Windows and see what happens. | |
|
| |
Juff Developer
Messages : 539 Date d'inscription : 2009-07-14 Age : 42
| Subject: Re: [MacOSX Irrlicht OpenGL] Geometry bug Tue Oct 19, 2010 11:11 am | |
| For vbos, you can try to deactivate them if used, or to activate them if unused. This has to be done at initialization (you got IRRBuffer::activateVBOHint and IRRBuffer::isVBOHintActivated). Just to see if it changes something.
Ill check the code this evening and late you know | |
|
| |
Juff Developer
Messages : 539 Date d'inscription : 2009-07-14 Age : 42
| Subject: Re: [MacOSX Irrlicht OpenGL] Geometry bug Tue Oct 19, 2010 1:43 pm | |
| Also which version of SPARK are you using ? The latest (1.05.04) ? If not you can try to update to that version and see what happen.
[EDIT]I had a look to the code of both spark and irrlicht and didnt find anything strange.
It seems that you are using vbos as all bugged particles vertices are vertices initialized by default (pos (0;0;0) and color transparent black). and I m not initializing vertex if vbos are not used.
Its like some indices are not initialized and point to a not-already used vertex (but indices are all initialized when creating the buffer) or not all vertices for a given particle are updated (but that's performed sequentially in a block so it is impossible).
I have no idea and didnt get too deep in the irrlicht code that time (vbos updating and stuff).
Try deactivating the vbos and update to 1.05.04 if not already done. If that doesnt solve the problem, check if it happens with OpenGL and win32. If so, that will be easier for me to debug. | |
|
| |
kvakvs
Messages : 32 Date d'inscription : 2010-04-13 Localisation : Ukraine
| Subject: Re: [MacOSX Irrlicht OpenGL] Geometry bug Fri Oct 22, 2010 4:23 am | |
| - Juff wrote:
- Also which version of SPARK are you using ? The latest (1.05.04) ? If not you can try to update to that version and see what happen.
Using some older, like 1.05.02 or 03, with manually applied changes which I posted on this forum as bug reports. In SPK_IrrQuadRenderer.cpp there was the code which you suggested to add to fight blinking old VBO data. As updating any dependency library may break things, I prefer to delay this event as much as possible, perfect if it never happens There was code added as you suggested: - Code:
-
currentBuffer->setVBOInitialized(true); Changed to - Code:
-
#ifdef _WIN32 // directX only currentBuffer->setVBOInitialized(true); #endif Now bugged particles just cleanly disappear and for water streams that behavior is more or less acceptable. I'll see if this is enough. - Juff wrote:
- Try deactivating the vbos and update to 1.05.04 if not already done. If that doesnt solve the problem, check if it happens with OpenGL and win32. If so, that will be easier for me to debug.
I will proceed with the rest of solutions if just blanking out bugged particles is not acceptable. | |
|
| |
Juff Developer
Messages : 539 Date d'inscription : 2009-07-14 Age : 42
| Subject: Re: [MacOSX Irrlicht OpenGL] Geometry bug Sun Oct 24, 2010 5:20 am | |
| Ok, as you wish.
Using the latest version of SPARK shoud be straight forward though as the interface has not changed. | |
|
| |
Sponsored content
| Subject: Re: [MacOSX Irrlicht OpenGL] Geometry bug | |
| |
|
| |
| [MacOSX Irrlicht OpenGL] Geometry bug | |
|