Wednesday, November 18, 2009

SVG, Scenegraph, and Arctographer

I'm working on implementing an SVG loader / renderer using ChristianK's resurrected scenegraph extension for rendering. Also, SirAlaran is working on a arc.x.level extension and tilemap editor, take a look here:

http://www.dsource.org/forums/viewtopic.php?t=4775&sid=7d989c8c6604ff0adcff4dbcb602d3f9

and 

http://www.hackerpilot.org/images/game_project/map_editor/screenshot-2009-11-15.jpeg

All in all, things are looking up. 


 

Tuesday, November 3, 2009

ArcLib v.03 GUI-Physics-Refactor release

Dear D community,

I would like to announce the latest release of ArcLib, Arc v.03 GUI-Physics-Refactor release. See http://www.dsource.org/projects/arclib/report/6 for full list of work done on this release.
The greatest changes were made to the structure of the project. Also includes the joystick support, camera, per pixel collision detection, sprite, and 2d lighting system.

See http://dmedia.dprogramming.com/?n=Tutorials.ArcIntro for getting started with D and ArcLib.
The real purpose of this release is that I finally got everything working and cleaned up in the trunk. I had ported the hybrid GUI, but don’t have time to support it because of the massive amount of code and my lack of familiarity with the system. I will also drop scenegraph unless others want me to keep it.

I will now create the stable branch.
- Clay

Introducing the arc.game Game class

Here is the first incarnation of the Game class. The idea behind the class is that the user will overload the this() class for init, process() for game loop, and shutdown() for shutdown code, and the Game class will handle the mundane details, such as input processing and window swapping. After creating their own class to extend the Game class and overloading the correct functions, the main loop simplifies to

// main entry
int main()
{
// initialize game
Game g = new MyGame("Arc
Graphics Primitives", Size.d640x480, false);

// loop game
g.loop();

// shutdown() is called by loop() after loop exits
return 0;
}

Here is an example I’ve modified to make use of the game class: http://svn.dsource.org/projects/arclib/trunk/examples/arc/draw.d

Of course, use of this class is optional. It may gain more features in the future, such as setting up game states and integration with the GUI. For now, its very simple.

Monday, November 2, 2009

Back from the Round-a-bout

I’m back from the round-about (South America -> Minnesota -> New Hampshire -> Finding Job)

I’ve been out for a while, but I’ve decided to clean up my project a little. I left it hanging with a broken subversion for too long.

Anyways, I want to get ArcLib fully integrated with eclipse, so I’ve installed the descent plug-in and have an eclipse project file. I plan to use xfbuild when I can get it to work, but right now its complaining about not having the –deps flag, and I can’t get the current hg clone to build. So I’m using reliable old dsss until I figure out how to replace it with xfbuild, and then I’ll figure out how to run xfbuild straight from eclipse.

I find eclipse to be an excellent editor if you have the memory to run it. It has useful features like global project search and replace with the option to use regex, and other neat features.

The news is this: The current trunk now compiles, yay! I haven’t checked to see if it works, but it should for the most part. Also, I’m not going to support hybrid and the scenegraph anymore, for the sheer amount of code they have, and my lack of familiarity with these systems. If I need, I may write a scenegraph or similar features from scratch in the future. Also, arclib should be able to be compilable with xfbuild, once I get that to work.

Speaking of Round-a-bouts, a nearby town decided to install two of them on the roads, with one on the highway. Both round-about's are design fails.