Exporting from Blender: A Quick-Reference

He uses YABEE as he is using an older version of Blender
Newer versions require blend2bam

EDIT: YABEE Doesn’t work properly on newer blender versions.
EDIT2: PRPEE might be another option, but blend2bam is recommended.

1 Like

Not a problem. :slight_smile:

It’s essentially because I’ve been using YABEE since before blend2bam became the recommended exporter. (I honestly don’t recall whether blend2bam was at all available when I started using YABEE.)

As a result, for one thing I’m more familiar with YABEE. But perhaps more saliently, my main project’s pipeline is centred around YABEE–in particular a version that I’ve modified slightly. Switching now would mean a major upheaval to that pipeline.

Exactly. Because…

As far as I’m aware, no, I’m afraid.

This is, I imagine, the reason that YABEE doesn’t work on newer versions of Blender: those newer versions introduced changes that broke YABEE, and there wasn’t someone willing to update it.

(Aside from the developer of PRPEE, but that has other issues to my understanding, as noted above.)

Update, and the 2nd option on the list worked - gltf export from Blender and the gltf-viewer!

It was insanely easy 1) export from Blender 2) test with gltf-viewer ./mymesh.gltf 3) You can preview the animation and mesh in a window.

The character also had a diffuse and bump map, so I’m surprised it worked so easily.

2 Likes

A quick bump to note that I’ve edited the original post.

Specifically, I’ve changed the given recommended pipeline from “blend2bam” to “glTF”, and added a few more points on those two options, I believe.

blend2bam makes use of Blender’s gltf exporter and panda3d-gltf. However, it does a few extra things like picking ideal settings for the glTF exporter. This is why it’s generally recommended over doing the glTF export manually. I consider blend2bam to be mature, and I have been using it successfully in game jams. However, I understand that there are corners missing, and I encourage people to file issues on GitHub.

1 Like

Hmm, I see.

To clarify, some of these changes in my first post above came about due to discussion in this thread:

That said, and as I mentioned in that thread, my understanding is that blend2bam exports an entire scene; as far as I’ve gathered, there’s no way to export just a specific object or set of objects.

Beyond that, there was a recent example and discussion of there being difficulty in exporting an animated object that consists of multiple meshes. This seems to work when using the gltf exporter alone.

And finally, I’m a little dubious of recommending that new users work with a command-line-only tool–such tools, I feel, can be a little more confusing than GUI-based tools for users not already familiar with command-line work. (And less straightforward even for those who are.)

I do hear you on the picking of ideal settings. Could you elaborate on what it does here, please?

All that said, I do want more discussion on this matter! There’s a lot that I don’t yet know on this matter, I feel, and I’m currently going by the input of only a few people, I fear!

The settings that blend2bam sets are here. Some of the key ones are disabling Y-up exporting (to avoid potential axis-conversion errors on export and import) and sampling animations. Exporting tangents is nice for normal maps in simplepbr. blend2bam also supports exporting physics shapes since it can inject extra data in to the glTF data that the exporter emits.

As for not being able to select objects, I can see how that would mess up some workflows. I have not run into that myself yet, but that does not mean it is not a valid workflow. I will give it some thought.

On ease of use for new users, I recommend they also look at pman which will automatically convert assets for use in Panda3D applications when running the application. Also, Panda3D is already pretty command-line focused with all of it’s tools (e.g., pstats, all of the x2bam tools, running Python applications, etc.). As such, I find adding another CLI tool into the mix does not really disrupt things.

Also, thanks for your discussion on this matter. It’s great to get some more feedback and figure out how to make these tools work for more people!

Ah, thank you! :slight_smile:

Those do indeed look useful!

Thinking of simplepbr, and as somewhat of a side-question, is there an option to use a non-PBR pipeline? Just old-fashioned materials?

(I don’t use PBR, and am dubious of its artistic universality.)

Indeed.

For one thing, I know that I’ve found it rather useful–especially when I’ve had a fair few assets–to keep related assets in a single Blender-file.

And for another, I think that I’ve found that it can be handy at times to be able to export only part of a level. For two examples, one may want to test specific elements, to split up larger levels into multiple sections for quicker loading.

