[Bf-committers] Node system for game logic

2011-05-26 Thread Sjoerd de Vries
Hi everyone,

I would like to present to you the hive system, a working node system for
game logic (and other things).

It implements the complete list of goals of Benoit's Nodal Logic proposal:
http://wiki.blender.org/index.php/Dev:Source/GameEngine/NodalLogic
Some of the design decisions are different, but the hive system contains all
of his features.

The source code is available under GPL:

http://launchpad.net/hivesystem

It also has a GUI for editing hivemaps (node graphs). It is basic and quirky
but it works.
This makes it possible for non-programmers to create and modify game logic.
I have made a screencast that demonstrates this for a simple 3D scene:

http://launchpad.net/hivesystem/trunk/0.7/+download/screencast.swf

New nodes and hives can easily be built in Python. However, the coding style
is different from normal Python scripts.
I have written a long manual with many examples. If anything is unclear,
please tell me.

The main limitation is that there are no bindings yet to the BGE, only to
Panda3D.
It still needs to be ported to Python3.2, and I am not very familiar with
the BGE source code.
Also, a lot of important nodes (sound, physics, mouse picking, networking)
are still missing.

I am looking forward to join forces with Benoit and Sven, and with anyone
else who is interested.
Any feedback is welcome!

cheers

Sjoerd
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


[Bf-committers] Node system for game logic

2011-05-27 Thread Sergey Kurdakov
Hi Sjoerd

>A compilation of a covered work with other separate and independent
>works

it applies only if it is separate products are put together - such that
engine uses only data,
produced by you hive-system and not any code.
if it is 'linked' - such that there is a code connection (python or not) -
GPL does not allow to run together.
So exactly "Adding GameKit bindings" is prohibited by GPL for non GPL code
if only these binding are not using
network interface or pipes
( but still even in this case GPL might apply - if it can be proved that the
game cannot run
without GPL component - so that it cannot be replaced with something else).

LGPL, though, might be OK in this case.

Regards
Sergey
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


[Bf-committers] Node system for game logic

2011-05-28 Thread Sergey Kurdakov
Hi Sjoerd,

so if you want games based on hive system to be GPL - then
there is no problem with your GPL position.

It is just - there are far too fewer games with GPL license ( maybe three
orders of magnitude), than all games,
and those successful GPL games do live OK without hive.

so, unlike Blender - which could be used to create models, your system will
have
quite narrow use. And of cause, it is your choice.

But then, even with Blender gamedev ecosystem - you could not expect much
interest.
GPL games are developed for fun and not because there is a good system to
use, commercial or
quasi commercial developers ( free or demo games etc ) - do search for
efficient solutions.



as for LGPL/BSD discussion
then even GameKit depens on LGPL Orgre3D and other LGPL libs,
so any additional LGPL lib will not change much ( even if GameKit is
licensed BSD
 - it already has LGPL libs being included )

Regards
Sergey
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


[Bf-committers] Node system for game logic

2011-05-28 Thread Sergey Kurdakov
Hi Erwin

>Ogre uses the MIT license.

unfortunately someone misinformed you
http://www.ogre3d.org/licensing

Regards
Sergey
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


[Bf-committers] Node system for game logic

2011-05-28 Thread Sergey Kurdakov
Hi All,

some info to put together

from initial idea to have nodal logic

http://wiki.blender.org/index.php/Dev:Source/GameEngine/NodalLogic

>Python access to game engine features is incomplete; you cannot get away
from using some logic bricks, possibly >inefficiently, if you want to create
a 'only python' application.


http://blenderartists.org/forum/showthread.php?216269-Dev-BGE-Components-Branch-Created

resolves it.

then on

>Logic brick access to game engine features is incomplete; you cannot get
away from using some Python code if you want to >implement a complex logic.

the problem is that is hardly resolvable in general, though there are
different attempts.

http://webdocs.cs.ualberta.ca/~script/ ( no code but there is AI editor
which generates ingame code btw this is a way to go -
the generated code from any stand alone node system will be free from any
restrictions ( because it is produced result ) )

