Game Development Community

OK, no .dts inside my .dif's, so what are my options?

by Mark Berry · in Torque Game Engine · 12/07/2004 (11:19 am) · 18 replies

If I want detailed items within the maps of building I produce in Quark, what are my options? I recall seeing a thread saying that placing .dts objects inside your .difs causes problems, so thats a no-no. And modeling with Quark is limited. What to do.

#1
12/07/2004 (11:28 am)
At this point you have to use the mission editor to place them within your dif.
#2
12/07/2004 (11:29 am)
Putting DTS objects inside your DIFs works great. It's a major, fundamental capability of the engine. It's DIFs inside of other DIFs that causes problems.
#3
12/07/2004 (11:38 am)
Ah, sorry, my bad! :-)

Too many late nights playing with all the neat stuff on the site to read straight.

Cheers.
#4
12/07/2004 (11:50 am)
It would be nice if we could place at least a pointer object for the dts' location within quark itself. Map2Dif could then spit out a partial .mis as well as the .dif
This would require a new method of loading statics though, with locations being in the object space of the parent dif, rather than worldspace.
That would make Quark a bit more like Hammer and UnrealEd. I realize thats not really apples to apples, as both of those compile a world, whereas Quark is merely an object in the world, but it's still a big step.
I think this is doable, but it's far from the top of my list of projects. Hopefully, someone else will see this and take it on first :)
#5
12/07/2004 (11:58 am)
Cartshop5 is heading in a more UnrealEd direction with the concept of static meshes (basically dts files) and terrain. I'm gonna request to get on the beta soon and hopefully i can produce an importer/exporter that can read mission files and spit them back out. The goal not being to replace the mission editor, but to allow some work to be done within the map editor and to transfer back any work done within the engine.
#6
12/07/2004 (5:57 pm)
I happen to really like QuArK (well, compared to the few other programs at least--it certainly could be better), but a functionality where I could put in static meshes would likely convince me to move on over to Cartshop.
#7
12/07/2004 (6:28 pm)
I have a distaste for difficult tools and avoid them at all costs. I really didn't like mental friction QuArk and most of the other map tools out there caused me... except UnrealEd which was better than the rest when it isn't crashing on you. Still i wasn't really successful with CSG modeling until i tried CartShop. The interface and options look really simple, but i still had something quite impressive within 20 minutes. CartShop is by no means perfect, but it does what i need now and i trust it will improve.... more than i trust QuArk will get easier to use.
#8
12/07/2004 (8:52 pm)
DIF already supports this sort of thing. Check out the InteriorSubObject functionality. Should be easy to make something that will instance a class of your choice.
#9
12/07/2004 (10:05 pm)
Seems InteriorSubObject was removed in TSE... i'll post about it in the other forum.
#10
12/07/2004 (10:21 pm)
I think you might be thinking of DIF inside DIF. It creates nasty zone errors on portaled zones occasionally & often. DTS in DIF is great and should be utilized.
#11
12/07/2004 (10:22 pm)
I also see like 5 people answered this before I did. Points for me for reading the thread and wasting space. :)
#12
12/07/2004 (10:30 pm)
To be clear what I'm talking about (and i think the original poster was too) is positioning dts instances at map creation time. For example (an example i don't think is possible right now) i build my map in quark and instance a few dts barrels in the map... it exports as some entity (no geometry, just the dts name and position and stuff) which map2dif picks up... then when the dif is loaded into the mission the dts objects appear within my dif just like i placed them in the map.

Skimming thru the map2dif code I can't see that this is possible at the moment.
#13
12/08/2004 (2:20 am)
@Tom: I asked for this functionality ages ago... no one seemed interested, and I can't program good enough to do it myself. The advantage of this method would not only be speeding up the development process, it would also decrease the network load if done right. The shapes can be placed in the DIF at map loading, and don't have to be transmitted over the network, just like the replicators are doing. It would only transmit the DIF file, and that DIF file "owns" a ton of dts shapes.
Now, to even go a step further, Quark is open source, so the Quark viewer could be adjusted to show the dts shapes in the viewer (or at least the bounding box).

