🎉 Celebrating 25 Years of GameDev.net! 🎉

Not many can claim 25 years on the Internet! Join us in celebrating this milestone. Learn more about our history, and thank you for being a part of our community!

New engine technologies

Published November 09, 2007
Advertisement

Feedback Requirements

After working on my design documents for a while, I started a list of the required engine technology that I would need for my new game. The first one that I am going to tackle is an overhaul and paradigm change of the GUI. GUIs don't seem like that much fun to work on, but if done properly it can make a world of difference to the whole experience.

3D GUI

With that in mind, in my previous engine the GUI was a collection of special case 2D objects (buttons, labels, slider bars, etc...) inserted into the scene graph. These objects were then send information about what the cursor/buttons were doing and the objects would shoot back a message if something important happened. This worked out great for a 2D, windows type of environment.

Well, now I want to change that to be a 3D GUI instead of 2D. It seems difficult at first to consider how to map the two concepts, but they actually aren't that different. The objects were already in my scene graph, so the conversion to 3D objects makes no difference there. The cursor used to be a 2D location, but now it is a 3D ray instead. The previous interaction with the cursor was essentially an intersection test between the cursor and the objects, which is still true for the 3D case. And I can still re-use the messaging system that I had before. Sounds like a good way to go.

The benefit of switching to 3D is to have a much more varied set of possible components to the gui. Also, it unifies the rendering aspects of the system, so there will only be a single rendering path instead of GUI first then scene second. I am truly looking forward to see what I can do with this...

My current tasks are to get the 3D intersection testing and location finished up. The latest Eberly book (3D Game Engine Design 2nd Ed.) has the techniques that I need, so it shouldn't take long to get them implemented. Hopefully I can get some test guis up and running soon...
Previous Entry Moving on
Next Entry Lua...
0 likes 2 comments

Comments

jollyjeffers
Alarm bells went off when I saw the 3D UI title, but your ideas sound fairly sane to me. I've seen various 3D interfaces tried and mostly failed simply due to usability...

It'll be interesting to see how it works out; I can imagine you'd be able to create much more interesting interfaces - especially when it comes to integrating them into a game/multimedia scene. Most UI's seem artificial and disjoint from any background imagery.

Jack
November 09, 2007 11:20 AM
Jason Z
Yeah, I'm hoping that there will be some interesting combinations that can be made - such as integrating physics into the UI. There is some limits to consider before the UI becomes more of a distraction than a benefit, but we'll see how finely I can tread the line.
November 10, 2007 05:18 PM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Advertisement