http://msdl.cs.mcgill.ca/projects/projects/AToM3/ just as initial proposal -
starts from modeling general systems ( similar systems  usually save their
results in high level language such as Modelica ( which in turn can be
translated to python or c/c++).

so - first objection (from NodalLogic proposal ) which was risen ** - that
game system of Blender cannot live without blocks - is resolvable,
the general solution to program games in graphics - has many attempts - but
no satisfactory solution  - still it is always possible to translate
anything which was developed with blocks to code, which then, can be
integrated into any game.

Regards
Sergey
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


[Bf-committers] Node system for game logic

2011-05-28 Thread Sergey Kurdakov
Hi Erwin.

my bad.

yes all components of GameKit are non lgpl or gpl.

and Orgre from ver 1.7 is also MIT

but still

if it is possible to render game logic in blocks - it is possible to write
code exporter.
so if the system is actually that good - to overcome it's GPl nature is not
difficult

Regards
Sergey

On Sat, May 28, 2011 at 4:58 PM, Sergey Kurdakov wrote:

> Hi Erwin
>
>
> >Ogre uses the MIT license.
>
> unfortunately someone misinformed you
> http://www.ogre3d.org/licensing
>
> Regards
> Sergey
>
>
>
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


[Bf-committers] Node system for game logic

2011-05-28 Thread Sergey Kurdakov
Hi,

it looks like design questions of GameKit should somehow be considered
separately.

currently, as it is mentioned

>with some basic Lua
>bindings.

 GameKit has no python system, but lua one.
also while hive system has some merits - it is not the only approach,

I like this one
http://sourceforge.net/apps/mediawiki/delta3d-extras/index.php?title=DtEntityfor
example
( based on series of articles
http://t-machine.org/index.php/2007/09/03/entity-systems-are-the-future-of-mmog-development-part-1/
so this system is really designed with  games in mind - not just connect
objects - maybe I missed something - but hive system is just overuse of
python capabilities to bring objects together but if it can streamline game
creation still to be seen )

so which system to use and how still is a question to be discussed.

But the narrow part of the story is interface to program games ( there are
tools out there such as GameMaker - but it adds nothing special over current
Blender capabilities ).

If there is working system on interface front to program games without
coding
 - and this  main question is resolved - then other questions can be
resolved.

now the point is if without interface hive system fits into Blender Game
engine and if it has potential to fulfill NodeLogic proposal or NodeLogic
can be coded with the use of Moguri system + some ideas from
http://sourceforge.net/apps/mediawiki/delta3d-extras/index.php?title=DtEntity).

as we seen - Ogre was re licensed - but before it proved to be viable system
in a first place


Regards
Sergey



On Sat, May 28, 2011 at 6:32 PM, Xavier Thomas  wrote:

> Hi,
>
> Speeking of gamekit, it has a node logic system MIT lisenced. You can
> take a look at that if you want, it is C++ with some basic Lua
> bindings.
>
> Having a code generator that generates code from node tree is
> definitely possible but more complicated than simply evaluating a
> tree. There is code that does that (GPL unfortunately) to compile the
> material node tree to GLSL code for viewport and game engine.
>
> Xavier
>
>
>
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


[Bf-committers] Node system for game logic

2011-05-28 Thread Sergey Kurdakov
Hi,

just to complete series of links for components idea:

https://github.com/caseman/grease is a python component system

tutorials are here:

https://github.com/caseman/grease/tree/master/doc/tutorial

while targeting quite different aspects of design - still initial intention
from
http://t-machine.org/index.php/2007/09/03/entity-systems-are-the-future-of-mmog-development-part-1/

>No programmer required for designers to modify game logic

are possible to implement

more attempts to implement the same pattern:

http://www.gamadu.com/artemis/
https://github.com/tdavies/Ember

http://flohofwoe.blogspot.com/2007/11/nebula3s-application-layer-provides.html
and code
http://code.google.com/p/nebula3/


Regards
Sergey
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Node system for game logic

2011-05-26 Thread Dalai Felinto
Hi Sjoerd,

two quick questions:
1) any plans to license it in a non-viral license (e.g. BSD)?

2) how well does it do in terms of performance? If I remember correctly one
of the good points of Benoit's proposal was the overall structure of C++
code wrapped around Python but without necessarily running much Python
code(at least to reduce the overhead of dealing with python types for any
manipulation).

3) does it work for programmers as well?
This layer of abstraction is also what permit programmers to access through
a programming API (i.e. Python, but it would be lovely to see Lua supported
as well) the same functionality that is available graphically .


Thanks for sharing your project, it seems quite interesting (I need to look
at it properly later though ;).
Dalai
--
www.dalaifelinto.com
@dfelinto

2011/5/26 Sjoerd de Vries 

> Hi everyone,
>
> I would like to present to you the hive system, a working node system for
> game logic (and other things).
>
> It implements the complete list of goals of Benoit's Nodal Logic proposal:
> http://wiki.blender.org/index.php/Dev:Source/GameEngine/NodalLogic
> Some of the design decisions are different, but the hive system contains
> all
> of his features.
>
> The source code is available under GPL:
>
> http://launchpad.net/hivesystem
>
> It also has a GUI for editing hivemaps (node graphs). It is basic and
> quirky
> but it works.
> This makes it possible for non-programmers to create and modify game logic.
> I have made a screencast that demonstrates this for a simple 3D scene:
>
> http://launchpad.net/hivesystem/trunk/0.7/+download/screencast.swf
>
> New nodes and hives can easily be built in Python. However, the coding
> style
> is different from normal Python scripts.
> I have written a long manual with many examples. If anything is unclear,
> please tell me.
>
> The main limitation is that there are no bindings yet to the BGE, only to
> Panda3D.
> It still needs to be ported to Python3.2, and I am not very familiar with
> the BGE source code.
> Also, a lot of important nodes (sound, physics, mouse picking, networking)
> are still missing.
>
> I am looking forward to join forces with Benoit and Sven, and with anyone
> else who is interested.
> Any feedback is welcome!
>
> cheers
>
> Sjoerd
> ___
> Bf-committers mailing list
> Bf-committers@blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
>
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Node system for game logic

