Game Development Community

dev|Pro Game Development Curriculum

Plan for David "FenrirWolf" Grace

by Fenrir Wolf · 05/28/2004 (10:16 am) · 6 comments

Last night I messed with the DTS detail transisitioning code again. It looks real smooth, though only for objects with minimal overlap. In other words, if your object is something like a building or a box with large surfaces, then one detail fading into another will cause nasty Z-fighting issues. One solution to this would be to either modify the engine to scale down each detail object by some tiny amount, or (easier) just modify my DTS model so each progressive detail is slightly smaller.

I didn't get a chance to try this last night, but tonight I will take a look at it. I also still need to apply James' patch for fixing the imposters.

All of that aside, I have once again hit a brick wall when it comes to using Lightwave with Torque. I created some new trees in Lightwave and then exported them to Torque. Everything works, except that because the LW exporter doesn't support the features of Torque that allow translucent polys to be sorted correctly. I'm not sure how this is used in the engine, but I gather it breaks up overlapping translucent polys and then writes them out in pieces, along with some kind of depth-order map to let the engine know how to sort.

www.gapingwolf.com/torque/trans_sort_error.jpg
So, in this example, my fxShapeReplicator trees look good -- except that the grass (fxFoilageReplicator) is showing up on top of my trees! Argh!

I'm more concerned about this than the lack of the ability to export imposter (tsLastDetail-style) billboards. But added to that, that certainly doesn't help my mood.

Okay, don't get the wrong impression. I am not bitching about Dave's Lightwave exporter. He's done a great job getting this thing working and has been adding lots of new features. (Like, the ability to create triggers.) The interface is appearently the best of all the exporters, too, especially compared to the Max one.

But it doesn't support all of the features that Torque offers. Some of these features are just icing on the cake (imposters) but some are necessary (translucency sorting) if you want your game to look at least somewhat semi-professional.

I love Lightwave and I prefer to use it for my modeling. I've tried some other modeling programs out there and I prefer the way that LW does things. I even tried GameSpace Lite but the interface was a massive turn off for me. I can't afford 3DS Max or Maya, so I can't use Torque's other plugins. I know this isn't fair to GG or anyone, but at the same time I kind of feel like I am shafted again by choosing to use Lightwave. If there are other people out there who use Lightwave with Torque and have managed to overcome all of these obstacles, they are suspiciously quiet -- or simply don't exist.

I suppose all I can do is either stop my bitching and live with these limitations, switch to some other modeler that is directly supported by GG, or just roll my own exporter. (Or, lastly, I could simply put Torque on a shelf like I did six months ago and wait for Dave to work on these issues, but I'm not willing to do that again.)

What Torque needs, I think, is a generic exporter. One that isn't tied to any one particular modeling package (ie: written as a plugin that only works in Max, or Lightwave, or etc). Something like this work better if it had a modular approach, so it could be a many-to-DTS convertor if someone was willing to write the parser.

Or a more upbeat note, I am going to enjoy this Memorial Day weekend. I have two cons to keep me busy: FanimeCon and BayCon, both in the San Jose area. Gonna be tough going to both, but I intend to try! Some of my co-workers will be at Fanime, so we're going to meet up there. I can't say I'm an enormously huge anime fan, but I do like a few series and I've always enjoyed the panels on storytelling, cel-painting, character construction, etc. Plus, you can usually finds all kiinds of cool and whacky stuff in the dealers room. :)

#1
05/28/2004 (10:20 am)
My X-Lead modeler felt the same way . . .your not alone.
#2
05/28/2004 (11:13 am)
Greetings!

Dave, don't worry. I don't take your complaints personally :o)

You're correct that there are a number of features that haven't yet been implemented in the LightWave exporter. I'm sure they'll get in there eventually, but as I'm currently working on the exporter between other paying gigs (and infant raising), it has taken a back seat. I guess the same could be said for the other non-GG sponsored DTS exporters.

However, in regards to sorted meshes, that may make it in sooner rather than later once a particular job's details are worked out.

