Michael Chase’s Weblog

April 13, 2008

Wiimote Mouse

Filed under: Uncategorized — mbrazell @ 9:35 pm
Tags: , , , , , ,

I have just completed an executable that allows the user to control the cursor (mouse) with a Wiimote. They only need support for Bluetooth, a Wii sensor bar (or an infrared light source), and a Wiimote.

I came up with an effective (and possibly novel) way of reducing jitter (the Wiimote is very sensitive) using the accelerometer within the Wiimote. If the user is pointing at a specific location, the Wiimote will be relatively still, and the accelerometer’s acceleration vector will also be relatively stable. Hence, if the accelerometer isn’t changing (much), I don’t send mouse move messages to the OS.

Here’s a screen-shot of the interface:

Wiimote Mouse Interface

Pretty spiffy, eh?

What’s also cool is this is my first C# program. I love C# and Visual Studio 2005 so far!

March 21, 2008

Automatic Display Lists

Filed under: Uncategorized — mbrazell @ 3:54 pm
Tags: , , ,

Replicators turned out to be a bust… so I decided to make display lists in the Scene Graph automatic. With automatic display lists, every existing and future demo can take advantage of the performance boosts from display lists with no changes to the XML. I’ve just completed the implementation, and am ready to unit test. Once all the kinks (if any!) are worked out, every static model in any scene will use display lists. I’m counting on a home run this time.

March 7, 2008

Waiting for a BIG compile to complete…

Filed under: Uncategorized — mbrazell @ 1:39 pm
Tags: , ,

I changed something in the basest of base classes, so I’m waiting for the whole project to compile… probably another 5 minutes.

I recently added display list support to the graphics engine of Bridgeworks (http://dev.bridgeborn.com/BwSchools). Currently, Bridgeworks supports OpenGL 1.1 and Direct3D 8.1. OpenGL already had display lists built in, so that was easy. I wrote my own version of display lists for the Direct3D component. The frame rate improvements were well beyond my expectations. I knew there would be some improvement, but I didn’t realize to what extent. On our test scene, which has many duplicated objects and can benefit from display lists, enabling the display lists brought the frame rate from 2 fps to around 33 fps… amazing. This will have positive implications for any scene that utilizes static or duplicated objects, like graphs for instance.

I want to further optimize the D3D display list support, by removing Get* methods from the display lists, as these are not necessary for rendering once the initial display list record has been made.

I’m currently working on what I call a “Replicator” node for the SceneGraph library. Tim, the CEO of Bridgeborn, and my personal friend who endlessly harasses me with his dry wit (I love it), said it sounded like something Arnold Schwarzenegger (had to look up that spelling) would say. The replicators purpose is to replicate prototypes of a model so that the model doesn’t have to be stored in the scene graph multiple times… another optimization that I’m hoping will prove beneficial. We’ll see.

Well the compilation has just finished, so I have too.

February 27, 2008

Hello world!

Filed under: Uncategorized — mbrazell @ 1:05 am
Tags: ,

The auto-generated title of this entry is appropriate for several reasons. First, I’ve just started a new, exciting chapter of my life in Virginia Beach, Virginia. Second, I’m a programmer, and “Hello world!” is typically the first program you write when learning a new programming language. Third, this is my first blog.

So, gleefully I proclaim… Hello world!

Blog at WordPress.com.