2011-05-26 Thread Sjoerd de Vries
> Dalai Felinto dfelinto at gmail.com
> Thu May 26 16:22:39 CEST 2011
>
> Hi Sjoerd,
>
> two quick questions:

> 1) any plans to license it in a non-viral license (e.g. BSD)?
> 2) how well does it do in terms of performance?
> 3) does it work for programmers as well?

That's three questions :-)
And very good questions, too. I am afraid that the answers aren't so quick...

> 1) any plans to license it in a non-viral license (e.g. BSD)?

In principle, yes. BSD is too promiscuous for my taste, but something
like the LGPL would be an option.
However, there are two big complications.
The first is that any software that is designed to run on top of the
BGE must be GPL because the BGE is GPL. I will work around this by
making multiple backends, a GPL backend for the BGE and non-BGE
backends for Panda3D, Python-Ogre, ...
The second concern is that the hive system seriously blurs the
distinction between code and data. The (L)GPL is not very well suited
to deal with data.
I have some ideas about a custom license, but some discussion would be in order.

> 2) how well does it do in terms of performance? If I remember correctly one
> of the good points of Benoit's proposal was the overall structure of C++
> code wrapped around Python but without necessarily running much Python
> code(at least to reduce the overhead of dealing with python types for any
> manipulation).

Start-up time can be as much as ten seconds, because all nodes are
connected before the hive is fired up. I have some ideas how to slash
it, but a few seconds will always be there.
As for run-time performance: I haven't tested it thoroughly yet, but I
expect no problems, because the nodes call each other directly (no
coordination engine). I don't expect much difference with a vanilla
Python port of your game logic.
Some overhead is added by the exception handling wrappers, but not very much.
In any case, for both start-up and runtime, a JIT such as psyco or
pypy should double or triple the performance.

If pure Python isn't quick enough, I have some plans to interface with
nodes implemented in C++, using boost and ctypes.
Finally, compiling the whole hive in Cython should also be possible:
the static typing of the connections should be very beneficial.

> 3) does it work for programmers as well?
> This layer of abstraction is also what permit programmers to access through
> a programming API (i.e. Python, but it would be lovely to see Lua supported
> as well) the same functionality that is available graphically .

Yes!
I also don't like toy systems that give you some nodes and that's it.
Creating your own nodes and interfacing with existing Python code is
essential.
In addition, you can also create entire hives using the Python class
statement, instead of visually.

What would you like to have for Lua support?
Modifying the node's internal state with a couple of Lua statements
should be easy enough with a good Python-to-Lua bridge. I can add that
to the system if you want.
Making calls into a Lua engine that has direct bindings to the BGE
(i.e. bypassing the hive system) would be much much harder.

>
> Thanks for sharing your project, it seems quite interesting (I need to look
> at it properly later though ;).

Thanks! :)
If you have any questions, don't hesitate to ask!

cheers

Sjoerd

> Dalai
> --
> www.dalaifelinto.com
> @dfelinto
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Node system for game logic

2011-05-26 Thread Tom M
On Thu, May 26, 2011 at 8:07 AM, Sjoerd de Vries  wrote:

>> 1) any plans to license it in a non-viral license (e.g. BSD)?
>
> In principle, yes. BSD is too promiscuous for my taste, but something
> like the LGPL would be an option.

The reason for the question is that moving to GameKit, which is BSD
licensed is a longer term possibility.

The plan that the GE dev team decided on was to BSD or dual BSD/GPL
license all future code to make such a transition possible.

The benefits of this are that GameKit is extremely cross platform -
and can be ported and distributed to platforms that GPLed/LGPLed code
cannot be used

Ie iOS, Xbox 360, PS3, Wii, Nintendo DS, distributed via Apples App
store, as well as Android and supporting our existing platforms
(Linux, Windows, OS X).

LetterRip
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Node system for game logic

2011-05-27 Thread Sjoerd de Vries
> Message: 4
> Date: Thu, 26 May 2011 09:00:51 -0800
> From: Tom M 
> Subject: Re: [Bf-committers] Node system for game logic
> To: bf-blender developers 
> Message-ID: 
> Content-Type: text/plain; charset=ISO-8859-1
>
> On Thu, May 26, 2011 at 8:07 AM, Sjoerd de Vries  wrote:
>

Hi LetterRip,

>>> 1) any plans to license it in a non-viral license (e.g. BSD)?
>>
>> In principle, yes. BSD is too promiscuous for my taste, but something
>> like the LGPL would be an option.
>
> The reason for the question is that moving to GameKit, which is BSD
> licensed is a longer term possibility.
>
> The plan that the GE dev team decided on was to BSD or dual BSD/GPL
> license all future code to make such a transition possible.
>
> The benefits of this are that GameKit is extremely cross platform -
> and can be ported and distributed to platforms that GPLed/LGPLed code
> cannot be used

