Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Projects upgraded from Godot 4.1 import existing FBX files with ufbx #92100

Closed
Tracked by #91519
lyuma opened this issue May 19, 2024 · 1 comment
Closed
Tracked by #91519

Projects upgraded from Godot 4.1 import existing FBX files with ufbx #92100

lyuma opened this issue May 19, 2024 · 1 comment

Comments

@lyuma
Copy link
Contributor

lyuma commented May 19, 2024

Tested versions

  • Reproducible in 4.3dev6 / bd2300d

System information

Godot v4.3.beta (bd2300d) - Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3090 (NVIDIA; 31.0.15.3713) - Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz (16 Threads)

Issue description

ufbx and FBX2glTF contain several subtle differences which can break compatibility of scene inheritance / NodePaths when switching a scene from one to the other.

We have an "Importer" dropdown in the import dock, but it defaults to ufbx even for projects migrated from older versions of Godot.

Example project.godot:

config_version=5

[application]

config/name="AnimsTest"
run/main_scene="res://main.tscn"
config/features=PackedStringArray("4.1", "Forward Plus")
config/icon="res://icon.svg"
[remap]

importer="animation_library"
importer_version=1
type="AnimationLibrary"
uid="uid://2m8uxc0jjmqh"
path="res://.godot/imported/SpearAtk_1.FBX-523bf0676781974a7233c3f61daa2882.res"

[deps]

source_file="res://SpearAtk_1.FBX"
dest_files=["res://.godot/imported/SpearAtk_1.FBX-523bf0676781974a7233c3f61daa2882.res"]

[params]

nodes/root_type="Node3D"
nodes/root_name="Scene Root"
nodes/apply_root_scale=true
nodes/root_scale=1.0
meshes/ensure_tangents=true
meshes/generate_lods=true
meshes/create_shadow_meshes=true
meshes/light_baking=1
meshes/lightmap_texel_size=0.2
skins/use_named_skins=true
animation/import=true
animation/fps=30
animation/trimming=false
animation/remove_immutable_tracks=true
import_script/path=""
_subresources={}
gltf/embedded_image_handling=1

On a migrated project, it will have fbx/importer=1 if using FBX2glTF and fbx/importer=0 for ufbx. If fbx/importer is missing, we should treat as FBX2glTF, I think.

Steps to reproduce

  1. Open the attached project in a 4.3 build.
  2. Click a .FBX file.
  3. it will show importer = ufbx even though the project was created before ufbx was implemented.
  4. Hierarchy will be missing RootNode which will break NodePath references.

Minimal reproduction project (MRP)

https://github.com/godotengine/godot/files/12619311/AnimsTest.zip

@lyuma lyuma added this to the 4.3 milestone May 19, 2024
@lyuma lyuma self-assigned this May 19, 2024
@fire fire self-assigned this May 28, 2024
@lyuma
Copy link
Contributor Author

lyuma commented May 28, 2024

Fixed by #92197

@lyuma lyuma closed this as completed May 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants