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 <ideasma...@gmail.com>: > On Fri, Jan 22, 2016 at 4:34 PM, Owen Hogarth II <gurenc...@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 <ho...@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@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 > > > > -- > - Campbell > _______________________________________________ > 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