sabato, settembre 02, 2006

Node Tree Coded!


it's a long time that I don't update this blog.
Ocelot development was slow down during these days.
I've worked on it in these two days so I've completed the mesh scene node class.
Just the time to make the camera class and I hope to release in some days the source code!


venerdì, agosto 18, 2006

Hierarchical system


I've planned a hierarchical system to use in the node hierarchy.
The scene graph is organized by an n-tree.
Each node can have n childrens with n as a variable value.

you can choiche if each children of a node can be world transformed by the father or not!

This allow the programmer to use the node hierarchy as he wishes.
If you need to put a weapon on a camera to create an FPS style view, you can add to the camera children list the weapon node pointer and enable the world transformation, so when you move the camera you also move the weapon.
but if you want to build a BSP tree scene graph, you need to store the nodes as a tree but you don't need to transform the coordinates of each node refering to the parent world transformation.
So if you want to do that you can disable for the nodes in the tree the flag of the hierarchical transformation.

I think this is very flexible!

INode interface W.I.P.


these days I'm busy! very busy!
I've only in these 2 days found just one or two hours to spend for the engine.

I've coded (I'll finish it this evening) the INode interface.
Probably in the week end I hope to implement a mesh node class.
If I complete this stage I'll release the first part of the source code on sourceforge!

In the plans I don't create a static scene manager where you can render all!
I give a system that allow you to render only the sub hierarchy you need. The system is not automatic but you can have some advantages.

But let's discuss these things in the next days!


lunedì, agosto 14, 2006

Test Version Released on SourceForge

I've released the test version of the engine on

I hope you want to test the first features and ask me questions or other things!

At moment to release sources I want to wait the beta version... now there are just few classes, but if I receive lot's of requests to publish the source I can upload it!



Some optimizations

I've made some optimizations on the mesh render method for the standard mesh class.
The optimization is that there are static members that mantain a trace of what renderer and what texture are previousely loaded, so when you ask to reload the same renderer or thexture, the engine automatically skip the process... simple and usefull ^_^

There is another optimization for the lighting flag... so I'm asking myself if is more fast the renderstate setting or is more fast the control and then probably a renderstate setting?
I think setting a flag is faster... so in this case I've skipped the control.

This morning I've coded the ocelot object that manage all the manager (mesh, texture and co).

I'm waiting for an answer of sourceforge... because I've sent a request to create a project for ocelot where I can release the first alpha classes of the engine to make you all able to test them!
It's a few part, just a texture, mesh and renderer manager, but there is a lots of work to do on them!

See ya

venerdì, agosto 11, 2006

Resolt some memory leaks

today I've coded something to enlarge the flexibility of a mesh management.
I've take just half an hour because I've made lots of debugging to correct some deallocation code that generate memory leaks in the mesh and texture class.

Test everything! and it seems to be OK!


mercoledì, agosto 09, 2006

Test Device : Success!

In these two days I've stopped the development to make some effect on irrlicht engine with the opengl.

Now I've made the test for the device loading...
As I've seen it's all ok!

Soon I hope to release a fist piece of the engine for test purposes.

domenica, agosto 06, 2006

Device Loading Coded!


In these two days I've stopped the development for forced relax! (I really need it ^_^ )

This evening I've restarted to code something for the engine.
I've coded the device creation class. I must test it and if it works correctly maybe I can build a release for makeing tests on textures and meshes! ^_^

This class only acquires the direct 3d 9 interface and creates the device.
You must previously initialize the window class and pass it.
Ocelot don't manage the window, you must do it in your own.

venerdì, agosto 04, 2006

Mesh Test #2 : Success

this morning I've made a test to see if the mesh storage system works correctly.
At first time he gives to me a segmentation fault... let's test all with the debugger!
I don't know why the system did't execute the mesh loading method!!
Several minutes ago.... I realize that I forget to call the function ^_^ :lol:

So I correct the error and test again!

All works as the aspectatives ^_^ .... (very happy)

Now I've decided to implement the node system... and probably the first release of the engine don't provide a visibility test... but only frustrum test.