Now, in regards to the fxFoilageReplicator grass being sorted incorrectly against LW generated DTS objects, I'm not sure that sorted meshes would help there. The sorting is done within the DTS object itself and not against the whole scene (at least how I understand it). So, the leaves in your tree would show up in the correct order, but not necessarily when put up against other objects/rendering algorithms.

I suppose this could be tested by taking one of the trees from the standard TGE demo (Realm Wars) and drop it into your scene and see if you have the same problem with your grass. Those trees do make use of sorted meshes.

- LightWave Dave
#3
05/28/2004 (12:00 pm)
This stuff is so cool! I have the same problem w/ the fxGrassReplicator, but it shows like an inversed alpha of the sky if your look through the grass to the sky... Sorry to hear about your lightwave woes. I had no idea torque even supported a last LOD as a billboard.

-s
#4
05/28/2004 (12:16 pm)
Quote:So, in this example, my fxShapeReplicator trees look good -- except that the grass (fxFoilageReplicator) is showing up on top of my trees! Argh!

Hey, there is an option that you can select in the FxFoliageReplicators options that tells it where it will show up, You can select options for "Shows on interiors" "Shows on dts,s"

That could be why your grass is going on TOP of your trees
*Maybe"

Worth mentioning though
#5
05/28/2004 (1:02 pm)
Reading over my words, I admit they DO sound pretty whiney. There's a lot of things in life we might want and can't get. I bought Torque with the knowledge that support for LW was purely third-party and not officially a part of their offerings. So, really Torque or GG isn't the blame. Neither are folks like Dave who work hard to put out a resource (for free) that people like me can selfishly take advantage of. And for that, I apologize.

I'm here to make games, not excuses. I will find a way to work around this, and I will move on. Thanks for the help everybody.

@Dave: I'm not exactly certain how the translucency sorting works, either. I'm going to try to break my tree up into smaller translucent polygons to see if this will help Torque (since it seems that breaking up overlapping translucent polys occurs at the exporter level and not the engine level). I *think* the polygons which are translucent get sorted so that they are rendered last in the scene graph, but how they are sorted beyond that I am not sure (usually it's from back-to-front). I plan on digging in the code to try to find out, though.

As for fxFoilageReplicators, I've already confirmed that the Torque Demo trees show up properly with no translucency errors. This is also the case for the trees that come with the Bravetree Tree Pro pack.

And I understand you've got paying jobs to keep you busy. (Plus the new bundle of joy!) I didn't mean to imply above that the reason I left Torque was purely because of you -- I was also not happy with a few other things about the Torque engine itself and wanted to concentrate on some of my other gaming projects.

On top of that, my own full-time job has been pretty hectic, too. I'm only just now getting back into the swing of things.

@Stephen: Yeah, check James Urquhart's last .plan, he has a patch that will fix the texture issues with using the imposters. (PS: I keep wanting to type 'UrQuan' for his last name. Sorry James, played too much Star Control!)

@Timothy: I know the options you are talking about. I believe those pertain to the actual placements. (ie: AllowOnTerrain means the foliage billboards show up on the terrain, etc.)
#6
05/30/2004 (2:11 pm)
Hey Dave.

No worries. If we'd been in a pub talking about this rather than on the forums the true feelings would come through. It's a limitation of the medium.

One thing you could try with your trees if you haven't already is to have the trunk and other non-translucent objects reside on the first layer in the LightWave object, and the translucent polygons reside on the second one. Manually sorting your objects like this usually helps with the overall rendering, although it in itself will not correct all translucent sorting issues.

Another interesting tidbit is that while I was talking with Joe Maruschak (on a topic unrelated to your .plan) he mentioned that they don't make use of Sorted Meshes for any of their content packs but instead do it by hand through careful polygon subdivision and placement. Just thought I'd pass that along, not that it rules out the Sorted Mesh methodology for those of us without Joe's background and experience! :o)

- LightWave Dave