2012 m. spalio 1 d., pirmadienis


I haven't worked much on the renderer project lately. A week back started figuring out what I needed from the engine and started working on it more seriously. I'll be rewriting most of the rendering code. The engine will now use octree world like the one seen in cube2 engine, check it out if you haven't seen it yet!
You can see my first attempt at building octree with some mesh data:

After I get materials ready, I'll probably do some code refactoring and continue working on octree world structure (probably will rewrite most of the stuff from scratch).

This might be a new start for the marrble project or something else :)

2012 m. vasario 15 d., trečiadienis


I haven't posted in a while and thought I could do this, since I don't feel like doing anything else at the moment. I've been working on another project for a while now. It's a rendering engine currently focused on opengl 2.0~. Hopefully I will be able to use it in this project after it's in a usable state.
Currently I have simple mesh buffer renderer using vertex arrays, soon will be implementing VBOs. Also supports lighting (up to 8 lights for now, since that should work on any hardware). Material system is currently really basic, allows texture blending using multitexture extension. Shadows not implemented yet and for now I think I don't really need them, as doing fixed function pipeline shadows is a bit performance hungry operation.

Why did I even start writing my own opengl rendering engine, I could have just used irrlicht, right? Well yes, I could, but for some reason I wanted to try out what I could achieve myself. I also wanted to understand a bit more how the whole rendering process goes. Besides reinventing the wheel is not that bad, you can tune it how ever you want and make it roll as you want it to :)

More info about the engine might be added sooner or later. Hopefully I'll get back to this project until the end of the year.. :D

2011 m. lapkričio 2 d., trečiadienis


I decided that I need to rewrite everything from scratch. I need to think of some design and make my code follow it, not just to "make something work". I don't know when I'll get started with it.

First thing on my list is custom gui for irrlicht. If I succeed with that and the code will look clean/good enough I'll try to rewrite my entity framework.

Though as I said before, it might take a while to get started.

2011 m. rugpjūčio 30 d., antradienis

Updated interface.

I've updated the interface a bit in the last few days. Now it uses tabs for component/entity properties which saves some space for maybe some other things. Also the gui now updates along with 3d world, so if you would move an object in 3d the gui would also get updated.

2011 m. liepos 30 d., šeštadienis

Entity editor coding started.

Now its only able to select entity from a list (see pic below), select one of its components(physics/graphics/...) and edit its properties.

Next things to code I think would be an entity creation "dialog". Easy to use way to add/remove components from gui. Ability to remove non default properties. And some tweaks on gui to make it look prettier.

2011 m. birželio 30 d., ketvirtadienis

Updates! :)

So I was doing some coding in a few past days and I've done some big changes in the framework.
Here is a list of what I can remember at the moment:
1) Rewritten properties. Now they are a bit more than just a container for any type. Two properties can share the same data and every property can have a callback when it gets changed(using boost signals v2 library for that).
2) I've made a type serializer external, so now when I change something in it, I don't need to recompile the whole project :)
3)Added string to value and value to string conversions which came in handy when coding a property editor.(which is still WIP).
4) Rewritten components a bit, now they use enums instead of strings to identify themselves. Also components are now grouped into component families. Each component family shares a base interface.
5) Entity serializer got updated. It looks a bit more cleaner and easier to maintain right now.

That should be it I think for now.
Next thing to write now is a Entity editor. I think that I will take a while to get to coding it though.

2011 m. gegužės 17 d., antradienis

Updates to framework

I've updated property class which is now a bit smaller but also more lightweight and easy to maintain for me. Also rewritten entity serializer/deserializer, even made it to save physics body's velocities (may be useful for saving game?). Also got rid of command system since it worked pretty slow. I think everything will communicate based on events and I might also make some sort of linking system so I could do the same chaining effect without too much overhead, only on load of the level  :)

Also wrote an InputReceiver which supports four key states (UP/PRESSED/DOWN/RELEASED), also supports double tapping in a defined interval of time (eg. 100ms).