Home Downloads About Contact

News

Update and Project Status - 2/14/10

I felt like after all the changes lately, it would be a good idea to look at where the project is in terms of goals. Currently, the next milestone is finishing the configuration and scripting portions of the engine, or at least getting them to enough of a devloped point to make it worth moving forward. That requires the following this to be done:

Basic Engine Infastructure (C++)

Ability to read and parse configuration files (C++)

Ability to read and parse scripting files (C++)

Ability to generate engine-readable files (Ruby)

Now let's look at these induvidual tasks in more detail:

Basic Engine Infastructure (C++).I thought about putting this down as competed, but decided it will only be at the point the other three items are all checked off we will really see how this engine will and should be set up, though I feel its current incarnation is pretty close.

Ability to read and parse configuration files (C++).I'm am satisfied with the current incarnation of the configuration- reading system. It does what it needs to: read both integer and string key-value pairs, and is scalable storage wise depending on the configuration file.

Ability to read and parse scripting files (C++).This is the next task I will be tackling in the coming week(s). Like the configuration reader, it needs to be scalable, and read a list of commands, as well as have the ability to communicate with other scripting files.

Ability to generate engine-readable files (Ruby).I feel this will be the most daunting task on the path to the next milestone, as it is the first big "mini-aplication" (oxymoron, anyone?) or "feature" that will be added to the engine. I'm not sure if I've ever fully explained how the scripint element of the engine works, but it goes something like this:

The developer will never touch the C++ codebase (or at least doesn't have to, it is open source ;)). All events will be written in ruby, which will then generate text files to be read by the engine.

So, one down, about two-and-a-half to go. I can live with that.

C++ - 2/9/10

I always find it funny when people (oldtimers, I'm talking to you :D) argue that C will always be superior to C++. I love C, and I love C++. They are both great languages that do what they're supposed to well.

But I love C++ more.

Now, this is much different than arguing, say C++ vs. Java. The reason being C++ is C AND MORE. It's like getting a complementary appetizer with your meal. You don't have to eat it or pay extra for it, but it's there if you want to use it. I can write a program in C and compile it with g++ and I'll get a valid program without errors (or at least without errors pertaining to the C/C++ difference - only Linus doesn't make errors). This is why I don't get the argument. Let's say I'm writing, I dunno, a graphics engine ;). The code starts getting bigger and bigger as more functionality is added. It works, but it starts becoming a hastle to, say read in a script. You soon start needing to call multiple functions all with their own variables needing to be declared just to complete that one action.

This is when you should put down the main course and take a bite out of some of that extra free stuff.

I know, I know. Long metaphor, get to the point, right? Well, I've again started over the codebase (this is the third time for those of you keeping count). This time using some of those great things called classes. I know! crazy right? Classes in C++? Who would of thought?!

So yeah go check out the subversion repositorty (or better yet, the trac page) to see the new changes. I have also update the downloads page. I've got a bit to go before I'll have recreated all the code I had before, but it'll be worth it...I think.

One last note: as I get my linux situation worked out, I can't be sure what system I'll be compiling on, so as far as binary's go, only expect a Mac OS Snow Leopard build to be released until further notice.

Excuses Excuses - 2/5/10

Remember in that last post where I named all this great stuff I would be accomplishing in the next week? I didn't do any of it! But I've got an excuse, even if it is a consequence of my stupidity :). I have a Macbook Pro. And while I like OS X, I don't particularly like developing on it. When I'm coding, I like to get down to the basics, where I feel like I have more control. And that was my reasoning for backing up the files on my bootcamp partition and swapping XP for Arch Linux, which I found doesn't like my Macbook. So during my struggle getting it installed, I messed up my partition tables...

And well, you can guess the story from there ;)

So i am in the process of getting my computer back to normal, at which time I will promptly start work again on the engine.

Gotta love linux.

(A Real) Website is Up - 1/30/10

I know the engine is currently still VERY young and VERY incomplete, but I was getting tired of the ugly, disorganized, straight-html-with-no-styling-whatsoever page that was serving as this project's "web site" before, so I quickly threw this up this afternoon. I'm still working on the scripting to graphics communication, but will hopefully soon move on to the more graphical (and fun) side of the engine.