Project Wish  
Project Wish
Project Wish
hardwired

Welcome Guest ( Log In | Register )

Comments (1) · Permalink · Game Design · Not rated (0 votes)
Jul 26 2008, 08:02 PM
Gremlin is a new tool that allows artists to preview their meshes inside of Ogre. Artists can apply materials to the meshes and see how they look. They can also add lights, create multiple cameras (for quickly viewing different angles), and preview animations. It will also integrate with Ogre's MeshMagick tool.

IPB Image

This is just a quick mockup of how the gui might look. It was also my first experience with Window's Presentation Foundation. I upgraded to Visual C# Express Service Pack 1 Beta so I would get some key features of the GUI editor that were missing in the first release. Unfortunately, being beta, it isn't entirely stable. Also unfortunate is the lack of a native WPF property grid control. I hope that gets fixed soon. For now there are high-quality commerical alternatives available, but I'd rather not have to pay for it.

Keep in mind that this is just a mockup. It doesn't even explore the capabilities of WPF yet. I have a book on WPF, but I want to get through another book I'm reading first. In the background you can see the Visual Studio editor ("Cider", I believe is the name). You can see that WPF is vector-based and scales well. In the background I'm zoomed in 3x.

Over the next few weeks the design should settle a bit and implementation can begin. I'm looking forward to this, as it will be the first time I get to see how well C# and Ogre mix.
Go to the top of the page
  Print

Comments (0) · Permalink · Game Design · Not rated (0 votes)
Oct 21 2007, 02:05 PM
So I got Game Programming Gems 5 and 6 last week, specifically for the articles on component-based game objects. I've read through both, but have only tried to implement the one from GPG5 so far. I must say I'm rather disappointed with the article. What is there is well written, but it lacks some pretty important information. It merely mentions the game object manager class, which happens to be the largest class in the system. It also doesn't do a good job explaining what the parameter nodes are. The article also doesn't get into creating objects dynamically. All of the objects in the article were parsed from a file and loaded at once at startup. I think to create objects dynamically you need a way of storing parameter nodes. Also, the author does not provide the code for "ObjectBuilder.exe", which creates the binary file format he uses, so it's hard to figure out what exactly is going on in the code. Another downside to the article is that it relies heavily on the game. It is hard to abstract out and reuse.

However, GPG6 provides a bit of hope here. It offers a simpler solution that isn't as tightly coupled to the game, and appears to be much easier to implement. There's also no message passing in this system, which grey will be happy about. The xml file example in this article creates templates for objects, which can then be created dynamically, so that issue is addressed in this article. Maybe tomorrow night I'll have a go at implementing that system. It should be simpler to do than the GPG5 article, which just seemed like the author was on the right track, but hadn't completely thought the system out yet.
Go to the top of the page
  Print

Comments (0) · Permalink · Game Design · Not rated (0 votes)
Sep 15 2007, 12:34 AM
For the last three day's I've been refactoring the Tech Demo. This means there aren't any new screenshots, but the code structure is entirely different. Lots of hacked in things (such as the night sky and the stars) we're pulled out into a cleaner design. Other changes allow the code to be maintained easier, reduce programmer error, and require less code to be written to get the same functionality. A side effect of this is better performance because updates that don't necessarily have to occur every frame no longer do. Right now they're updating 24 times per second instead of every frame, pushing the frame rate to over 200 average FPS on my (now rather outdated) graphics card.
Go to the top of the page
  Print

Comments (1) · Permalink · Game Design · Not rated (0 votes)
Aug 5 2007, 12:02 AM
The tech demo is coming along nicely. I spent the last few days getting RBGui integrated into the tech demo. It still has some rough spots and little documentation, but I'm starting to learn it, and it is fairly intuitive to use. The only screenshot I have today is the time settings gui. I started with it because it is the simplest one to implement. In the screenshot below you can see there is a setting for running the time continuously, or you can manually adjust the time with the slider bar. Pretty simple. For a little bit of polish I made it so the slider bar is in sync with the time when the time is running.

I also keep meaning to create the project files for the game engine, but keep running out of time in the day. I hope to get that going real soon though.

In other news, I'm going on vacation from the 8th to the 13th, without internet access, so I won't be around.

IPB Image
Go to the top of the page
  Print

Comments (0) · Permalink · Game Design · Not rated (0 votes)
Aug 28 2006, 12:05 PM
Well, I spent the last two days figuring out how to do underwater fog for water planes. For the longest time I couldn't figure out why my RaySceneQuery wasn't returning the entity I wanted, It returned a piece of terrain. I tried to filter the results using a custom query mask and thought there is no way it can give me terrain now. I got terrain returned. I figured that the scene manager didn't allow custom query masks, and only let you use the ones it defines. No major problem. It's a little slower, but still not bad. So I thought that surely by requesting only the entities, not the terrain, to be returned from the results I would not get a terrain result back. I got a terrain result returned. By this time I'm completely baffled as to what is happening, so decide to print out a list of everything the ray intersects. Ends up the result I was looking for was in that list, as well as the result that was screwing me up. Going one step further I printed off the distances to each intersection. I found out the distance to the object causing the error in my logic was at a distance 0. This could only be the camera. Why the camera, a movable object, is returned as being a terrain object I have no clue, but it is, as far as I can tell. Maybe someone can verify this. So the fix to that meant I had to put a distance hack into the fog to check if the terrain entity is at distance 0, and if it is, ignore it.

The results turned out nice though. Thinking ahead, my solution allows for water planes to be stacked on top of each other, and if a terrain object is found before a water plane, meaning terrain overhead, the world for settings is set, not underwater fog. This allows for complex cave systems with multiple levels and indoor lakes stacked on top of each other, each with its own fog setting.

On a personal note, I'm leaving to go back up to school tomorrow or Wednesday, and probably won't have internet access until late in the week, or even early next week, which means I won't have much updating of dwarf. I guess I'll spend the time looking for bugs.
Go to the top of the page
  Print


RSS
> Info/Links
About the author
njpaul



PM   Profile Card
Blog categories
Blog stats
Views: 26529
Entries: 5
Blog created: Nov 23 2006, 01:25 AM


Lo-Fi Version Time is now: 28th March 2024 - 02:42 AM
Original skin by: b6gm6n | Conversion by: Chris Y
hardwired
  hardwired
hardwired hardwired
hardwired hardwired