Giter Club home page Giter Club logo

Comments (20)

conradax avatar conradax commented on June 26, 2024 3

@blender-girl

proprietary format you say?!?

I think by "proprietary" he means there's no official .blend file specification, as you can why see here.
Since there's no specification, Godot developers need to take time to read blender's code to match with it,
which is basically make another wheel. 😢

If you want to import .blend files into Godot engine, then you must have the Blender installed to inspect or edit it, right?
So I think it make sense to specify a Blender path in Godot, and let Godot call Blender to convert format.
Thus Godot developers don't have to deal with .blend file format changes, they can save time to do more valuable things to improve Godot.

BTW I don't recommend using .blend file directly in Godot (or any other game engines).
Because ultimately Blender is an asset creation tool. .blend files contains a lot of unnecessary data for game engines.
(eg. mechanism bones in character rig)


Detailed .blend file structure, including python code to read it, from blender.org
https://developer.blender.org/diffusion/B/browse/master/doc/blender_file_format/

As it says this is for "blend-file-format used by a certain version of blender 2.5x"


Edit:
Sorry I didn't read carefully, I thought it about Godot loading .blend as binary.
But my point is the same:
It takes efforts to write a general purpose exporter.
We already have glTF.

from godot-blender-exporter.

YuriSizov avatar YuriSizov commented on June 26, 2024 1

@blender-girl Godot 4 has native .blend file support, and in general the preferred way to work with Godot and Blender is to use GLTF (which .blend file support internally relies on). This custom file format is for the most part deprecated.

from godot-blender-exporter.

Calinou avatar Calinou commented on June 26, 2024

Is Blender 3.4 supported by the exporter?

Try it and see 🙂

This exporter isn't actively maintained, so we can't guarantee it'll work with recent Blender versions. Most people are using glTF export nowadays.

from godot-blender-exporter.

 avatar commented on June 26, 2024

I don't understand why you make an exporter especially to make working with Godot easier and then ... not maintain it anymore?

So if I find problems with Blender 3.4, they won't be fixed too?

from godot-blender-exporter.

Calinou avatar Calinou commented on June 26, 2024

I don't understand why you make an exporter especially to make working with Godot easier and then ... not maintain it anymore?

Blender's glTF export has improved a lot since this exporter was created. Also, using a standard format should be preferred over a Godot-specific format when possible.

So if I find problems with Blender 3.4, they won't be fixed too?

Issues may be fixed by volunteer contributors, but interest in this add-on has generally decreased over the years. This means there's no ETA for fixing issues in this exporter.

from godot-blender-exporter.

 avatar commented on June 26, 2024

It doesn't work in Godot 4.0 beta 12
After exporting into a godot project and clicking the escn file, I get "error opening scene"

from godot-blender-exporter.

 avatar commented on June 26, 2024

OK but I still don't understand.
If Godot 4 has .blend file support , why should I export it to GLTF?

How can I load a .blend file directly into Godot 4? Are there documentation for this?

from godot-blender-exporter.

Calinou avatar Calinou commented on June 26, 2024

If Godot 4 has .blend file support , why should I export it to GLTF?

Not everyone working on your project may have Blender installed.

How can I load a .blend file directly into Godot 4? Are there documentation for this?

Specify a path to a Blender executable (3.0 or later) in the Editor Settings, then drag-and-drop .blend files in your project like you'd do with glTF files. There's no specific manual page for it yet, but it'll be mentioned in the documentation eventually.
Edit: Done: godotengine/godot-docs#6603

from godot-blender-exporter.

 avatar commented on June 26, 2024

Specify a path to a Blender executable (3.0 or later) in the Editor Settings, then drag-and-drop .blend files in your project like you'd do with glTF files. There's no specific manual page for it yet, but it'll be mentioned in the documentation eventually. Edit: Done: godotengine/godot-docs#6603

Why does Godot needs to know my Blender executable? It just can read the .blend file because this file has all information?
I can't understand this :(

from godot-blender-exporter.

YuriSizov avatar YuriSizov commented on June 26, 2024

@blender-girl .blend is a proprietary format and Godot doesn't know how to parse it. Even if we were to reverse-engineer it and learn how to read it, that would be prone to breakage, because Blender can change that format at any point as they see fit without any obligation to 3rd party tools.

So the way it works is Godot uses your Blender installation to open .blend and save it as GLTF and import GLTF, which it knows how to. This all happens seamlessly, in the background. You just use .blend directly in the Godot editor. Unity, for example, does the same (but via FBX, I think).

from godot-blender-exporter.

 avatar commented on June 26, 2024

proprietary format you say?!?
Blender is open source, including the file format, the code to read and write .blend files is all there and FREE...
Blender's goal is to be open source in anything including any file formats, released under GNU GPL.
You really know what you are talking about?

Detailed .blend file structure, including python code to read it, from blender.org

https://developer.blender.org/diffusion/B/browse/master/doc/blender_file_format/

from godot-blender-exporter.

Calinou avatar Calinou commented on June 26, 2024

@blender-girl I have to remind you that we have a Code of Conduct. Please stay constructive.

