[Soc-2011-dev] Weekly Progress Report #7 - Node Engine for the BGE

Sven von Brand svbrandl at gmail.com
Sat Jul 9 08:16:38 CEST 2011


= July 8th =
This is the weekly report of node engine project for the Blender Game Engine.
More information can be found here:
http://wiki.blender.org/index.php/User:Svbrand

== This week: ==

I made a small game that makes more complex actions than the proof of
concept and made a version completely without Python code using the
current logic bricks and a version that extends the
Component-Entity-Labelling idea using Python.
The python version allows:
 - Access of Sensor and Actuators Bricks through a set of boolean
properties by running a special labelling script on labelled Game
Objects
 - Some Dynamic labelling functions
 - Some multiple labelled "Entities"

What the examples show is that common logic in the old system without
the use of python is very hard to reuse, even within the project. It
is also evident that the proposed node engine's component oriented
nature would encourage to make reusable logic and make team work
easier.

We discussed the technical document with Benoit and during this week
Benoit finally gave me green light to start coding, I'm starting to
code, but it's been a slow start working on top of Benoit's code, but
I expect to be full on coding next week and having some low levels
result.

Both examples, an updated proof of concept and the current documents
can be found here:
http://wiki.blender.org/index.php/User:Svbrand/GSoC-2011-DesignDoc

== Next week: ==

Coding some of the main critical elements of the engine, including:
 - retrieval of node requirement for local data in node class definition
 - definition of component property
 - allocation of component and node private data in entities when a
component is attached to an entity
 - deallocation of the private data when the component is removed from
the entity
 - initialization of nodes when a component is attached to an entity
 - execution of nodes: the component will call the node function for
each entity waiting on the push input
 - retrieval of the private data when a node executes on a specific entity
 - state system: switching from graphs to graphs as state is switched
for an entity. This implies calling activation/deactivation function
for each node to allow them to deactivate sensors, reset internal
state, etc.

Small work on Documents will be done.

== Problems ==
There are some social movements in the country which took away some of
my working time and getting back into coding has been slower than
expected, but this situation should change next week as I get more
into coding.


More information about the Soc-2011-dev mailing list