I don't believe that the GPL would be viral in this context. The hive
system is in Python, it runs on top on whatever rendering engine you
provide. Adding GameKit bindings to the hive system doesn't make
GameKit a derived product of the hive system, so the GPL wouldn't
apply to GameKit.
I *think* that a Python GPL component like the hive system could even
be redistributed with GameKit, and any GameKit-based game wouldn't
need to be GPL as long as the game doesn't actually use
(Python-import) the GPL component.

from the GPL license:

"A compilation of a covered work with other separate and independent
works, [which are not by their nature extensions of the covered work,
and which are not combined with it such as to form a larger program,
in or on a volume of a storage or distribution medium,] is called an
“aggregate” [if the compilation and its resulting copyright are not
used to limit the access or legal rights of the compilation's users
beyond what the individual works permit]. Inclusion of a covered work
in an aggregate does not cause this License to apply to the other
parts of the aggregate."

cheers

Sjoerd
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Node system for game logic

2011-05-27 Thread Tom M
On Fri, May 27, 2011 at 11:27 AM, Sjoerd de Vries  wrote:

> I don't believe that the GPL would be viral in this context.

MS, Sony, Nintendo, and Apple (they are slightly more flexible)
basically have forbidden any open source code that is not one of

1) BSD, Zlib, MIT, Apache

LGPL/GPL simply are not allowed.  For the purpose of this discussion
it doesn't matter to the developer whether the code is viral, he
simply cannot use the code at all if he wants to develop for
Wii/DS/Xbox 360/PS3/PSP/iOS.

LetterRip
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Node system for game logic

2011-05-28 Thread Sjoerd de Vries
> Message: 6
> Date: Fri, 27 May 2011 23:57:42 +0400
> From: Sergey Kurdakov 
>>A compilation of a covered work with other separate and independent
>>works
>
> it applies only if it is separate products are put together - such that
> engine uses only data,
> produced by you hive-system and not any code.
> if it is 'linked' - such that there is a code connection (python or not) -
> GPL does not allow to run together.
> So exactly "Adding GameKit bindings" is prohibited by GPL for non GPL code
> if only these binding are not using
> network interface or pipes
> ( but still even in this case GPL might apply - if it can be proved that the
> game cannot run
> without GPL component - so that it cannot be replaced with something else).
>
> LGPL, though, might be OK in this case.

Hi Sergey and LetterRip,

I think there is a misunderstanding here.
Obviously, GameKit runs fine without the hive system.
Also, even with GameKit bindings, the hive system would run fine
without GameKit, as long as there is another backend available (e.g
Panda3D).
Therefore, bundling them together would be an aggregate, not a derived
product. The hive system wouldn't "infect" the GameKit with a GPL
license. I see no reason why GameKit bindings would be forbidden by
the GPL.

A game that *uses* the hivesystem or any other GPL component would
become GPL, but this has nothing to do with GameKit.

> From: Tom M 
> Subject: Re: [Bf-committers] Node system for game logic
> To: bf-blender developers 
> Message-ID: 
> Content-Type: text/plain; charset=ISO-8859-1
>
> On Fri, May 27, 2011 at 11:27 AM, Sjoerd de Vries  wrote:
>
>> I don't believe that the GPL would be viral in this context.
>
> MS, Sony, Nintendo, and Apple (they are slightly more flexible)
> basically have forbidden any open source code that is not one of
>
> 1) BSD, Zlib, MIT, Apache
>
> LGPL/GPL simply are not allowed.  For the purpose of this discussion
> it doesn't matter to the developer whether the code is viral, he
> simply cannot use the code at all if he wants to develop for
> Wii/DS/Xbox 360/PS3/PSP/iOS.
>
> LetterRip

I am not sure if this is relevant. On how many of those console
systems does Python actually work?

I am not principally against closed-source applications that use the
hive system, but that is another discussion completely.

I think you don't need to worry: bundling GameKit with some GPL
components should not "infect" GameKit, it would only affect those
games that actually use (link with) those GPL components.

cheers

Sjoerd
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Node system for game logic

2011-05-28 Thread Erwin Coumans
Statically linking of games against the Hives logic system is the whole point 
of discussion.

Gamekit exclusively uses permissive licenses, such as BSD, MIT, zlib etc, so if 
you insist on (l)gpl, your logic system is less attractive for BGE too, because 
BGE devs want to move towards BSD or dual BSD/(l)gpl.

What is your problem with BSD license?

Thanks,
Erwin

Sent from my iPhone

On May 28, 2011, at 8:03 PM, Sjoerd de Vries  wrote:

