[Bf-committers] blender as ui for game engine

Xavier Thomas xavier.thomas.1980 at gmail.com
Fri Jan 22 12:28:34 CET 2016


I you want a C++ library to read/write blender file:
https://github.com/gamekit-developers/gamekit/tree/master/Tools/FileTools
I can scan header (.h) files, like Blender DNA files to update the file
definition or create your own file format.


2016-01-22 4:49 GMT-02:00 Campbell Barton <ideasman42 at gmail.com>:

> On Fri, Jan 22, 2016 at 4:34 PM, Owen Hogarth II <gurenchan at gmail.com>
> wrote:
> > Before learning c I was most productive with java so I can understand
> also
> > my second platform after linux is android which mainly uses java.
> >
> > How much easier would it have been to just define a JNI interface to
> > blender's c DNA/ RNA data structures and deal with those exclusively
> > instead of generating .class files from blenders source.
> >
> > All of these issues are hinting at the root issue which blender is built
> on
> > c, it's core but it's been a bit neglected and now nobody wants to go
> into
> > the basement and clean out the cobwebs. Like you I understand how hard it
> > will be, i've been in blender c code base. It needs some work.
>
> What part of Blender's C core is neglected exactly?
>
> > I do believe that the best option is to turn the core of blender into a
> > library but to do that there's a lot of unwinding and a proper interface
> > that needs to be created. Something that doesn't break all that's on top,
> > think about it like renovating the interior of a building while the
> outside
> > stays the same. Although I really don't think it needs to take years
> unless
> > it falls into some committe where a bunch of people are arguing over what
> > to implement instead of just doing it. Sure it might take some time but
> > years, I doubt that.
>
> Turning Blender into a library can mean many different things,
> technically - when you build Blender as a Python module - this is a
> library (builds into `bpy.so` which is loaded dynamically).
> This is managed through some minor changes to the build and is kept as
> a build option for Python developers who find it handy.
>
> However the purpose of the "Blender" project is to:
>  "build a free and open source complete 3D creation pipeline for
> artists and small teams."
> see: https://www.blender.org/about/
>
> Its interesting to experiment using Blender as middle-ware for
> different tasks, we're not looking to prevent you from trying this.
>
> But *expecting* this will be accepted into master isn't reasonable
> either, that means we have to maintain public/private headers, deal
> with ABI breakages and generally having to support a new set of users
> (developers using the library).
>
> > That's why I sent this email out to the group to see how many people
> would
> > be willing to support me while I did this but the response seems less
> than
> > luke warm, although I might be totally wrong.
>
> As far as I can see the response just shows other developers would try
> solve this differently.
>
> > Best,
> > Owen
> >
> > On Fri, Jan 22, 2016 at 7:03 AM, homac <homac at strace.org> wrote:
> >
> >> Yes, I can! :D
> >>
> >> 1. I like coding.
> >> 2. I was looking for a library which reads .blend in Java without
> >>     crashing, provides access to materials, animations, lighting etc.
> >>     and has no dependencies on other libraries/game engines.
> >> 3. I was naive enough to think that it will be an easy task.
> >>     But I stuck to my plan and made it work.
> >>
> >> BTW: There have been discussions on a "Blender Plugin System" earlier
> >> (which is basically what you want, if I read you correctly). From my
> >> point of view, the baseline of this discussion is, that it is a lot of
> >> work and has multiple side-effects and therefore takes many years. Users
> >> will not get aware of the whole effort spend on the plugin system until
> >> the first thirdparty plugins appear which have features not available
> >> with python scripts or just better performance. But they will see, that
> >> progress of other projects slows down instead. Thus, as long as there
> >> are no trustworthy, reliable, experienced volunteers, who take the
> >> responsibility to work on it in cooperation with devs of the respective
> >> Blender submodules, for at least a couple of years, then there will be
> >> no plugin system.
> >>
> >> Again, that is my personal opinion!
> >>
> >> But a less intrusive solution to this is of course a C library for
> >> .blend files. Because, Blender's clipboard functionality (CTRL+C/CTRL+V)
> >> uses a .blend file as well. I'm not familiar with RNA, but I assume it
> >> is possible to trigger CTRL-C from python and then run an external
> >> program to process the data to override objects with the results
> >> afterwards. That is a basically a loosely coupled plugin (even though it
> >> runs in its own process).
> >>
> >> There are C libraries out there (e.g. assimp, don't know how stable) but
> >> the best solution would be to take the original source code + a proper
> >> interface and just link it into a library. (I talked to someone who had
> >> the same idea - don't remember his name, unfortunately.)
> >>
> >>
> >> Regards
> >>   Holger
> >>
> >>
> >> On 21/01/16 20:33, Owen Hogarth II wrote:
> >> > Blender is a massive code base and you've seen a lot of writing your
> java
> >> > .Blend library. I am interested in implementing it, it's more a
> >> refactoring
> >> > of the core blender c library which seems to put a lot of devs off,
> >> > although I do understand that code base is massive.
> >> >
> >> > I am going to do this project because I am tired of dealing with
> >> > proprietary and or closed source software especially as a game dev
> where
> >> > you'll be using a tool and the original devs disappear or just
> whatever.
> >> >
> >> > Holger in your emails to the list you made a statement to the effect
> that
> >> > you were getting off into the weeds writing that java .Blend library.
> Can
> >> > you share what was the original project that made you decide to write
> >> your
> >> > library?
> >> >
> >> > Best,
> >> > Owen
> >> >
> >>
> >>
> >> _______________________________________________
> >> Bf-committers mailing list
> >> Bf-committers at blender.org
> >> http://lists.blender.org/mailman/listinfo/bf-committers
> >>
> > _______________________________________________
> > Bf-committers mailing list
> > Bf-committers at blender.org
> > http://lists.blender.org/mailman/listinfo/bf-committers
>
>
>
> --
> - Campbell
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
>


More information about the Bf-committers mailing list