Game Development Community

Odd display bug..

by J. Donavan Stanley · in Torque Game Engine · 04/10/2003 (6:07 am) · 3 replies

Since I started working with TerrainManager on Win32 again I've noticed an odd display bug with things that collide with the terrain like footpuffs and explosions. If you look at the picture below you'll see what I'm talking about.

www.jdonavan.net/screenshot_00002.jpg
Any idea what would cause this?

#1
04/10/2003 (7:29 am)
If I were to guess, I'd say that what's happening is that the engine is rendering the explosion sprite with an origin in a concavity of the terrain, so that it gets clipped on all four edges.

(A slightly clearer explanation :) - imagine a cone. You take a flat piece of paper. It looks like this:

~~~~~~~~~~~~   <--- Paper


       \    /
        \  /       <--- Cone
         \/

Translate the paper downwards, and you get...

\      /
    ~~~~~~~~~~~~   <--- Paper
        \  /       <--- Cone
         \/

And if you look down into the cone, you'll see a circular piece of paper, not a square one!

This is what's happening here, I bet.)

Solutions?

Maybe your billboard rendering code got wonked somehow, so that it's not making the explosions be vertical enough? You might try hardcoding all sprites to be rendered straight up and down and see if that fixes it - if it does, then the problem is how the billboard code is handling looking at the sprites from a high/low angle.

Then again, you could just make your terrains entirely convex... :P
#2
04/10/2003 (7:37 am)
*sigh* time to dig into the collision code again and see what's still broken. One of these days TM will work right I promise!
#3
04/11/2003 (5:52 am)
That happenned to me a couples of weeks ago without Terrain Manager. I'm not exactly sure what was causing this but I think it was a corrupt dso related to the graphics pref. Maybe try to delete your dso. Or take a look in yourgame/client/pref.cs in case there is something wrong with the graphics settings. What I'm sure is that it wasn't something wrong in my build, so maybe your problem is similar.