>> Message: 6
>> Date: Fri, 27 May 2011 23:57:42 +0400
>> From: Sergey Kurdakov 
>>> A compilation of a covered work with other separate and independent
>>> works
>> 
>> it applies only if it is separate products are put together - such that
>> engine uses only data,
>> produced by you hive-system and not any code.
>> if it is 'linked' - such that there is a code connection (python or not) -
>> GPL does not allow to run together.
>> So exactly "Adding GameKit bindings" is prohibited by GPL for non GPL code
>> if only these binding are not using
>> network interface or pipes
>> ( but still even in this case GPL might apply - if it can be proved that the
>> game cannot run
>> without GPL component - so that it cannot be replaced with something else).
>> 
>> LGPL, though, might be OK in this case.
> 
> Hi Sergey and LetterRip,
> 
> I think there is a misunderstanding here.
> Obviously, GameKit runs fine without the hive system.
> Also, even with GameKit bindings, the hive system would run fine
> without GameKit, as long as there is another backend available (e.g
> Panda3D).
> Therefore, bundling them together would be an aggregate, not a derived
> product. The hive system wouldn't "infect" the GameKit with a GPL
> license. I see no reason why GameKit bindings would be forbidden by
> the GPL.
> 
> A game that *uses* the hivesystem or any other GPL component would
> become GPL, but this has nothing to do with GameKit.
> 
>> From: Tom M 
>> Subject: Re: [Bf-committers] Node system for game logic
>> To: bf-blender developers 
>> Message-ID: 
>> Content-Type: text/plain; charset=ISO-8859-1
>> 
>> On Fri, May 27, 2011 at 11:27 AM, Sjoerd de Vries  wrote:
>> 
>>> I don't believe that the GPL would be viral in this context.
>> 
>> MS, Sony, Nintendo, and Apple (they are slightly more flexible)
>> basically have forbidden any open source code that is not one of
>> 
>> 1) BSD, Zlib, MIT, Apache
>> 
>> LGPL/GPL simply are not allowed.  For the purpose of this discussion
>> it doesn't matter to the developer whether the code is viral, he
>> simply cannot use the code at all if he wants to develop for
>> Wii/DS/Xbox 360/PS3/PSP/iOS.
>> 
>> LetterRip
> 
> I am not sure if this is relevant. On how many of those console
> systems does Python actually work?
> 
> I am not principally against closed-source applications that use the
> hive system, but that is another discussion completely.
> 
> I think you don't need to worry: bundling GameKit with some GPL
> components should not "infect" GameKit, it would only affect those
> games that actually use (link with) those GPL components.
> 
> cheers
> 
> Sjoerd
> ___
> Bf-committers mailing list
> Bf-committers@blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Node system for game logic

2011-05-28 Thread Erwin Coumans
Gamekit relies on zero (l)gpl libs. Ogre uses the MIT license.

Sent from my iPhone

On May 28, 2011, at 9:28 PM, Sergey Kurdakov  wrote:

> Hi Sjoerd,
> 
> so if you want games based on hive system to be GPL - then
> there is no problem with your GPL position.
> 
> It is just - there are far too fewer games with GPL license ( maybe three
> orders of magnitude), than all games,
> and those successful GPL games do live OK without hive.
> 
> so, unlike Blender - which could be used to create models, your system will
> have
> quite narrow use. And of cause, it is your choice.
> 
> But then, even with Blender gamedev ecosystem - you could not expect much
> interest.
> GPL games are developed for fun and not because there is a good system to
> use, commercial or
> quasi commercial developers ( free or demo games etc ) - do search for
> efficient solutions.
> 
> 
> 
> as for LGPL/BSD discussion
> then even GameKit depens on LGPL Orgre3D and other LGPL libs,
> so any additional LGPL lib will not change much ( even if GameKit is
> licensed BSD
> - it already has LGPL libs being included )
> 
> Regards
> Sergey
> ___
> Bf-committers mailing list
> Bf-committers@blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Node system for game logic

2011-05-28 Thread Xavier Thomas
Hi,

Speeking of gamekit, it has a node logic system MIT lisenced. You can
take a look at that if you want, it is C++ with some basic Lua
bindings.

Having a code generator that generates code from node tree is
definitely possible but more complicated than simply evaluating a
tree. There is code that does that (GPL unfortunately) to compile the
material node tree to GLSL code for viewport and game engine.

Xavier


2011/5/28 Sergey Kurdakov :
> Hi Erwin.
>
> my bad.
>
> yes all components of GameKit are non lgpl or gpl.
>
> and Orgre from ver 1.7 is also MIT
>
> but still
>
> if it is possible to render game logic in blocks - it is possible to write
> code exporter.
> so if the system is actually that good - to overcome it's GPl nature is not
> difficult
>
> Regards
> Sergey
>
> On Sat, May 28, 2011 at 4:58 PM, Sergey Kurdakov 
> wrote:
>
>> Hi Erwin
>>
>>
>> >Ogre uses the MIT license.
>>
>> unfortunately someone misinformed you
>> http://www.ogre3d.org/licensing
>>
>> Regards
>> Sergey
>>
>>
>>
> ___
> Bf-committers mailing list
> Bf-committers@blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
>
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Node system for game logic

2011-05-28 Thread Benoit Bolsee
Hi Sjoerd,

Thanks for sharing the hive system. I've started to read the
documentation and so far I'm impressed by what you have done. I already
have a good idea of the system but I still have to figure out how you
have achieved all the goals that I stated in my proposal. At some point
I will contact you when I know enough to not waste your time with stupid
questions.

