Brussell's Blog

Game Dev

Diffuse + Specular Lighting, and AABB Frustum Curling …

by B.Russell on Sep.29, 2008, under Game Dev

Well, it’s been a while since I’ve updated the ol’ site but I come bearing lots of updates to Piston3D. Since the last writing I have added just some of the following I can remember off the top of my head:

  • Basic Scene Graph ( Includes AABB Frustum Curling )
  • HLSL Diffuse\Specular Lighting
  • Basic GUI System ( Form, Labels, etc. )
  • Render to Target ( Dramatic FPS gain in GUI system so far )
  • AABB on all Scene Objects for fast Curling in Scene
  • First Person Camera Implementation
  • Basic Event System ( Input, Windowing Events, etc. ) coupled with Listeners

Well below is 2 screenshots, in the first you can see a basic GUI system which is first rendered to a Target ( dynamic texture ) then until any states change that texture is rendered on a simple 2 primitive box representing the owning form. Also shown is a simple Torus model with Diffuse + Specular lighting that I started with HLSL. Take notice of the Vertice & Face count numbers in the first screen shot. Now in the 2nd screenshot you will notice the torus is no longer drawn, I actually moved the view and now when looking at the Vertice & Face counts you will see a dramatic drop b\c the AABB Frustum Curling system I’ve implemented so far in the Scene Graph system quickly cut it out with very little over head. I will implement more advance Sphere Curling calculations as I move forward and so on, this is just a dirty test of my theories and knowledge thus far and it appears to be working rather well =). Did I mention the whole project thus far is modular in design and API Graphic Independant =). But I only have DirectX 9.0c and HLSL implemented thus far.

  

Leave a Comment :, , more...

Back from the Dead …

by B.Russell on Jun.12, 2008, under Game Dev

Suprise, suprise, I’m back from the dead it appears =). Just thought I’d come in and blow some dust off the site and get back to posting some more. I have been busy lately, other things ( real life ) has pulled me away from spending time on my sites over the past few months but hopefully I can find time now to post a little more and get some good, juicy tutorials up.

I’m still coding away on Piston3d ( C++ DirectX / OpenGL Game Engine ). In fact I have a screenshot of one of my latest tests showing off some very early workings of the Programmable Pipeline ( Shaders ) system in action. Gotta thank Brad Harris for the famous Teapot model that I’m testing with there =p. It may be hard to see but I was playing with some simple lighting effects in that pic, the white areas of course being the lit sections.


So far I have a nice system layout utilizing some of the following features:

  • * Explicit C++ structure for crossplatform, cross-Render API targeting
  • * Font System
  • * Programmable Pipeline ( Shader system )
  • * Basic Mesh and Submesh rendering
  • * Importing of 3DS files
  • * Reading and handling of PNG textures
Leave a Comment more...

Game Development

by B.Russell on Jun.14, 2007, under Game Dev

Since leaving Valve Software back in 2003, I have found myself longing to get back into game programming. For me it was an awesome experience to be not only a programmer, but a game designer with a voice over how the game flowed and molded. Working for a game company to me would be very cool, but too much like where I work now in working for the man up the ladder in the coporate office. No I can’t have that. For me, game development is like the best of all worlds in my book. I can get technical and program to my hearts content, be a film director or writer to help the story along, or put on my art hat and beef up the visuals and sound. Finally, in the end you get to feel your sense of accomplishment when the fans start crowding the forums, or sending emails talking all about your game ( good and the bad ). It’s then you get to put on your PR (public Relations ) hat and deal with the public. When release ( sell ) time comes, if you plan on selling your work, you get to play coporate professional in advertising, selling your game. There is so many hats to wear in Game Development for those who choose to go alone or on a small team that it keeps it fun and interesting.

I thought I found my new home with a local company here in Bham, AL called ClownKeep. I actually worked with the owner ( head artist / 3d guru ) and another scripter / artist at my full-time job. Oh the plans we had in motion for taking over the world … it was such fun. You can actually search Garage Games for clownkeep and see one of the projects we had going. Unfortunately, life isn’t always perfect … people move on to other jobs, life, kids, and house improvements take away from the joys of spare time Game Development as did with our team. After Dave, the owner of clownkeep, left for another job up north in Huntsville, the team decided to take a short recess, but I knew what that meant and it came true unfortunately. That recess has turned into nearly a 6 month silence for our team, one that I’ve seen far too much in the past.

So now, back on my own in this lonely world of Game Development in AL I find myself asking the one question all solo developers find theirself asking. Is there really any hope for my game development obsession ? Will my futile solo work mean anything in the end ? Or will it just be time wasted ? I geuss the only true answer is never give up, always keep your head up, and your code flowing.

With all that back story out of the way, I now get on to the good news. I am continueing my solo work in my spare time. I need to narrow my 2 platform choices down though before things get too complicated. I’m currently implementing a XNA engine and game, and a C++ engine and game. This is bad and leads to slow progression. My first reaction is to dump the XNA one and go with the tried and true method of C++, but for some reason that naggin voice in the back of my head keeps me hanging on to the XNA. Could it in fact be the future for game development ? One thing is for sure, .Net development makes life so much easier with the facts of built in memory managment, cross platform implementations, and the backing of Microsoft as possibly the “future” pick of programming platforms. Unfortunately, being on the frontline of a work in progress such as .Net and XNA comes with a price. No matter what people say, writing a game for it such as a normal FPS, or normal RPG style game with cutting edge graphics has it’s performance hits vs. C++. But unlike others, with PCs quickly overpowering in specs, and video cards ramping up the onboard memory and processing power, and now having physics hardware cards, the future is looking alot brighter for XNA. I have much faith that Microsoft will only continue to make the .Net language more stream lined in future releases, and even more so for game development in XNA.

So chasing this rabbit down the hole and returning back out, I find myself asking the all to important question still. Should my project stay with XNA and .Net and hope the future improvements and my work join paths in the near future ? So many possibilities and questions, and not enough facts and answers.

Leave a Comment :, , , more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Visit our friends!

A few highly recommended friends...