A lot of work, I know, and probably not very interesting work. But.... a lot of artists would really like to have this functionality, specially the ones coming from an UnrealED environment.
#14
12/08/2004 (7:45 am)
I wasn't considering any optimization of network load, but it guess it's possible. My focus is just on productivity and visual quality. If i can place dts shapes at map authoring time this also means i can bake in lightmaps with them in the scene. My goal being to get the map + dts into giles and back out wth lightmaps.

At the moment my thinking is that to do this i have to export a partial or complete mission file. I'm looking into InteriorSubObject as Ben suggested, but i haven't seen how one can be added to a dif during the map2dif process.
#15
12/08/2004 (9:07 am)
The ISO feature was used for things like AI markers and the like in T2 days. It shouldn't be hard to extend. You should not need to do any mission file exporting.

Good luck getting lightmaps on your DTS shapes. :)
#16
12/08/2004 (9:23 am)
Quote:The ISO feature was used for things like AI markers and the like in T2 days. It shouldn't be hard to extend. You should not need to do any mission file exporting.
I'll be looking into that for sure then.

Quote:Good luck getting lightmaps on your DTS shapes. :)
I'm more concerned with getting lightmaps from DTS shapes cast onto the BSP. Even the Unreal2 doesn't cast lightmaps onto static meshes. A good overview of lighting in the Unreal2 engine can be seen here.

In Unreal Tournament 2003 some maps we're decorated with excessive amounts of static meshes, yet the lightmap issue on them was not really noticable.
#17
12/08/2004 (10:45 am)
ISO is definately the starting point. I've played around with it myself, attempting to get decals etc. working. I've gotten damn close, but my knowledge of exactly what the hell map2dif is doing is next to nothing. If I only had a few more examples beyond mirrors and non-working forcefields, I might be able to finish quite a bit of functionality.
Quark can already display models somewhat, so actually seeing what you're placing is extremely possible. The Q3 mappers are really extending the usefulness of Quark, its now up to us to stea^H^H^H^H reuse their additions.
I don't think reducing net load is very feasible though, as purely ghosted objects don't contain very much info in them. Perhaps the eyecandy out of a players reach, but surely not the tables and chairs in the room.
As for baking lightmaps, I'm pretty sure there is only one among us who knows the lighting system well enough to add that to map2dif. If we managed to get everything else working, it's possible he'd jump in with that aspect.

On a 'world domination through collaboration' note, has anyone extended ISO in a meaningful manner? I would be willing to jump wholeheartedly into this, if I could just get past that bump.
#18
12/08/2004 (11:04 am)
Quote:ISO is definately the starting point. I've played around with it myself, attempting to get decals etc. working. I've gotten damn close, but my knowledge of exactly what the hell map2dif is doing is next to nothing.
I'm getting to know it pretty well right now as i'm converting it into a full blown CartShop exporter dll. I've got some GUI junk to do on it then i'll hit the lightmap export.

Quote:If I only had a few more examples beyond mirrors and non-working forcefields, I might be able to finish quite a bit of functionality.
If you can point me to the code for the mirros and forcefields it would give me a great head start into this.

Quote:As for baking lightmaps, I'm pretty sure there is only one among us who knows the lighting system well enough to add that to map2dif. If we managed to get everything else working, it's possible he'd jump in with that aspect.
I'm thinking that lightmap generation should be removed from the dif conversion process all together. The lightmaps are better if authored in another tool where an artist can tweak them and then converted along with the geometry to the dif format. This is where the map format sucks as it's really designed without consideration of authored lightmaps.

Quote:On a 'world domination through collaboration' note, has anyone extended ISO in a meaningful manner? I would be willing to jump wholeheartedly into this, if I could just get past that bump.
Post some details of your bump and i'll help if i can.