As far as licensing is concerned, I would prefer if you go to a
BSD-style license but you should in any case take a firm and definitive
position quickly to cut short what seems to be an endless discussion on
licensing again ;-)

Regards,
Benoit

> 
> Message: 1
> Date: Thu, 26 May 2011 14:55:19 +0200
> From: Sjoerd de Vries 
> Subject: [Bf-committers] Node system for game logic
> To: bf-committers@blender.org
> Message-ID: 
> Content-Type: text/plain; charset=ISO-8859-1
> 
> Hi everyone,
> 
> I would like to present to you the hive system, a working 
> node system for game logic (and other things).
> 
> It implements the complete list of goals of Benoit's Nodal 
> Logic proposal: 
> http://wiki.blender.org/index.php/Dev:Source/GameEngine/NodalLogic
> Some of the design decisions are different, but the hive 
> system contains all of his features.
> 
> The source code is available under GPL:
> 
> http://launchpad.net/hivesystem
> 
> It also has a GUI for editing hivemaps (node graphs). It is 
> basic and quirky but it works. This makes it possible for 
> non-programmers to create and modify game logic. I have made 
> a screencast that demonstrates this for a simple 3D scene:
> 
> http://launchpad.net/hivesystem/trunk/0.7/+download/screencast.swf
> 
> New nodes and hives can easily be built in Python. However, 
> the coding style is different from normal Python scripts. I 
> have written a long manual with many examples. If anything is 
> unclear, please tell me.
> 
> The main limitation is that there are no bindings yet to the 
> BGE, only to Panda3D. It still needs to be ported to 
> Python3.2, and I am not very familiar with the BGE source 
> code. Also, a lot of important nodes (sound, physics, mouse 
> picking, networking) are still missing.
> 
> I am looking forward to join forces with Benoit and Sven, and 
> with anyone else who is interested. Any feedback is welcome!
> 
> cheers
> 
> Sjoerd
> 


___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Node system for game logic

2011-05-28 Thread Hart's Antler
The proposal at 
http://wiki.blender.org/index.php/Dev:Source/GameEngine/NodalLogic
is huge, great ideas, but maybe its overkill.

Nodes are cool, better than what we have now, but i think "Scratch-style" logic 
blocks would be simple and even more clear. http://scratch.mit.edu/

One issue i see is there are many changes at the C level that need to be made 
to leverage the current node interface.  Why not take a pure python approach, 
and use ctypes where needed?  If the UI is going to be general and compatible 
with other engines like Panada3d, etc.. it really should use a standard GUI 
toolkit like Qt or Gtk.

-brett


--- On Sat, 5/28/11, Benoit Bolsee  wrote:

> From: Benoit Bolsee 
> Subject: Re: [Bf-committers] Node system for game logic
> To: bf-committers@blender.org
> Date: Saturday, 28 May, 2011, 9:49 AM
> Hi Sjoerd,
> 
> Thanks for sharing the hive system. I've started to read
> the
> documentation and so far I'm impressed by what you have
> done. I already
> have a good idea of the system but I still have to figure
> out how you
> have achieved all the goals that I stated in my proposal.
> At some point
> I will contact you when I know enough to not waste your
> time with stupid
> questions.
> 
> As far as licensing is concerned, I would prefer if you go
> to a
> BSD-style license but you should in any case take a firm
> and definitive
> position quickly to cut short what seems to be an endless
> discussion on
> licensing again ;-)
> 
> Regards,
> Benoit
> 
> > 
> > Message: 1
> > Date: Thu, 26 May 2011 14:55:19 +0200
> > From: Sjoerd de Vries 
> > Subject: [Bf-committers] Node system for game logic
> > To: bf-committers@blender.org
> > Message-ID: 
> > Content-Type: text/plain; charset=ISO-8859-1
> > 
> > Hi everyone,
> > 
> > I would like to present to you the hive system, a
> working 
> > node system for game logic (and other things).
> > 
> > It implements the complete list of goals of Benoit's
> Nodal 
> > Logic proposal: 
> > http://wiki.blender.org/index.php/Dev:Source/GameEngine/NodalLogic
> > Some of the design decisions are different, but the
> hive 
> > system contains all of his features.
> > 
> > The source code is available under GPL:
> > 
> > http://launchpad.net/hivesystem
> > 
> > It also has a GUI for editing hivemaps (node graphs).
> It is 
> > basic and quirky but it works. This makes it possible
> for 
> > non-programmers to create and modify game logic. I
> have made 
> > a screencast that demonstrates this for a simple 3D
> scene:
> > 
> > http://launchpad.net/hivesystem/trunk/0.7/+download/screencast.swf
> > 
> > New nodes and hives can easily be built in Python.
> However, 
> > the coding style is different from normal Python
> scripts. I 
> > have written a long manual with many examples. If
> anything is 
> > unclear, please tell me.
> > 
> > The main limitation is that there are no bindings yet
> to the 
> > BGE, only to Panda3D. It still needs to be ported to 
> > Python3.2, and I am not very familiar with the BGE
> source 
> > code. Also, a lot of important nodes (sound, physics,
> mouse 
> > picking, networking) are still missing.
> > 
> > I am looking forward to join forces with Benoit and
> Sven, and 
> > with anyone else who is interested. Any feedback is
> welcome!
> > 
> > cheers
> > 
> > Sjoerd
> > 
> 
> 
> ___
> Bf-committers mailing list
> Bf-committers@blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
> 
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Node system for game logic

