[Bf-committers] Request for Comments: Community-Driven Blender DNA Source Code Documentation
Ton Roosendaal
ton at blender.org
Mon Jan 4 20:52:22 CET 2016
Hi,
I noticed everyone ignored this mail! And that whilst there's something very cool here.
Here's a very sophisticated Blender DNA (and file) doc:
http://homac.cakelab.org/projects/JavaBlend/spec.html
I also find it very interesting to have a java .blend read/writer. Opens up opportunities in many areas! Check on it, recommended :)
Laters,
-Ton-
--------------------------------------------------------
Ton Roosendaal - ton at blender.org - www.blender.org
Chairman Blender Foundation - Producer Blender Institute
Entrepotdok 57A - 1018AD Amsterdam - The Netherlands
> On 17 Dec, 2015, at 20:30, homac <homac at strace.org> wrote:
>
> Hello There!
>
>
> As some of you know, I've implemented a toolkit, consisting of a code
> generator and a runtime I/O module to map the full Blender DNA to Java
> classes and allow reading and writing of files (cf. [1]).
>
> All that is fine but won't help a developer as long as he/she don't know
> the meaning of those generated classes and its member variables. Thus,
> they will need source code documentation, to be provided in the
> generated code.
>
> Since providing documentation to blender sources is not the right way, I
> came up with the idea to provide a documentation system, maintained
> separate from blender source. I picked that up in the Minecraft modder
> community, and thought it is a neat idea. There, it is basically a
> string table, which maps names of classes and their members to
> deobfuscated names (and the same for documentation, if I remember correct).
>
> I took that idea and made it a bit more flexible, and object oriented,
> added mechanisms such as merging and inheritance of documentation,
> combined it with a versioning system and took JSON as basic format.
>
> Then I've extracted available documentation from python API (thanks to
> Ton's advice) and source code using doxygen into my documentation system
> to fed it to my code generator. Both is not satisfying: Python API
> actually provides documentation of RNA, which is quite similar to DNA
> but still different, and the source code documentation is not addressed
> to API developers, since DNA is not intended to be available to them, I
> guess.
>
> Thus, I still have huge gaps in the documentation that have to be added
> manually, somehow, but I can't provide it on my own (I'm already way off
> track with this thing). To prevent wasting a lot of time of API
> developers by forcing everyone of them to read blender source code to
> figure out what they can actually do with the data, I'm planning to
> setup some kind of community-driven source code documentation system
> similar to a wiki, based on what I already have. My current idea is to
> just host the JSON files in a separate repository on github so everybody
> can easily share knowledge gained from studying blender source code by
> sending in pull requests [2].
>
> When I mentioned that idea on a forum, someone pointed out, that others,
> e.g. the C language guys, might be interested in the documentation as
> well and I should discuss it with you for more elaborated input. Since
> this is a bit of a longer story, and even non-blender developers may
> want to throw in their thoughts, I decided to post it on the mailing list.
>
> So, what do you think about the idea? Are you interested to support it
> from your side or even contribute to it? Or do you rather want to host
> it yourself?
>
> The documentation could even be turned into wiki entries, if you want,
> since it is in machine readable format.
>
>
>
>
> Regards
> Holger Machens
>
>
>
> [1] http://homac.cakelab.org/projects/JavaBlend/
> [2] https://help.github.com/articles/using-pull-requests/
>
>
> _______________________________________________
> 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