Xbuf format – A developer friendly game exchange format for 3d data

This week, I work on assimp2xbuf to be able to load asset from an other source than blender. Assimp: Open Asset Import Library is an open source C++ library that can read lot of 3D format. That should help me to debug and to extend xbuf, like the model your share with me.

It’s really WIP.

duck.dae : a collada sample from assimp

hellknight.md5mesh from DOOM3 original, not the BGF version (with duck beetween foots)

source code : xbuf/assimp_xbuf code in java & Xtend

3 Likes

Oh very nice, having some pipeline for assImp would be very cool, as it greatly extends flexibility.

So are you actually using assimp as a library in your project, or are you just using it as a reference/inspiration? The former would be great, anything to save some work and get access to more import formats.

I using assimp as a library see xbuf/assimp_xbuf

The current follow (to improve)

duck.dae + images
| assimp_lib + assimp4java + assimp2xbuf 
=
duck.dae.xbuf + Textures/ *.img
| jme3_xbuf_loader + jme3_xbuf_viewer
=
the image above

PS: assimp_lib and assimp4java are without xbuf code, so you can reuse them (and improve them) into our own loader (assimp4java is not a binding only so it use the same naming convention than assimp, class start in lowercase, methode in uppercase,… it’s not a port and doesn’t include a java friendly layer).

As always, feebacks, PR,… are welcomes.

1 Like

Experimentation : Thurday 2015-08-06 @ 19:20-20:00 UTC (21:20-22:00 Paris Time), I’ll be on Twich to show current state and discuss about Xbuf in a more “realtime” interaction: http://www.twitch.tv/davidb31

EDIT: remove the auto insert of twich widget

i will try to not miss it

twitch live demo BEGIN…END :frowning:

erf…wanted to join but completely forgot.
You’ll have a hard time with that kind of comunication format to be honest.
You’d better make a short video so people could see it on their own schedule.

@nehon, I’ll try both, twitch could provide interaction with question, like how do you do … ? is it possible … ? why ?

I’ll retry next week.

For next week i would suggest to do it on youtube, i don’t know if it’s just my issue but twitch streams are really unstable for me.

Ok, next we’ll try youtube

Oh ha, didn’t read in time that there was some stuff going on. But i will definitly try it the next few days, as I have a few troubles getting a simple model with parent relation into jme from blenderr :slight_smile: Sounds like the perfect opportunity.

So i finally managed to test it.

For some reason it cannot be installed in my blender as the provided plugin, as it says somethinga bout missing stuff.
So i tried to clone the reprository and build it myself.
-> I suggest putting into the gradle settings a dummy bintray user, as without one the build fails.
The build itself seemed to work, but in eclipse using the gradle eclipse, it did not find one class?
Is the current version of the master working, or is this expected, and i should try another revision?

Which project do you clone (from https://github.com/xbuf/) ?

  • blender_io_xbuf nothing to build (clone or download zip, see README), tested with blender 2.74 and 2.75a
  • jme3_xbuf are jme3 projects

Thanks, for the feeback, I’ll add a default bintray_user to avoid issue on build.

the blender_io_xbuf was the one i tried to add the zip to blender, this time i managed to catch the error, before it disappeared. I have blender 2.75

jme3_xbuf:

Xbuf.xtend @ 211 -> src.getMeshesList() is undefined for the type Xbuf.

Also the XBuf class has several null pointer access errors. For example in the method cnv(Primitive) if v is null, you try to get the class of v.

blender_io_xbuf:

Tips: If you launch blender from from terminal, log should be print on terminal and easier to copy/paste.
I though I fixed this issue, what is the commit of your version : the latest is 1d39fe0c8a88bb7fe67f7a418ea7740aacfd745c

jme3_xbuf:
the master of jme3_xbuf depends of master of xbuf. I just publish 0.6.0, should fix your compilation issue.
I’ll add some null check, but Primitive should not be null (it’s a required field in xbuf).

Thanks for your time and feedback.

vlog: today I try youtube live, join at https://www.youtube.com/watch?v=ga_xsWr0pfQ and use the chat to ask question or request demo.

You can’t watch YouTube livestreams in Germany :frowning:

Can you see twich ? youtube send me some tips to improve the lag,… so I guess it should also improve for twich.

Yeah twitch is working fine if you manage to reduce the lag