2011-06-10 Thread Ton Roosendaal
Hi all (GE team!),

If I understand it correctly, the GSoC project for game logic will  
work on a 'proof of concept', designs and a proposal for future work  
on node editor implementation. Both Sven and Benoit have defined a  
couple of ways how to do this work, and I think that can happily move  
forward of course.

Based on reviews Benoit did for the Hive system, it does appear to me  
that Sjoerd already fully delivered such a system, although with some  
different internal design decisions. Benoit also stated in his review  
that the GSoC project shouldn't stop further evaluation or work on  
integration Hive at all. He was impressed with the current code &  
design.

For both projects, my own concern is mostly that I'm not so much  
interested in great code design (which is obvious ;) but about the  
possibilities to provide a great end-user experience for advanced  
control over editing logic for games. The GUI for it (node editor),  
the APIs for it (scripting), the ways things store and load, the ways  
how to keep things work and compatible, and especially speed (no  
startup times, no external files required) are all relevant  
integration topics for making decisions here.

I know it's a luxury, but not uncommon either to have people work in  
parallel on testing out their ideas. Therefore I'd propose to provide  
Sjoerd with a svn Hive branch, to allow him to further work on proof  
of concept (on integration level) and welcome him as part of the team  
with our support as well.

The discussion on BSD or GPL licensing I also don't need to continue  
here for now. There's too many unknowns now anyway, and I'm sure  
Sjoerd will be open to look into changing licenses once there's an  
opportunity for actual re-use of Hive in other projects.

In due time, after the summer, we then can check on what to do next!

Regards,

-Ton-


Ton Roosendaal  Blender Foundation   t...@blender.orgwww.blender.org
Blender Institute   Entrepotdok 57A  1018AD Amsterdam   The Netherlands

On 28 May, 2011, at 18:49, Benoit Bolsee wrote:

> Hi Sjoerd,
>
> Thanks for sharing the hive system. I've started to read the
> documentation and so far I'm impressed by what you have done. I  
> already
> have a good idea of the system but I still have to figure out how you
> have achieved all the goals that I stated in my proposal. At some  
> point
> I will contact you when I know enough to not waste your time with  
> stupid
> questions.
>
> As far as licensing is concerned, I would prefer if you go to a
> BSD-style license but you should in any case take a firm and  
> definitive
> position quickly to cut short what seems to be an endless discussion  
> on
> licensing again ;-)
>
> Regards,
> Benoit
>
>>
>> Message: 1
>> Date: Thu, 26 May 2011 14:55:19 +0200
>> From: Sjoerd de Vries 
>> Subject: [Bf-committers] Node system for game logic
>> To: bf-committers@blender.org
>> Message-ID: 
>> Content-Type: text/plain; charset=ISO-8859-1
>>
>> Hi everyone,
>>
>> I would like to present to you the hive system, a working
>> node system for game logic (and other things).
>>
>> It implements the complete list of goals of Benoit's Nodal
>> Logic proposal:
>> http://wiki.blender.org/index.php/Dev:Source/GameEngine/NodalLogic
>> Some of the design decisions are different, but the hive
>> system contains all of his features.
>>
>> The source code is available under GPL:
>>
>> http://launchpad.net/hivesystem
>>
>> It also has a GUI for editing hivemaps (node graphs). It is
>> basic and quirky but it works. This makes it possible for
>> non-programmers to create and modify game logic. I have made
>> a screencast that demonstrates this for a simple 3D scene:
>>
>> http://launchpad.net/hivesystem/trunk/0.7/+download/screencast.swf
>>
>> New nodes and hives can easily be built in Python. However,
>> the coding style is different from normal Python scripts. I
>> have written a long manual with many examples. If anything is
>> unclear, please tell me.
>>
>> The main limitation is that there are no bindings yet to the
>> BGE, only to Panda3D. It still needs to be ported to
>> Python3.2, and I am not very familiar with the BGE source
>> code. Also, a lot of important nodes (sound, physics, mouse
>> picking, networking) are still missing.
>>
>> I am looking forward to join forces with Benoit and Sven, and
>> with anyone else who is interested. Any feedback is welcome!
>>
>> cheers
>>
>> Sjoerd
>>
>
>
> ___
> Bf-committers mailing list
> Bf-committers@blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers

___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers


Re: [Bf-committers] Node system for game logic

2011-06-10 Thread Tom M
Ton,

sounds like a BSD runtime and GPL/LGPL node design tool was acceptable
to the the Hive creator, as well as other interested partys.

LetterRip