By the way, if I may add a “wishlist item”–something that YABEE didn’t have–I’d like to have the ability to nominate specific Blender-actions to export. That would make it rather easier to have multiple Actors in a single Blender-file, I do think!

The thing is, most of those command-line tools can be accessed in non-command-line ways, or are rarely used.

For example, Python can be run at a button-press when using an IDE (and I would recommend that new users employ an IDE). Similarly, YABEE at least had the option to automatically run PView on export.

And if we’re using a specific exporter, then the “x2bam” tools needn’t be employed. (I’m not sure that I’ve ever run them manually.)

As to PStats, it’s a single-word command, with no options to complicate matters.

Thus I don’t think that a new user need deal with all that much command-line usage in Panda.

Interesting–I don’t think that I was aware of this tool. Thank you for the link! :slight_smile:

Honestly, thank you in turn! It’s great to have more input and discussion of this–and especially from someone working directly on one of the exporters!

Would it be possible to get this thread pinned, please?

I’ve seen a few posts recently by users who might have been aided by this thread, and having it be pinned to the top of the forum might make it more likely that new users will spot it.

One thing I don’t understand is why you mention PRPEE again.

Before mentioning any third-party exporter, it must pass tests and be recognized by the community, as well as recommended formally through the web manual.

However, your post duplicates the page:
https://docs.panda3d.org/1.10/python/tools/model-export/converting-from-blender#converting-from-blender

Which is essentially not necessary.

People seem to keep finding out about it, so I feel that it’s worth describing mentioning its qualities–and giving warning of its limitations. Otherwise people may not be aware of those matters when deciding whether to use it.

I don’t see the same information on that page as I have here–or vice versa. Plus there’s no mention of PRPEE there. And finally, I suspect that people are more likely to notice this sort of information here than in the manual.

However, I’m not sure that you know its limitations, you said in the post that it may or may not work.
So what is the essence of your review about this? Why mention something that is not recommended.

I’m basing my review on the various things that I’ve read about PRPEE here on this forum. It’s second-hand, true, but there’s enough of it that I feel that I can write as I have above.

So that people know that it’s not recommended. As I said, people seem to keep finding it, and if its limitations are not expressed to them, they may not know about said limitations. Hence, I imagine, at least some of the various threads that we’ve had in which people have reported having problems when using PRPEE.

This scheme does not work. So people will find out about it outside of the forum, YouTube, github, and so on, your post. At the same time, they are happy to ignore the official guidance, which is bad.

You’re also essentially promoting it by mentioning that it might work in some cases. People begin to hope for this case and take advantage of it.

I’m not convinced that this is true. And I’d rather try and fail than not try at all.

If they are so, then my post seems unlikely to change that. And further, even if a given person is likely to ignore official guidance, they may nevertheless be open to peer-guidance.

But, as you and I have both said, people are finding out about it anyway. Thus “security through obscurity” doesn’t seem to work. Better, then, to attempt to inform people so that they have more knowledge on which to base their decisions.

Right now, a fair few people seem to be under the impression that it works for the general case, not just some cases. Having them hope that their case is one of the exceptions implies that they’re aware that it might not, which seems like an improvement to me.

Then, I think we will call @You on PRPEE issues as an expert.

I think that you’re rather over-stating my position. There’s a lot of ground between “knowing nothing at all, and thus having nothing to say” and “claiming to be an expert”.

To report on what I’ve read here seems to me to be neither claiming expertise nor over-reaching.

The whole pain in using this exporter is that there is no person who could advise on its application. The PRPEE developer himself does not want to or cannot do this.

However, you still insist on reporting PRPEE as an option for blender.

Because it does exist–and thus is something that might be reported on–and because people keep looking at it as an option–and thus I want to warn people about it.

In fact, there are others. Logically, it is necessary to mention them as well.

However, it is easier to adhere to the rules, official export tools and third-party recognized as working.

I don’t think they need to be mentioned either. However, as an alternative, we can consider the fork from Maxwell175

kergalym tried to distance PRPEE from panda on the advice of rdb, he changed the name and made a note for RP.