2004-07 John Kabus: Sorcerer of Light
by Alex Swanson · 07/14/2004 (10:32 am) · 15 comments
Sorcerer of Light
John "BobTheCBuilder" Kabus is one of the rising stars of the Torque development community. He recently became a GarageGames Associate and released the Lighting Pack, a code add-on for Torque that significantly improves the appearance and flexibility of in-game lighting.
GarageGames: When did you find out about GarageGames? When did you join the community, and when did you start serious work with Torque?
John Kabus: I found out about Torque late in the winter of 2003. At the time I was moving away from custom engine development and the perpetual development cycles inherent to it, and looking into complete engine packages that I could integrate portions of my existing graphics engine into. After much research I found that Torque was the only complete game engine available - others were only glorified graphics engines and I already had several of those. :)
By early spring 2003 I picked up a Torque license and joined the community. Initially I avoided any engine work for fear of jumping into another perpetual development cycle, but by mid summer 2003 engine work was needed for AI, large terrain textures, and universal light objects (early version of the Lighting Pack) - this really kicked off about six months of major engine enhancement that ultimately led to the creation of the Lighting Pack.
GG: What do you do for your day job?
JK: For the past five years I've been developing ASP (application service provider) radiology and medical transcription workflow software for a small national company named Webmedx. Being a small company (dev team is currently 5 people) I'm solely responsible for designing, developing and maintaining back-end software systems ranging from inter-vendor HL7 communication software, to telephony dictation software, to mutli-site document routing - all of which must run 24/7. I was fortunate to join the company early on allowing me to personally bring 90% of my software to life, although I have inherited a few small apps here and there.
Working for Webmedx can be a blast at times and I often get as much of a kick out of the development there as at home. Personally my favorite piece of Webmedx work would have to be a rather substantial piece of clustering software I've recently developed. Originally it was designed for high-availability fail-over, but I can't leave well enough alone, so I've added load-balanced distributed processing and node sharing across multiple clusters.
Oh, as my name would suggest I frequently use Borland CBuilder at work and at home. :)
GG:You created the Synapse Gaming Lighting Pack, and it rocks. How long did it take you to create? The Lighting Pack documentation is great. In comparison to how long it took to code, how much time did you have to spend creating the documentation?
JK: It's hard to judge the Lighting Pack's development time because of its history - originally the pack started as two separate pieces of software; the over-bright lighting engine designed for one of my previous engines, and the universal light objects, which were designed for advanced light modeling in Torque. These features were integrated into Torque over the course of two months, during which I was becoming familiar with the engine and rewriting the blender code for large terrain textures and light maps.
Then in October at the request of many community members I contacted GarageGames about publishing the code in a code content pack. GarageGames was very receptive, so I started re-writing the code for easy integration, while trying to keep the ability to tinker with the core code (because that's what I would want to do :). I completed version 1.0 of the Lighting Pack in late December.
The documentation has been difficult, on average a new feature will take twice as long to properly document as it does to code. Keeping the documentation simple enough that people won't be discouraged from reading has been the most difficult. There are MANY hints, tricks, and ways to exploit the Lighting Pack that I'd really like to heavily cover, however to keep things streamlined and manageable I only include hints that provide the greatest effect. I strongly encourage high levels of experimentation with the Lighting Pack, you'll be surprised at the results.
GG: You have a free update to the Lighting Pack coming out very soon. What new features does this 1.1 release contain?
JK: The Lighting Packs 1.1 features can be found in my Lighting Pack 1.1 plan. The biggest feature by far is the semi-real-time in-engine light editor, which makes modeling significantly faster and easier. Here's a quick rundown:
JK: First up after the 1.1 release is a Lighting Pack private forum here at Garage Games. This will allow Lighting Pack licensees to swap ideas, and it will allow me to release small code updates and fixes in-between major releases.
The main project after the 1.1 release is of-course the TSE Lighting Pack release, which ports most of the existing features and tools to TSE, and also adds a few new toys. The TSE and TGE Lighting Packs are 90% identical, with the last bit being tools highly tuned for TSE or TGE, so both will be fully supported after the TSE release.
Downloading code updates is very simple, when an update is released it is uploaded to the Lighting Pack zip file on the Garage Games server. A news item is posted announcing the release and then licensees can download the latest zip file from the Lighting Pack link in their 'Downloadable Products You Own' section of 'My Garage'.
I don't see payed upgrades happening in the near future. Even the TSE release, which involves major development, will be a free update (that's right you heard it here first!). Thats not to say I don't have new graphics related packs in development, but these fall outside of the Lighting Pack's scope and are very separate products (drooling yet? I know I am :).
View All Community Spotlights
John "BobTheCBuilder" Kabus is one of the rising stars of the Torque development community. He recently became a GarageGames Associate and released the Lighting Pack, a code add-on for Torque that significantly improves the appearance and flexibility of in-game lighting.
GarageGames: When did you find out about GarageGames? When did you join the community, and when did you start serious work with Torque?
John Kabus: I found out about Torque late in the winter of 2003. At the time I was moving away from custom engine development and the perpetual development cycles inherent to it, and looking into complete engine packages that I could integrate portions of my existing graphics engine into. After much research I found that Torque was the only complete game engine available - others were only glorified graphics engines and I already had several of those. :)
By early spring 2003 I picked up a Torque license and joined the community. Initially I avoided any engine work for fear of jumping into another perpetual development cycle, but by mid summer 2003 engine work was needed for AI, large terrain textures, and universal light objects (early version of the Lighting Pack) - this really kicked off about six months of major engine enhancement that ultimately led to the creation of the Lighting Pack.
GG: What do you do for your day job?
JK: For the past five years I've been developing ASP (application service provider) radiology and medical transcription workflow software for a small national company named Webmedx. Being a small company (dev team is currently 5 people) I'm solely responsible for designing, developing and maintaining back-end software systems ranging from inter-vendor HL7 communication software, to telephony dictation software, to mutli-site document routing - all of which must run 24/7. I was fortunate to join the company early on allowing me to personally bring 90% of my software to life, although I have inherited a few small apps here and there.
Working for Webmedx can be a blast at times and I often get as much of a kick out of the development there as at home. Personally my favorite piece of Webmedx work would have to be a rather substantial piece of clustering software I've recently developed. Originally it was designed for high-availability fail-over, but I can't leave well enough alone, so I've added load-balanced distributed processing and node sharing across multiple clusters.
Oh, as my name would suggest I frequently use Borland CBuilder at work and at home. :)
GG:You created the Synapse Gaming Lighting Pack, and it rocks. How long did it take you to create? The Lighting Pack documentation is great. In comparison to how long it took to code, how much time did you have to spend creating the documentation?
JK: It's hard to judge the Lighting Pack's development time because of its history - originally the pack started as two separate pieces of software; the over-bright lighting engine designed for one of my previous engines, and the universal light objects, which were designed for advanced light modeling in Torque. These features were integrated into Torque over the course of two months, during which I was becoming familiar with the engine and rewriting the blender code for large terrain textures and light maps.
Then in October at the request of many community members I contacted GarageGames about publishing the code in a code content pack. GarageGames was very receptive, so I started re-writing the code for easy integration, while trying to keep the ability to tinker with the core code (because that's what I would want to do :). I completed version 1.0 of the Lighting Pack in late December.
The documentation has been difficult, on average a new feature will take twice as long to properly document as it does to code. Keeping the documentation simple enough that people won't be discouraged from reading has been the most difficult. There are MANY hints, tricks, and ways to exploit the Lighting Pack that I'd really like to heavily cover, however to keep things streamlined and manageable I only include hints that provide the greatest effect. I strongly encourage high levels of experimentation with the Lighting Pack, you'll be surprised at the results.
GG: You have a free update to the Lighting Pack coming out very soon. What new features does this 1.1 release contain?
JK: The Lighting Packs 1.1 features can be found in my Lighting Pack 1.1 plan. The biggest feature by far is the semi-real-time in-engine light editor, which makes modeling significantly faster and easier. Here's a quick rundown:
- Semi-real-time in-game Light Editor- allows semi-real-time editing of light datablocks.
- Real-time light datablock assignment - allows light datablock switches to take immediate effect (previously a mission reload was required). Coupled with the Light Editor this allows rapid creation, editing, cloning, layout, grouping (through common datablocks), and regrouping of scene lights.
- Enhanced dynamic interior lighting - allows all dynamic lights (even stock TGE lights) to illuminate completely dark interiors without washing out textures.
- TSStatic sunlight support - allows the sun to be configured as a light source for TSStatic objects.
- TSStatic adaptive self-illumination - allows objects with self-illumination to be programmatically blended into the scene.
- TSStatic custom ambient - allows for fine-tuning of lighting on TSStatic objects.
JK: First up after the 1.1 release is a Lighting Pack private forum here at Garage Games. This will allow Lighting Pack licensees to swap ideas, and it will allow me to release small code updates and fixes in-between major releases.
The main project after the 1.1 release is of-course the TSE Lighting Pack release, which ports most of the existing features and tools to TSE, and also adds a few new toys. The TSE and TGE Lighting Packs are 90% identical, with the last bit being tools highly tuned for TSE or TGE, so both will be fully supported after the TSE release.
Downloading code updates is very simple, when an update is released it is uploaded to the Lighting Pack zip file on the Garage Games server. A news item is posted announcing the release and then licensees can download the latest zip file from the Lighting Pack link in their 'Downloadable Products You Own' section of 'My Garage'.
I don't see payed upgrades happening in the near future. Even the TSE release, which involves major development, will be a free update (that's right you heard it here first!). Thats not to say I don't have new graphics related packs in development, but these fall outside of the Lighting Pack's scope and are very separate products (drooling yet? I know I am :).
View All Community Spotlights
About the author
#2
The option of having Johns stuff is nice though, even for the fact of the editor.
07/14/2004 (11:48 am)
Just wondering though were still going to get the dynamic lighting and shadows in standard TSE right?The option of having Johns stuff is nice though, even for the fact of the editor.
#3
Have you made it so blender can use larger terrain textures? if so is that in 1.0 or 1.1?
07/14/2004 (1:44 pm)
It looks damn amazing!Have you made it so blender can use larger terrain textures? if so is that in 1.0 or 1.1?
#4
Westy, the Lighting Pack provides a powerful cross platform (Win32/Linux/Mac - TGE/TSE) toolkit for Torque that creates many new modeling possibilities and allows very rapid level development.
The Lighting Pack also allows you to use stock TGE/TSE light objects along with it's integrated light objects, so when the TSE lights are available they'll be fully supported.
Daniel, I wrote the terrain blender for one of our projects. It allows any standard texture size (any power of two), but the code is platform dependent. The updated terrain blender is really beyond the Lighting Pack's scope, besides it would seriously complicate the process of integrating the Lighting Pack into Torque.
Thanks for the support!
-John
07/14/2004 (3:27 pm)
Michael, me too!Westy, the Lighting Pack provides a powerful cross platform (Win32/Linux/Mac - TGE/TSE) toolkit for Torque that creates many new modeling possibilities and allows very rapid level development.
The Lighting Pack also allows you to use stock TGE/TSE light objects along with it's integrated light objects, so when the TSE lights are available they'll be fully supported.
Daniel, I wrote the terrain blender for one of our projects. It allows any standard texture size (any power of two), but the code is platform dependent. The updated terrain blender is really beyond the Lighting Pack's scope, besides it would seriously complicate the process of integrating the Lighting Pack into Torque.
Thanks for the support!
-John
#5
Keep up the great work.
Drooling for the update......:)
07/14/2004 (6:28 pm)
My hats off to you John. You are a definite credit to GG and the community. Its people like you that help people that are still learning, like me, have the chance to learn and be able to at least have a shot at competing with the big boys in developing top level games.Keep up the great work.
Drooling for the update......:)
#6
For anybody who hasn't yet, remember to pick up John's Lighting Pack. Speak to any of the developers who are currently using it in serious game development, it will do wonders for your project.
07/14/2004 (8:02 pm)
Thanks for answering all our questions, John. Good stuff.For anybody who hasn't yet, remember to pick up John's Lighting Pack. Speak to any of the developers who are currently using it in serious game development, it will do wonders for your project.
#7
07/15/2004 (3:54 am)
Jackie, I
#8
07/15/2004 (4:12 am)
Do we have to purchase the Lighting pack for each of our coders (like gg requires) or just once?
#9
-John
07/15/2004 (4:57 am)
Hi Eustacia, the license is per-developer similar to Torque. This allows you to use your license for multiple projects.-John
#10
Nice work. Keep it up, its inspirational...
07/19/2004 (7:46 am)
Sorcerer of Light? That's a new one. Nice work. Keep it up, its inspirational...
#11
07/19/2004 (8:33 am)
Hey bro, how
#12
(Obscure?)
07/19/2004 (11:43 am)
If he's a Sorcerer of Light, why did he need to cast magic missile?(Obscure?)
#13
07/19/2004 (12:16 pm)
Ummm
#14
07/19/2004 (7:20 pm)
He... he was attacking the darkness.
#15
07/23/2004 (8:59 am)
*everyone laughs* I just love that flash animation. 
Torque 3D Owner Michael Cozzolino
Big Monk Games