Monthly Archives: December 2005

Eclipse for Digital Content Creation?

At my first EclipseCon a couple of years ago, Sebastien Marineau and I met someone from the Sony Playstation development tools group. They apparently were interested in the CDT as a development environment. We’re not sure what for and they didn’t follow up, at least with me anyway. But we do see some bugs raised in bugzilla coming from playstation.sony.com.

That meeting got me thinking. Obviously most of game development, at least for PCs and the consoles, is done in C and C++. Using the CDT makes tons of sense in that environment. I even got an e-mail from someone in id Software, the DOOM people, who had some issues using the CDT (indexer performance, of course, what else?), but at least they had thought using the CDT would be a good idea.

So I looked around at how game development was done and gave some of the open source game engines a try, Ogre in particular. I was able to go through the tutorials and build a very simple game application using the CDT and importing all of the graphics files that were needed. I was able to bring the application up under the debugger and check up on things. It was fun and I wish that I had more time to play with game development and get something real working.

During my investigation, I ran accross shaders, which are little assembly language programs used to program graphic chips directly. Both nVidia and Microsoft have defined specialized programming languages that allow these shaders to be built using C-like languages. Of course, that pinged the parser dude in me and made me wonder if we could leverage the multi-language nature of the CDT to support writing these shaders. Of course, my real job prevented me from spending any time prototyping this out.

Then I took it one step further. What are all the artifacts that go into games. Not only is there C and C++ code and shader code, there are 3d models and 2d textures. My thinking is that it would be a pretty cool environment if we could bring editors for graphics and project management/build together under the Eclipse umbrella. The stuff we are seeing with OpenGL support in SWT makes this even easier. The only question that comes to mind is whether Java is the right language for this, but after trying out the snippets provided by the SWT gang, performance wasn’t all that bad. So I really think building a complete game development environment using Eclipse and the CDT makes a ton of sense. All it takes is someone with enough interest and resources to start up a project to make it happen. And it would be very cool for Eclipse’s image.

Then, why stop at game development. I thought about an old aquaintance at the University of Saskatchewan who went on to work at Pixar. Obviously they do 3d modeling there as well, so I went to their web site to look at what they were all about. To my surprise, it turns out that these guys were some of the first to use shaders. They have their own programming language for defining shaders for various things, much more than graphics boards support but very similar. And they have a super powerful rendering engine that puts it all together to make movies. I don’t think it’s a stretch to take a game development environment built on Eclipse and turn it into a digital movie production environment. Makes you go hmmm, no?

Welcome to my Blog

Mike Milinkovich recommended I get my own blog and start jotting down my thoughts. A brilliant man he is so I decided to finally follow up on it.

I’ve been the project lead for the CDT for a couple of months now but have really been heavily involved in the CDT since it was started at Eclipse, at least the QNX version, back in the summer of 2002. Back then I worked for Rational and we were looking for an Eclipse-based solution to support our C++ modeling products for markets that weren’t using Visual Studio, of which of course there are many. Our needs were C++ parsing and code models for our translation frameworks. I’ve always been interested in programming languages and parsing so I couldn’t pass up the opportunity when it floated by me in the hall one day and am very glad I did.

I’ve dedicated this segment of my career to the CDT, enough so that I made the move to QNX to allow me to continue my work on it and to do what ever I can to ensure it’s success as an industry leading C/C++ IDE. We’re getting close and I can see the point now where we will have what it takes get there and that drives me even more.

I am looking forward to sharing my thoughts here on the state of the industry, my passion for Eclipse and the community and ecosystem that drives it, and maybe some of the vision that I have on where the tools industry can go to help ensure the success of the software developers everywhere.

We’ve talked so much in the past about the crisis we have faced in software development as projects failed more often than they were successful. I think that tide has turned as the tools and frameworks that developers have at their fingertips today have allowed them to make smarter decisions and to react in a crisus fast enought to recover. I embrace the time when we have to try and think back to remember what all the fuss was about.

Stay tuned for more…