BTW I don't recommend using .blend file directly in Godot (or any other game engines).
Because ultimately Blender is an asset creation tool. .blend files contains a lot of unnecessary data for game engines.
(eg. mechanism bones in character rig)

Regardless of which scene format you use as a source, exported projects will never contain the source files directly (or even exported glTF files). Instead, the PCK will contain Godot's own mesh and animation formats.

from godot-blender-exporter.

maksad1git avatar maksad1git commented on June 26, 2024

Hi

Is Blender 3.4 supported by the exporter?

If u want Godot to support .blend import using Blender 3.x for example 3.4.1, u have to:

from godot-blender-exporter.

Calinou avatar Calinou commented on June 26, 2024

@maksad1git There's no need to install Blender 3.0.0 before installing Blender 3.4.1. You can install Blender 3.4.1 directly 🙂

from godot-blender-exporter.

maksad1git avatar maksad1git commented on June 26, 2024

@maksad1git There's no need to install Blender 3.0.0 before installing Blender 3.4.1. You can install Blender 3.4.1 directly 🙂

Tested double time man. Not working for me without 3.0 after the first time path changing. If i set path to 3.4, it just does nothing. After changing to 3.0 it works, and also from now i can change to any version above 3.0 and it still works.

from godot-blender-exporter.

Uradamus avatar Uradamus commented on June 26, 2024

It's a real shame this got abandoned. It worked really well for 3.x and since I've been having endless troubles with the GLTF path for getting animation libraries with custom rigs working I was hoping this might have been an alternative route to get those in. Oh well, it was nice while it lasted, guess another GSoC project bites the dust, heh.

from godot-blender-exporter.

Jason0214 avatar Jason0214 commented on June 26, 2024

It's a real shame this got abandoned. It worked really well for 3.x and since I've been having endless troubles with the GLTF path for getting animation libraries with custom rigs working I was hoping this might have been an alternative route to get those in. Oh well, it was nice while it lasted, guess another GSoC project bites the dust, heh.

I feel sorry to hear this. As people stated above "interest in this add-on has generally decreased over the years" (you can partially blame this on the poor maintenance, I take that).
For the issue you are having, does the native .blend file support (#418 (comment)) help?

from godot-blender-exporter.

Uradamus avatar Uradamus commented on June 26, 2024

Considering the "native" .blend support is just a wrapper for launching Blender in the background and exporting a GLTF using the default settings, it wouldn't make any difference at all. By the looks of it GLTF and OBJ are the only viable formats with this gone and the BetterCollada addon in an equal state of abandonment.

So I guess I'm mostly abandoning Godot for now, at least for my 3D projects, until the asset pipeline is improved. It's a real shame as I do love the engine over all, but I've wasted over a week and a half now trying to get the animation library setup to work with a custom rig that doesn't match well to the humanoid profile in the bone map setup. And the GLTF importer keeps mangling the rig, leaving out several bones and adding a few that don't belong.

And due to the nature of the project, remaking an old PSX game using ripped assets from the original game, I can't really share the files that are having issues without putting Godot's foundation in a weird legal gray area, so making a ticket about it is pretty pointless as it will get ignored without example files for the problem. Sorry to dump on you, I know this isn't the place for this. Just frustrated over this one area you expect to be rock solid for 3D games to even be possible to be a total mess that derails projects and wastes weeks of effort. It makes me want to consider stuff like UPBGE just so I can avoid having to deal with import/export issues, lol.

from godot-blender-exporter.

dodgyville avatar dodgyville commented on June 26, 2024

from godot-blender-exporter.

Uradamus avatar Uradamus commented on June 26, 2024

It seems the visual issues I was experiencing is something that is already known. It seems the issue is that GLTF doesn't offer any way to record bone lengths, since not all 3D packages support the concept of bone length, so they opted to just not include it at all. So the bones are technically all there, but several of them at the end of their chains are 0 length. Also what appears to be extra bones added is just Godot's (arguably incorrect) way of visualizing bones with multiple disconnected children, such as you might have with the collar bones and thighs. So even though some spots look like 3 bones, they are still just the one bone with multiple tails going off to each child. So even though they look ugly and incorrect, they should still function properly.

But this was one area that I recall your add-on being a lot better, since the rigs we brought in through it all looked correct with proper lengths for all the bones back in 3.x. Either the Blender GLTF exporter needs an option to generate leaf bones on export (something they've had a ticket for for ages now and don't seem interested in addressing) or maybe some sort of script setup can be done that could dump armature info from Blender and the output can be used to reconstruct the armature to look correct on a reimported file. But doesn't seem to be a priority for anyone to fix on either side, so I'm guessing the current state will persist for some time.

Still no idea why the animation library refuses to pair up with characters with identical copies of the same custom rig though. That will still take time to figure out, might actually have to go digging through all the old tickets about the new animation features for 4.x and maybe even go through the source code to make sense of what the heck is happening. There is basically zero documentation or tutorial support on the custom rig use case, since everything was done around the idea of using Mixamo apparently. But I just don't have the energy or drive for it anymore, at least not just yet, still pretty burnt out from all this.

from godot-blender-exporter.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.