Still around =)
by Matt Fairfax · 03/24/2003 (9:57 pm) · 3 comments
After being unemployed for the last six months, I finally got a job. I have been enjoying it and I think I will like working there. I am really looking forward to having a regular schedule (my last job was anything but regular). I am hoping that I will be able to settle into a routine which will include a healthy dose of game programming every week but I have a few other things I need to take care of first (taxes, bills, a website, a server, etc).
I have been starting to read the forums more often and to reply to a few threads but I have been a bit out of the loop so please bear with me if I mention something that has been outdated. I am slowly getting up to speed =) I have also been hanging out in the irc channel again and I hope that I'll get a chance to chat with the many of you who have become active members of this community since I was last involved.
Game development-wise, I have been focusing on shadows and lighting lately. This has also brought me into contact with shaders since most of the current real-time lighting schemes are being accelerated through shaders. I'm really not satified with the current methods of handling lighting. They are still relying on the brute force of the video cards to handle multiple passes of the same geometry whic means if your card doesn't have the brute force necessary you don't get the shadows. This strikes me as a "hackish" way of doing things. Unfortunately, I don't have an alternative yet but I am still pondering the problem. One thing I could really wish for is that vertex shaders could spawn new vertices (procedural shaders) as well as access other loaded vertices (differential shaders).
I also recently sat down a wrote up a design for a new game engine since my aging IS Engine (Incredibly Simple) isn't really cutting it for me anymore. I found myself having to work to hack in new pieces. Funny thing is that when I sat down and read the latest TGE docs, I discovered that the engine I had just designed and the TGE shared quite a lot of common concepts, structure, and organization. Now, I knew that the TGE networking/simulation model had certainly affected my design but it has been almost two years since I was last heavily involved with the TGE. I was very surprised by how deeply it had influenced me. I also understand a great deal more about why it was built the way it was since I have come at it with a great deal more experience. Before, I was often confused by why certain things were done the way they were but I now understand that the TGE is a very advanced engine designed by extremely experienced programmers who knew exactly what they were about. True, there are things I would have done differently and things I would like to change but I now have a new respect for the TGE (not that it needs my respect =)
This does lead me to my last point. The TGE really isn't an engine for those new at programming or at game programming. It's great that they have access to all the source and I truly believe that a dedicated individual can start from scratch and learn a lot from TGE, maybe even master it. However, there really should exist a completely different engine designed specifically with the new indie developer in mind. A much simpler engine that a "young" programmer can dive into and not get lost in. TGE Lite if you will =) I won't go into all of my theories and designs of what such an engine should look like. I just wanted bring attention to a need that I personally believe exists.
I have been starting to read the forums more often and to reply to a few threads but I have been a bit out of the loop so please bear with me if I mention something that has been outdated. I am slowly getting up to speed =) I have also been hanging out in the irc channel again and I hope that I'll get a chance to chat with the many of you who have become active members of this community since I was last involved.
Game development-wise, I have been focusing on shadows and lighting lately. This has also brought me into contact with shaders since most of the current real-time lighting schemes are being accelerated through shaders. I'm really not satified with the current methods of handling lighting. They are still relying on the brute force of the video cards to handle multiple passes of the same geometry whic means if your card doesn't have the brute force necessary you don't get the shadows. This strikes me as a "hackish" way of doing things. Unfortunately, I don't have an alternative yet but I am still pondering the problem. One thing I could really wish for is that vertex shaders could spawn new vertices (procedural shaders) as well as access other loaded vertices (differential shaders).
I also recently sat down a wrote up a design for a new game engine since my aging IS Engine (Incredibly Simple) isn't really cutting it for me anymore. I found myself having to work to hack in new pieces. Funny thing is that when I sat down and read the latest TGE docs, I discovered that the engine I had just designed and the TGE shared quite a lot of common concepts, structure, and organization. Now, I knew that the TGE networking/simulation model had certainly affected my design but it has been almost two years since I was last heavily involved with the TGE. I was very surprised by how deeply it had influenced me. I also understand a great deal more about why it was built the way it was since I have come at it with a great deal more experience. Before, I was often confused by why certain things were done the way they were but I now understand that the TGE is a very advanced engine designed by extremely experienced programmers who knew exactly what they were about. True, there are things I would have done differently and things I would like to change but I now have a new respect for the TGE (not that it needs my respect =)
This does lead me to my last point. The TGE really isn't an engine for those new at programming or at game programming. It's great that they have access to all the source and I truly believe that a dedicated individual can start from scratch and learn a lot from TGE, maybe even master it. However, there really should exist a completely different engine designed specifically with the new indie developer in mind. A much simpler engine that a "young" programmer can dive into and not get lost in. TGE Lite if you will =) I won't go into all of my theories and designs of what such an engine should look like. I just wanted bring attention to a need that I personally believe exists.
About the author
I am a Game Designer at PopCap who has worked on PvZ Adventures, PvZ2, Peggle Blast, and Bejeweled Skies. I am an ex-GarageGames employee who helped ship TGE, TGEA, Torque 3D, and Constructor.
#2
03/25/2003 (8:17 am)
Quote:I don't think either of these will happen just because of the way things work in the pipeline. (Though I have been wrong before and am readily avalable to be wrong again) Especially the spawning new verticies. You can still do procedural stuff with vertex shaders right now, take a look at stuff like the procedural terrain generation demo in the Cg demos. As far as making new vertices, though, I can't even see that happening ever. Accessing other vertices, maybe, and that would be cool, but IO is so damn expensive, there is no way you would want to be doing memory writes in a shader. And remember, that shader is executed 60x per second per vertex. Now you could do some vertex buffer work in your rendering function, but a vertex shader is NOT the place to do this.
One thing I could really wish for is that vertex shaders could spawn new vertices (procedural shaders) as well as access other loaded vertices (differential shaders).
#3
Best of luck on your new job! I came across the mention of lighting and felt like asking this question. I need to add corona lights. What would be a better approach ( performance-wise and coding difficulty), should I add a new entity to be used in WorldCraft or should I add a new class to engine and use mission editor? Or having both at disposal would be a nice. any suggestions will be helpful.
thanks in advance.
04/17/2003 (9:11 pm)
Matt, Best of luck on your new job! I came across the mention of lighting and felt like asking this question. I need to add corona lights. What would be a better approach ( performance-wise and coding difficulty), should I add a new entity to be used in WorldCraft or should I add a new class to engine and use mission editor? Or having both at disposal would be a nice. any suggestions will be helpful.
thanks in advance.

Torque Owner Greg Findlay
Alc