[Bf-committers] BGE Node-based logic GSoC proposal

joe joeedh at gmail.com
Mon Mar 26 08:50:11 CEST 2007


I would reccommend logging onto #blendercoders at irc.freenode.net .
that's the primary dev chat channel for blender.

Joe

On 3/24/07, jorge s <segroj at gmail.com> wrote:
>
>
> Hello,
>
>  Here's my proposal for review. I need feedback from developers, specially
> from Robert Holcomb (node refactor), Erwin Columans (bullet and BGE
> mantainer) and Charlie C. (Echo plugin).
>
>  I'm very very sorry for submiting this so late, as we have only one day and
> half to discuss this.
>
>
>  ABSTRACT
>  This proposal defines a logic system for the Blender game engine (BGE)
> based on interconnected nodes which will be (mostly) Python scripts.
>
>  This system is intended to address several limitations in the current
> engine logic brick system. With logic bricks it's very easy to do some
> things such moving an object when a key is pressed, but it's rather
> difficult and tedious to do things like rotating the camera proportionally
> to mouse movement, requiring several lines of Python. Such Python scripts
> are diffcult to reuse and depends of connections and sensor/actuator names.
>
>  Python nodes can have any number of inputs and outputs of several types,
> are easily defined as a Python class, add a great deal of flexibility and
> are easy to reuse and extend. It allows to easily create more complex
> systems such an action dependency structure. Each node has a function whose
> arguments are the input values and return value is a tuple with the outputs.
> The way they are executed is in an automatically generated Python script
> with all the node functions in the appropiate order.
>
>  This project has the following parts:
>   * Importing Python nodes into Blender nodes UI (this may need coordination
> with the current node UI refactor).
>   * Exporting node connections into a Python script.
>   * Doing needed Python bindings for using the game engine sensors and
> actuators.
>   * Writing basic nodes for use with those bindings.
>   * Load/save funcionality and legacy importing.
>  And finally (altough this may not enter the GSoC timespan):
>   * Improving Blender nodes UI: selective node hiding and automatic
> organization.
>
>  I've done a Python script that showcases the node import and export
> features:
>
>  http://pixelements.es/jorge/gsoc/nodetest.tar.gz
>
>  (Read the nodegui.py file)
>  (Note that this scipt don't implement some ideas as the 'Enable' input,
> explained in the proposal)
>
>  Here's the entire, very detailed proposal. Please, check it out!
>  http://pixelements.es/jorge/gsoc/bge_nodes_proposal.txt
>
>  The final version will be shorter as GSoC only allows 7500 chars.
>
>
>
>
> Sincerely,
>
>  Jorge Segovia
>
>
>
>  segroj at gmail.com
>
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at projects.blender.org
> http://projects.blender.org/mailman/listinfo/bf-committers
>
>


More information about the Bf-committers mailing list