Game Development Community

Bug in fog

by b2fxna · in Torque X 3D · 09/25/2009 (6:27 am) · 7 replies

Sorry, moved to bug

TorqueCore BaseRenderManager::_RenderFog
#if TORQUE_3D
T3DSceneGraph sceneGraph = srs.SceneGraph as T3DSceneGraph;
...
#endif

This doesnt work hence no fog for now. Is it the expected behavior for now?
If I define TORQUE_3D I get error because T3DSceneGraph is in T3D ( ??? interdependant between TorqueCore and Torque3D). Anyone have the same problem ?

#1
09/25/2009 (6:38 am)
I try to fix the problem by searching for _RenderFog and there are 2 places:
TerrainRenderManager.cs
and ShadowRenderManger.cs

Just copy the renderfog from torqueCore (BaseRenderManager.cs) and paste to above lasses, they will override the default one. Fog is back. :)

Hope this help.
#2
09/25/2009 (4:07 pm)
This is fixed in the next 3.1.4 release. The new method looks more like this...

protected virtual void _RenderFog(SceneRenderState srs, GraphicsDevice d3d)
{
    if (srs.SceneGraph == null)
        return;

    _fogMaterial = srs.SceneGraph.FogMaterial;

    if (_fogMaterial == null)
        return;

    _isFogPass = true;

    if (_elementList.Count != 0)
        _RenderGroup(_elementList, _fogMaterial, null, srs, d3d);

    _isFogPass = false;
}

John K.
www.envygames.com
#3
09/26/2009 (4:26 am)
You make me feel so exited about 3.1.4, look like a lot of fixes is coming.
My list is:
1) Raw terrain texturing
2) Editor
3) DTS LOD.
4) ...

:)
#4
09/26/2009 (1:45 pm)
There are a number of Torque X update releases scheduled with different areas of concentration. The next release (3.1.4) focuses on performance, along with some engine/tool fixes. The release that follows that will focus heavily on populating 3D environments. A lot of items in your list are very likely for the release after next.

John K.
www.envygames.com
#5
09/26/2009 (2:16 pm)
Thank for give us this update.
Do you have any idea about physics?
I'm thinking about using current physics which is so far so good or porting
JigLibX which is quite good open source for now. Just dont know how much work needed to do this :D.
#6
09/26/2009 (9:17 pm)
I have heard of JigLibX, but I haven't tried integrating it. I've worked with PhysX, Farseer, and Bullet Physics. They're usually all the same. Your game/scene initialization needs to go through the list of objects in the scene and create representative shapes (such as cylinders/cubes/spheres/etc) and register them with the physics engine. So Torque X renders the world you see and the physics engine models the world of bounding boxes. Then, on each game Update tick, you update the phsyics system, which i turn updates the position of the bounding boxes, which you use to update the render positions of the scene objects. Overall, it's not that hard to do and these kits usually have easy to follow integration instructions. The hard part is deciding where to integrate physics: in game code, in a component, or in the engine itself. It's not high on my priority list, but since JigLibX is under MS-Pl license, I think it could technically be packaged and shipped with Torque X. Is there a lawyer in the house?

John K.
www.envygames.com
#7
09/27/2009 (1:41 am)
I think MS-Pl is good for indie Torque X game, not sure about commercial.
Anyway it is also not in my list for now, let's hope that the new TorqueX release soon will have more functionality, for now it does the job and good
enough for common game :).