2008.02.04 22:16
Kikura is an engine.
It's a mix of a 3d engine, a scripting engine, a scene hierarchy engine, and a whole bunch of code and utils to put it all together. It could be called a game engine, but I'm not (currently) using it to write a game. And what the world (really) needs now, is yet another game engine.
I'm using it to work on an art project that I'm involved it. But I'm not writing it just for that. I plan to make it as flexible and as extensible as possible, with many more future projects in mind.
That's the reason that it supports (either currently, or in the works):
- Powerful scripting bindings with Lua.
- Complete shader-based rendering pipeline.
- Flexible and configurable rendering pathways.
- DV Video feed into a texture (in progress).
- Extensible Entities system.
- Flexible attribute system with serialization.
All that, in about 2 months code.
I'm very happy the way the engine is turning out, and am very happy with its current performance.
2008.01.30 00:42
I've made leaps and bounds on my engine! Just as well, it's kinda due already!
My engine has gone from been able to draw just 1 (hard-coded) textured cube to been able to draw VBO's with shaders!
I'm now adding the concept of renderpaths and a flexible rendering system. I've been very very inspired by the excellent Nebula Device! It's a great engine, very nice and flexible, and totally open source.
Today I fleshed out the stubs of the RenderPath structure, now I have to fill it in with actual render calls, which will be lots of fun.
2008.01.16 23:25
Well, not 100% complete, but, right now, it's very usable, so I'm quite happy with it. I don't really need any more core functionality than what I have.
I'll need more as the engine grows more, and becomes more matures, and I ask it to do tricker stuff, but as of now, I'm moving on to the next step.
2008.01.14 00:53
Progress!
Posted by talsit, Categories [ General , Code , Rant ][ (1) Comment ] | [ (0) Trackbacks ]
Well well.
I've been making pretty good progress the past few days.
I've met up with George & Greg, and it's now full steam ahead! Our exhibition (as yet, unnamed) opens at the UTS Gallery on the 11th of March, which means, lots of coding for the next couple of weeks! (I'm also working intensively on Pop for the next month or so!)
I've setup a wiki so I can keep track of things that i need to get done. Idealy I would have some sort of bugzilla+wiki combo or, even better, fogbugz installed. I find setting bugzilla a drone. Fogbugz was pretty sweet, but I couldn't make tasks dependant on other tasks, and anyway, it's not free, it's a 45-day trial :S.
Back to the progress.
I'm very happy the way that the scripting is working out. Scriptable derives from AttribHolder, and everything will be that way. I haven't quite worked out how to make all the math classes be scripted, but I'll see soon enough with that.
This system should be heaps more flexible than previous systems that I've written. You can now easily Push & Check classes, and the appropriate metatable will be automatically set. No more manually casting from a child to a parent. Also, when you call a function, the system will automatically check its parameters and will inform you if they're wrong, and which one is wrong, and what it should look like. More nicer now!
2007.11.28 23:56
Roadmap (or lack thereof)
Posted by talsit, Categories [ General , Code ][ (0) Comment ] | [ (0) Trackbacks ]
I just realised that I don't know what I'm supposed to be coding next!
You see, it goes like this. I start coding, then I decide what I need to code and I make it up as I go along.
THAT'S NO WAY TO CODE!!
So, I need a plan. First: basics, then: less basic.... hmmm, I think I need to give it some more thought.
So far, I've been doing the basics: setting up SVN, setting up my build system, then on to code:
- The Kernel
- The basic servers
- EventServer (KeyEvent)
- GraphicServer (only draws a single cube, forever)
- RegistryServer (the factory for entities)
- FileServer
- ScriptServer
- Attrib & AttribHolder (dynamic setting/getting of attributes from instances - very cute!)
- Utilities (string stuff, parsing, etc)
- Simple scripting
- Pre-compile step to automatically write code for lua glue, attrib registration, entity registration, etc.
That's not a bad start, I think, but I still haven't decided where to go next.
For starters, I need to finish the scripting part - to finish Scriptable and to link it in with my pre-compile step and the AttribHolder class. I also have to decide how I'm going to do all the math classes too.
Once that is done, there's no delaying it, I have to really do my graphics!
But that's for another post...
2007.11.28 18:14
Watch out!
If you use GPL code in your commercial project, someone will end up finding out!