Game Development Community

Tools for TSE

by Crode · in Torque Game Engine · 06/14/2004 (12:44 pm) · 7 replies

What sort of tools are being used to create level content for TSE? I dont know quark much but I do know hammer/worldcraft and right now I cant see how a shader could be applied instead of just a standard texture.

If everything could be created in maya/3dsmax that would be ideal but right now these programs are not the best for creation of level content and an adequate exporter doesnt exist.

#1
06/14/2004 (12:54 pm)
That's the beauty of how Ben and Brian structured TSE. Your existing tools don't need to support shaders at all. Shaders are applied as material mappings afterwards. (If you've ever applied an environment map to a surface in a DIF file, then you know exactly what I am talking about.)

So, you can keep your existing work flow and tools with TSE. Just now you've got the option to create new shader-driven surfaces. About the only "extra" tool I have used was a plugin for Lightwave that generates tangent-space normal maps, for correct per-pixel bump mapping on my models.
#2
06/14/2004 (10:52 pm)
If you mean by afterwards you mean only in the engine that far from ideal as an artist. If you have tried rendering something in maya with a color map, bump map, spec map, etc there is a lot of tweaking involved to make something look nice. Having to swap between photshop, 3d app, then exporting, altering your shader code (which i dont even know how to do), loading up the engine takes a lot of time just to find out your minor change doesnt look good.

Also I dont know exactly what you mean about adding the env map since currently I dont have a SDK license, I dont do much coding at all(but i will if i have to). Art and game design is what I do. All ive seen is an out-of-date TGE demo and editor which doesnt do much for me visually.

Most current 3d apps have support for shaders in hardware that can be manipulated in realtime. If we were able to create a level using this method, artists could get back to making good art. From what ive read so far, some objects cannot cast shadows, some can only be small sized details, this or that doesnt allow double sided polys, this or that cant use alpha channels. Landscapes only can be created using a IMO buggy and very limiting bitmap heightfield. Maybe all these problems have been fixed and there is some magical tool out there that does it all perfectly. I wouldnt know since even if I had my own SDK license, I wouldnt know how to do the compiling/coding necessary to make my own useful tools.

Well sorry about my rant =) Its just frutrating knowing Maya and not being able to do things that worldcraft can do and vice versa. All I want to do is get a head start on the art and maybe inspire some of my group to get their act together though im having troubles with all these limitations.
#3
06/14/2004 (11:12 pm)
I use hammer also and I've been able to easily create BSP geometry for TSE as easy as TGE.

Assuming you've used Hammer for TGE and are familiar with it:

1) Once you download the SDK, recompile the new map2dif.exe tool, the old one for TGE won't work for TSE. This is very important. Once you compile the exe, link to it from Hammer.

2) Create geometry and texture as necessary. When texturing it's very important to keep in mind the exact name of the texture, for example let's say you use "texture_1.jpg" linked from a wad file. Once you compile the map, then import it into TSE, the engine will look for a MATERIAL named "texture_1" and not the image (texture_1.jpg).

3) Before you can actually import the geometry however you will need to define the material "texture_1" in the file /server/scripts/materials.cs & /data/materialMap.cs. Within the material defintion you define the actual image being used(say like texture_1.png), effects being used by this texture (such as bump mapping, glow effects) and any additional files needed (such as normal maps, like texture_1_bump.png) This is extremely easy process and there are FAQ's on how to do it within the TSE owner's area and it takes a few seconds.

So basically to sum up, you create levels the same way in hammer & you have an additional step of creating "materials". I've found this to be useful for hammer because one of the first glitches I ran ito was the buildwad.exe tool doesn't support textures larger than 512x512 or it crashes, and unfortunately you need to have all the textures you need in a wad file to use hammer. So I was able to create 512x512 jpeg versions of my textures, put them into a wad, then use that wad to texture my level geometry, but later when I was defining the material in the code, I had it point to the 1024x1024 PNG files instead, since the engine just looks for a material with the same name as the texture (and you can set whatever image file you want from there).

Blah I hope that wasn't too confusing, but trust me it's easy, if you get the SDK at some point and need help just ask and I'll try to walk you through it.

-Tim
#4
06/15/2004 (1:30 am)
Yes your explanation makes sense, thx for your comments

Ive been wandering around this site for better part of a month and I just found the .cfg for worldcraft yesterday. I wasnt even on garagegames.com

It was my understanding that as an artist I wouldnt require a license. Why are the tools and documents not available or easy to find? Why is there not a up-to-date compiled toolset available? Dont get me wrong, im not looking for free access to 'the code'. I wouldnt even know what to do with it. It looks like eventually im going to have to fork over the money for my programmer friend but I cant at this time. Throw me a fricken bone :)
#5
06/15/2004 (2:13 am)
That's a question you have to direct at someone other than myself. :)
#6
06/15/2004 (4:37 am)
Hello Crode,

That is a good point. I am an owner so I can't tell what can be seen by non-owners. As far as I knew artists could get access to exporters without being an owner but I could be wrong. What would be great is as part of your profile you could say that you are an artist and have the artists tools and docs show up in my garage. Just an idea, the GG staff have a lot to do with limited resources.

Later, Ben
#7
06/15/2004 (11:59 am)
Real-time technology takes a lot of shortcuts for quicker rendering that 3D modelling programs do not. Yes, it would be great if everything could be rendered with every effect, plus perfect collision, without any worries about framerate. Perhaps once we have ray-tracing hardware with tera-hertz processors and hundreds of gigs of ram, this won't be an issue, but until then, we have to take some shortcuts to make such complex simulations in realtime. Things like transparency sorting and collision are extremely processor intensive, and major shortcuts are taken to ensure that your game runs at a playable framerate while these things are happening, not to mention that they must be kept synched over the network for multiplayer.

Unfortunately, many of these shortcuts do place restrictions on what an artist can bring into the engine and how. Shaders strait from Maya/Max/etc are not supported because
A) they are not designed for real-time performance for large scenes with hundreds of objects and collision, AI, etc
B) they are not consistent between modelling packages. In order to support them exactly as they are in the modeller, the engine could only directly support one modeller, or have inconsistent support for many, in which case being able to edit shaders in the modeller would be useless and frustrating anyways.

Once nice thing is that you don't have to re-export your shape or textures to adjust the shader effects with TSE technology. You just change the definitions, then reopen you shape in the showtool. In the near future there may be a showtool version available that allows you to flush the texture/shader cache while it is running, as well.

This is as good and in many cases better than what you normally see in shader development tools.