TSE GTKRadiant Pipeline
by Prairie Games · in Torque Game Engine Advanced · 05/29/2006 (4:12 am) · 32 replies
I am hard at work on a GTKRadiant -> TSE pipeline.
A few implementation notes:
1. Entirely new, blazing fast, interior renderer
2. Exports are single meshes with PVS information compressed to batch friendly areas.
3. LOD support (much like map2dif's system with replacement models are certain pixel ranges)
4. Something pretty exciting that I am not quite ready to talk about...
GTKRadiant + q3map2 notes:
1. ROBUST brush processing with minimal face generation (metasurfaces)
2. **Excellent** lighting model with radiosity
3. Bezier curve support
4. ASE and MD3 models can be baked in and will generate/recieve lighting information.
5. PVS generation and artist controlled area portals
6. Extensive surface parameters, artist definable collision brushes, etc
7. Accurate pathfinding generation via BSPC
Here are some screenshots, please excuse the Quake3 assets I am using for testing :)
Check out what a little HDR and focal length modulation does for the atmosphere. I have the HDR up a tad high for my tastes, but I wanted to make sure it was evident. The effect is also a bit nicer in motion, static screenshots don't really show it.
Enjoy!



-Josh Ritter
http://www.prairiegames.com
A few implementation notes:
1. Entirely new, blazing fast, interior renderer
2. Exports are single meshes with PVS information compressed to batch friendly areas.
3. LOD support (much like map2dif's system with replacement models are certain pixel ranges)
4. Something pretty exciting that I am not quite ready to talk about...
GTKRadiant + q3map2 notes:
1. ROBUST brush processing with minimal face generation (metasurfaces)
2. **Excellent** lighting model with radiosity
3. Bezier curve support
4. ASE and MD3 models can be baked in and will generate/recieve lighting information.
5. PVS generation and artist controlled area portals
6. Extensive surface parameters, artist definable collision brushes, etc
7. Accurate pathfinding generation via BSPC
Here are some screenshots, please excuse the Quake3 assets I am using for testing :)
Check out what a little HDR and focal length modulation does for the atmosphere. I have the HDR up a tad high for my tastes, but I wanted to make sure it was evident. The effect is also a bit nicer in motion, static screenshots don't really show it.
Enjoy!