On Fri, Jun 10, 2011 at 2:21 AM, Ton Roosendaal  wrote:
> Hi all (GE team!),
>
> If I understand it correctly, the GSoC project for game logic will
> work on a 'proof of concept', designs and a proposal for future work
> on node editor implementation. Both Sven and Benoit have defined a
> couple of ways how to do this work, and I think that can happily move
> forward of course.
>
> Based on reviews Benoit did for the Hive system, it does appear to me
> that Sjoerd already fully delivered such a system, although with some
> different internal design decisions. Benoit also stated in his review
> that the GSoC project shouldn't stop further evaluation or work on
> integration Hive at all. He was impressed with the current code &
> design.
>
> For both projects, my own concern is mostly that I'm not so much
> interested in great code design (which is obvious ;) but about the
> possibilities to provide a great end-user experience for advanced
> control over editing logic for games. The GUI for it (node editor),
> the APIs for it (scripting), the ways things store and load, the ways
> how to keep things work and compatible, and especially speed (no
> startup times, no external files required) are all relevant
> integration topics for making decisions here.
>
> I know it's a luxury, but not uncommon either to have people work in
> parallel on testing out their ideas. Therefore I'd propose to provide
> Sjoerd with a svn Hive branch, to allow him to further work on proof
> of concept (on integration level) and welcome him as part of the team
> with our support as well.
>
> The discussion on BSD or GPL licensing I also don't need to continue
> here for now. There's too many unknowns now anyway, and I'm sure
> Sjoerd will be open to look into changing licenses once there's an
> opportunity for actual re-use of Hive in other projects.
>
> In due time, after the summer, we then can check on what to do next!
>
> Regards,
>
> -Ton-
>
> 
> Ton Roosendaal  Blender Foundation   t...@blender.org    www.blender.org
> Blender Institute   Entrepotdok 57A  1018AD Amsterdam   The Netherlands
>
> On 28 May, 2011, at 18:49, Benoit Bolsee wrote:
>
>> Hi Sjoerd,
>>
>> Thanks for sharing the hive system. I've started to read the
>> documentation and so far I'm impressed by what you have done. I
>> already
>> have a good idea of the system but I still have to figure out how you
>> have achieved all the goals that I stated in my proposal. At some
>> point
>> I will contact you when I know enough to not waste your time with
>> stupid
>> questions.
>>
>> As far as licensing is concerned, I would prefer if you go to a
>> BSD-style license but you should in any case take a firm and
>> definitive
>> position quickly to cut short what seems to be an endless discussion
>> on
>> licensing again ;-)
>>
>> Regards,
>> Benoit
>>
>>>
>>> Message: 1
>>> Date: Thu, 26 May 2011 14:55:19 +0200
>>> From: Sjoerd de Vries 
>>> Subject: [Bf-committers] Node system for game logic
>>> To: bf-committers@blender.org
>>> Message-ID: 
>>> Content-Type: text/plain; charset=ISO-8859-1
>>>
>>> Hi everyone,
>>>
>>> I would like to present to you the hive system, a working
>>> node system for game logic (and other things).
>>>
>>> It implements the complete list of goals of Benoit's Nodal
>>> Logic proposal:
>>> http://wiki.blender.org/index.php/Dev:Source/GameEngine/NodalLogic
>>> Some of the design decisions are different, but the hive
>>> system contains all of his features.
>>>
>>> The source code is available under GPL:
>>>
>>> http://launchpad.net/hivesystem
>>>
>>> It also has a GUI for editing hivemaps (node graphs). It is
>>> basic and quirky but it works. This makes it possible for
>>> non-programmers to create and modify game logic. I have made
>>> a screencast that demonstrates this for a simple 3D scene:
>>>
>>> http://launchpad.net/hivesystem/trunk/0.7/+download/screencast.swf
>>>
>>> New nodes and hives can easily be built in Python. However,
>>> the coding style is different from normal Python scripts. I
>>> have written a long manual with many examples. If anything is
>>> unclear

Re: [Bf-committers] Node system for game logic (Erwin Coumans)

2011-05-29 Thread Sjoerd de Vries
> Date: Sat, 28 May 2011 21:05:17 +0900
> From: Erwin Coumans 
> Subject: Re: [Bf-committers] Node system for game logic
> To: bf-blender developers 
> Message-ID: <9512dd7c-19c0-4a52-be84-aad9be68a...@gmail.com>
> Content-Type: text/plain;       charset=us-ascii
>

Hi Erwin,

> Statically linking of games against the Hives logic system is the whole point 
> of discussion.

As far as I understood, that was *not* the point of discussion.
Some people expressed concern about the "virality" of the hive system,
i.e. that it would force the GPL upon GameKit.
That is clearly not the case, I hope that this discussion is closed.

The license of the hive system (and games that use the hive system) is
a completely different discussion. Maybe this mailing list is not the
best place for that.
I have written down some thoughts on the hive system license on my
user page on the wiki:

http://wiki.blender.org/index.php/User:Sjoerd

Everyone is most welcome to provide their feedback and opinions there.

cheers

Sjoerd
___
Bf-committers mailing list
Bf-committers@blender.org
http://lists.blender.org/mailman/listinfo/bf-committers