Transitioning to a GLTF pipeline


I’m trying to transition to Blender 2.8 and with it, to the GLTF to BAM pipeline. In the past I have used YABEE and I set the Collide and collide-mask in game properties. As I am aware, this is not available in Blender 2.8 anymore. Using the built-in GLTF exporter in Blender I get no collisions at all (as I don’t believe it supports the needed format extension). When I use @Moguri 's blend2bam, I do get an automatically generated <Collide> { Polyset descend } (when I run bam2egg on the result) however, how can I specify the mask? Also I noticed here that rather than the collider being invisible, it is perfectly visible in pview. From what I can tell, I think blend2bam creating a duplicate collider mesh behind the scenes (not completely sure). If so, how can I only have the invisible collider? Am I doing something completely wrong here?

I’d prefer to set up my new pipeline now rather than hacking YABEE into somehow loading the Collide and collide-mask from Custom Properties and then changing my workflow again to go to GLTF at a later point.


If you don’t work with GLTF, then I can offer my 2.80 exporter. However, there is no support for materials and texture. I can add an option to specify the material for a specific polygon. But the material itself will need to be added manually to the file, then you can convert it to BAM.

Or you can programmatically specify the texture and material. But this is if your object has the same material and texture throughout the polygons.

I think I’m closer if I work from the blender2.8 YABEE fork and just tweak it for Custom properties. from what I’ve seen with it, it seems to work well enough with exporting simple baked textures on a Principled BSDF. However, thanks a lot for the offer!

The Blender UI exposes “collision layers” which are not as flexible as groups and masks, but they do get exported as such. However, digging into the panda3d-gltf source, I see that it doesn’t read the group and mask values, so I added created an issue for it here.

And, yes, panda3-gltf/blend2bam will create a set of ColisionPolygon instances for Triangle Mesh and Convex Hull shapes exported from Blender. However, these should not be visible as regular geometry and require debug visualizations to see.

I am glad to hear that the Blender 2.8 YABEE fork worked out for you. I am hoping to eventually add that as a pipeline option for blend2bam.

What I ended up doing is I modded the 2.8 YABEE fork to show an extra Panel in the Object properties dedicated to Panda3D stuff, such as collisions and later it should be relatively trivial to add billboard and others as some of the legacy models that I might have to work on need that.

I would love to explore the GLTF workflow but until the details are more fleshed out, I guess I gotta stick with the usual blender -> egg -> bam.

P.S. When I get a free second, I will post my changes to YABEE to GitHub to help others with the transition to Blender 2.8.