-Josh Ritter
http://www.prairiegames.com
#2
05/29/2006 (4:50 am)
I can't wait for your next game already Josh!
#3
05/29/2006 (4:57 am)
Holy Jeebus that level art is good.
#4
While, as you said, the HDR is tuned up a bit high for your tastes, to me, it looks pretty good for a fantasy RPG. Photorealism isn't always the best option; I think that audiences would appreciate a little bit of "over the top"ness in the rendering.
05/29/2006 (5:13 am)
I have to say that HDR is quite an enhancement over the original QIII levels. Good work on the pipeline.While, as you said, the HDR is tuned up a bit high for your tastes, to me, it looks pretty good for a fantasy RPG. Photorealism isn't always the best option; I think that audiences would appreciate a little bit of "over the top"ness in the rendering.
#5
Regardless, its looking quite promising. Are you planning on adding support for moving brushes (e.g. elevators / doors) too? that would be quite nifty :)
05/29/2006 (5:55 am)
Any chance you'll plonk in a sharpen filter too? Those images look a tad blurry.Regardless, its looking quite promising. Are you planning on adding support for moving brushes (e.g. elevators / doors) too? that would be quite nifty :)
#6
It's atmosphere :) It's also HDR and scaling gone wild. The shots are low resolution and the HDR is up pretty high for demonstration.
In a previous lifetime, we did some conversion of Tim Aste's content packs and processed them with q3map2... great results. I'll dig around to see if any of this conversion work survived and post some pics...
This depends a bit on the networking and physics sides of things. My plate is pretty full, but it would be cool. I'll definitely implement brush triggers.
05/29/2006 (6:09 am)
Quote:Any chance you'll plonk in a sharpen filter too?
It's atmosphere :) It's also HDR and scaling gone wild. The shots are low resolution and the HDR is up pretty high for demonstration.
In a previous lifetime, we did some conversion of Tim Aste's content packs and processed them with q3map2... great results. I'll dig around to see if any of this conversion work survived and post some pics...
Quote:Are you planning on adding support for moving brushes
This depends a bit on the networking and physics sides of things. My plate is pretty full, but it would be cool. I'll definitely implement brush triggers.
#7
05/30/2006 (12:51 pm)
Awesome!!! Just awesome!!!
#8
I posted about this in my blog as I realized it might be interesting to folks not (currently) subscribed to the TSE forums :)
05/30/2006 (1:04 pm)
It's going very well. I love working with Carmack's data structures. They're just so elegant.I posted about this in my blog as I realized it might be interesting to folks not (currently) subscribed to the TSE forums :)
#9
05/30/2006 (2:13 pm)
Josh I'd love to help you work on this, even if it's in my spare time. Will try to shoot you an email!
#10
05/30/2006 (4:49 pm)
Josh: Do you need any help with beta testing :) i would like to help out!!
#11
05/30/2006 (4:50 pm)
Videos! Videos! ;-)
#12
I am writing our new toolchain with Nebula2. I extracted q3map2 and associated dependencies from the GTKRadiant build system. This was tedious but necessary.
The sources have been organized and setup to use the N2 build system. I commited it as nbsptool to the N2 subversion repository.
Long live nbsptool!
06/01/2006 (4:37 am)
Work progresses. I am writing our new toolchain with Nebula2. I extracted q3map2 and associated dependencies from the GTKRadiant build system. This was tedious but necessary.
The sources have been organized and setup to use the N2 build system. I commited it as nbsptool to the N2 subversion repository.
Long live nbsptool!
#13
06/01/2006 (5:11 am)
So its not for TSE anymore or ??
#14
Will you be sharing this tool (did i read it correctly that we can pull it from the Nebula2 svn, and its labeled nbsptool?)?
I feel like im missing something here (but i'm not an artist so i guess its ok..)
06/01/2006 (8:17 am)
So are you writing an artists tool for TSE using Nebula2 and GTKRadiant sources (if i read all that correctly)?Will you be sharing this tool (did i read it correctly that we can pull it from the Nebula2 svn, and its labeled nbsptool?)?
I feel like im missing something here (but i'm not an artist so i guess its ok..)
#15
I decided that q3map2 and Nebula2's Maya Toolkit are the best foundations for our new toolchain. Nebula2 is very modular and great for programming tools.
nbsptool contains GPL code from q3map2. The nbsptool code I write is under the MIT license and the source is already available in the N2 subversion repository. It's in active development and not quite ready for use. I will provide a compiled version once it's "done".
I'm making big changes to TSE (not least of which is a Nebula2 rendering device). I personally don't have any problem making these changes available... though, I have partners which also have a say. If you are interested in sticking with DTS/DIF, it's probably best to stick with map2dif and an existing DTS exporter. Otherwise, the data kicked out by nbsptool is quite nice to work with...
06/01/2006 (12:31 pm)
My thinking is simply: We need a good art pipeline. map2dif and max2dts are the best options for TSE currently. They both only provide the basics, are difficult to maintain/extend, and ultimately DIF and DTS formats are limited and very difficult to work with... this difficulty extends to the runtime engine.I decided that q3map2 and Nebula2's Maya Toolkit are the best foundations for our new toolchain. Nebula2 is very modular and great for programming tools.
nbsptool contains GPL code from q3map2. The nbsptool code I write is under the MIT license and the source is already available in the N2 subversion repository. It's in active development and not quite ready for use. I will provide a compiled version once it's "done".
I'm making big changes to TSE (not least of which is a Nebula2 rendering device). I personally don't have any problem making these changes available... though, I have partners which also have a say. If you are interested in sticking with DTS/DIF, it's probably best to stick with map2dif and an existing DTS exporter. Otherwise, the data kicked out by nbsptool is quite nice to work with...
#16
06/01/2006 (12:36 pm)
Soooooooooooooooooo... You are using Nebula2 for rendering?? did i get it right.
#17
Edit: One other thing I want to mention: It's quite possible that map2dif and dts exporters will work for your game. There is great value in keeping things simple.
06/01/2006 (12:38 pm)
Yes and no. I am making N2's scenegraph available to TSE. This is a whole other topic :)Edit: One other thing I want to mention: It's quite possible that map2dif and dts exporters will work for your game. There is great value in keeping things simple.
#18
nbsptool in itself is quite interesting. It looks like a good candidate for supporting multiple formats.
06/01/2006 (1:22 pm)
A marriage of TSE and N2's scenegraph with powerful new tools sounds good to me!!!! I hope your partners will let you share it. ;)nbsptool in itself is quite interesting. It looks like a good candidate for supporting multiple formats.
#19
I am willing to spend those money (and some more for your effort) if the toolchain gives me the features listed.
Can you share any comments on what you hope to integrate from that featurelist and possibly a very rough estimate on the timeframe involved?
06/01/2006 (5:49 pm)
Josh, looking at the Maya Toolkit for Nebula2 really waters my mouth but it comes with a pricetag.I am willing to spend those money (and some more for your effort) if the toolchain gives me the features listed.
Can you share any comments on what you hope to integrate from that featurelist and possibly a very rough estimate on the timeframe involved?
#20
There's a lot to like about TSE MS3. Abstracting the rendering away from scattered OpenGL calls had to happen. I think Atlas and the GUI are extremely well done. I also like the console and networking systems. I don't like the scenegraph, dif/dts rendering systems or formats, and most everything below GameBase (namely ShapeBase and Player classes). Again, it totally depends on the games that you are making... I in no way think GG has made mistakes with TSE.
Nebula2 has a unified scenegraph with a persistency layer. You can dump a heirarchy to disk and load it back again. All of the features in the Maya toolkit are stock in N2. So, there isn't anything special necessary to support them all at runtime ... From maya, you can export to a preview window for quick testing. Of note, N2 also has ascii and binary representations of it's file formats. The ascii is great while developing and the binary is great for shipping...
There is also a 3dsmax plugin for N2 which is being developed by a commercial game company. I have looked over the source code and it looks very good, though I have not tried the plugin out. The 3dsmax plugin is Open Source and can be downloaded from the N2 svn repository on sourceforge.
Prairie Games, Inc is a game company. I really don't want to get into technology licensing too deeply. I think it's in our and the technology's best interest to just make portions available to TSE licensees. When I say portions, I mean the N2 scenegraph plugin for TSE along with the nbsptool. This is something we'll discuss as a company. nbsptool and associated renderer will be available regardless...
06/02/2006 (2:10 am)
I'm working on this stuff fulltime, which is really a luxury. It's going faster than I expected, though I expect to hit some snags any day ;) There's a lot to like about TSE MS3. Abstracting the rendering away from scattered OpenGL calls had to happen. I think Atlas and the GUI are extremely well done. I also like the console and networking systems. I don't like the scenegraph, dif/dts rendering systems or formats, and most everything below GameBase (namely ShapeBase and Player classes). Again, it totally depends on the games that you are making... I in no way think GG has made mistakes with TSE.
Nebula2 has a unified scenegraph with a persistency layer. You can dump a heirarchy to disk and load it back again. All of the features in the Maya toolkit are stock in N2. So, there isn't anything special necessary to support them all at runtime ... From maya, you can export to a preview window for quick testing. Of note, N2 also has ascii and binary representations of it's file formats. The ascii is great while developing and the binary is great for shipping...
There is also a 3dsmax plugin for N2 which is being developed by a commercial game company. I have looked over the source code and it looks very good, though I have not tried the plugin out. The 3dsmax plugin is Open Source and can be downloaded from the N2 svn repository on sourceforge.
Prairie Games, Inc is a game company. I really don't want to get into technology licensing too deeply. I think it's in our and the technology's best interest to just make portions available to TSE licensees. When I say portions, I mean the N2 scenegraph plugin for TSE along with the nbsptool. This is something we'll discuss as a company. nbsptool and associated renderer will be available regardless...
Associate Joseph Euan