mirror of
https://github.com/godotengine/godot-tests.git
synced 2025-12-31 13:48:10 +03:00
Merge pull request #23 from lyuma/add_glb
Add skeleton parenting test cases.
This commit is contained in:
8
.gitignore
vendored
8
.gitignore
vendored
@@ -1,8 +1,4 @@
|
||||
|
||||
tests/gltf_export/.import/
|
||||
|
||||
tests/blend_export/.import/
|
||||
|
||||
tests/blend_export/.godot/imported/
|
||||
.godot
|
||||
.import
|
||||
|
||||
tests/blend_export/**/*.import
|
||||
|
||||
304
tests/gltf_skeleton_tests/TestModels.tscn
Normal file
304
tests/gltf_skeleton_tests/TestModels.tscn
Normal file
@@ -0,0 +1,304 @@
|
||||
[gd_scene load_steps=10 format=2]
|
||||
|
||||
[ext_resource path="res://gltf_tests/modified_bone_animation_test.glb" type="PackedScene" id=1]
|
||||
[ext_resource path="res://gltf_tests/NestedSkeletonReproCaseV2Animated.glb" type="PackedScene" id=2]
|
||||
[ext_resource path="res://gltf_tests/duplicate_skinned_mesh_combined.glb" type="PackedScene" id=3]
|
||||
[ext_resource path="res://gltf_tests/MeshSkinnedToItselfAndOthersV2.glb" type="PackedScene" id=4]
|
||||
[ext_resource path="res://gltf_tests/MeshSkinnedToItselfAndOthersV1x.glb" type="PackedScene" id=5]
|
||||
[ext_resource path="res://gltf_tests/MeshSkinnedToItselfAndOthers.glb" type="PackedScene" id=6]
|
||||
[ext_resource path="res://gltf_tests/MeshSkinnedToItself.glb" type="PackedScene" id=7]
|
||||
[ext_resource path="res://gltf_tests/MeshSkinnedToItselfAndOthersV2WithTail.glb" type="PackedScene" id=8]
|
||||
[ext_resource path="res://gltf_tests/NestedSkeletonReproV3.glb" type="PackedScene" id=9]
|
||||
[ext_resource path="res://gltf_tests/NestedSkeletonReproCaseV2WithBody.glb" type="PackedScene" id=10]
|
||||
[ext_resource path="res://gltf_tests/NestedSkeletonReproCase_renamemesh.glb" type="PackedScene" id=11]
|
||||
[ext_resource path="res://gltf_tests/DirectParentedSkeletons.glb" type="PackedScene" id=12]
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayA_01"]
|
||||
filters = []
|
||||
animation = &"SpinningCubesV2"
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayA_02"]
|
||||
filters = []
|
||||
animation = &"SpinningCubesV2"
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayA_03"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayA_04"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachine" id="AutoplayA"]
|
||||
states/state_1/node = SubResource( "AutoplayA_01" )
|
||||
states/state_2/node = SubResource( "AutoplayA_02" )
|
||||
transitions = [&"state_1", &"state_2", SubResource( "AutoplayA_03" ), &"state_2", &"state_1", SubResource( "AutoplayA_04" )]
|
||||
start_node = "state_1"
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayB_01"]
|
||||
filters = []
|
||||
animation = &"ArmatureAnimation"
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayB_02"]
|
||||
filters = []
|
||||
animation = &"ArmatureAnimation"
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayB_03"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayB_04"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachine" id="AutoplayB"]
|
||||
states/state_1/node = SubResource( "AutoplayB_01" )
|
||||
states/state_2/node = SubResource( "AutoplayB_02" )
|
||||
transitions = [&"state_1", &"state_2", SubResource( "AutoplayB_03" ), &"state_2", &"state_1", SubResource( "AutoplayB_04" )]
|
||||
start_node = "state_1"
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayC_01"]
|
||||
filters = []
|
||||
animation = &"CrazyAnimation"
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayC_02"]
|
||||
filters = []
|
||||
animation = &"CrazyAnimation"
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayC_03"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayC_04"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachine" id="AutoplayC"]
|
||||
states/state_1/node = SubResource( "AutoplayC_01" )
|
||||
states/state_2/node = SubResource( "AutoplayC_02" )
|
||||
transitions = [&"state_1", &"state_2", SubResource( "AutoplayC_03" ), &"state_2", &"state_1", SubResource( "AutoplayC_04" )]
|
||||
start_node = "state_1"
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayD_01"]
|
||||
filters = []
|
||||
animation = &"SpinningCubesV2"
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayD_02"]
|
||||
filters = []
|
||||
animation = &"SpinningCubesV2"
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayD_03"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayD_04"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachine" id="AutoplayD"]
|
||||
states/state_1/node = SubResource( "AutoplayD_01" )
|
||||
states/state_2/node = SubResource( "AutoplayD_02" )
|
||||
transitions = [&"state_1", &"state_2", SubResource( "AutoplayD_03" ), &"state_2", &"state_1", SubResource( "AutoplayD_04" )]
|
||||
start_node = "state_1"
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayE_01"]
|
||||
filters = []
|
||||
animation = &"SpinningCubes"
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayE_02"]
|
||||
filters = []
|
||||
animation = &"SpinningCubes"
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayE_03"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayE_04"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachine" id="AutoplayE"]
|
||||
states/state_1/node = SubResource( "AutoplayE_01" )
|
||||
states/state_2/node = SubResource( "AutoplayE_02" )
|
||||
transitions = [&"state_1", &"state_2", SubResource( "AutoplayE_03" ), &"state_2", &"state_1", SubResource( "AutoplayE_04" )]
|
||||
start_node = "state_1"
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayF_01"]
|
||||
filters = []
|
||||
animation = &"SpinningCubesV2"
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayF_02"]
|
||||
filters = []
|
||||
animation = &"SpinningCubesV2"
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayF_03"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayF_04"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachine" id="AutoplayF"]
|
||||
states/state_1/node = SubResource( "AutoplayF_01" )
|
||||
states/state_2/node = SubResource( "AutoplayF_02" )
|
||||
transitions = [&"state_1", &"state_2", SubResource( "AutoplayF_03" ), &"state_2", &"state_1", SubResource( "AutoplayF_04" )]
|
||||
start_node = "state_1"
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayG_01"]
|
||||
filters = []
|
||||
animation = &"BendCylinders"
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayG_02"]
|
||||
filters = []
|
||||
animation = &"BendCylinders"
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayG_03"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayG_04"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachine" id="AutoplayG"]
|
||||
states/state_1/node = SubResource( "AutoplayG_01" )
|
||||
states/state_2/node = SubResource( "AutoplayG_02" )
|
||||
transitions = [&"state_1", &"state_2", SubResource( "AutoplayG_03" ), &"state_2", &"state_1", SubResource( "AutoplayG_04" )]
|
||||
start_node = "state_1"
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayH_01"]
|
||||
filters = []
|
||||
animation = &"CrazyAnimation"
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayH_02"]
|
||||
filters = []
|
||||
animation = &"CrazyAnimation"
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayH_03"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayH_04"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachine" id="AutoplayH"]
|
||||
states/state_1/node = SubResource( "AutoplayH_01" )
|
||||
states/state_2/node = SubResource( "AutoplayH_02" )
|
||||
transitions = [&"state_1", &"state_2", SubResource( "AutoplayH_03" ), &"state_2", &"state_1", SubResource( "AutoplayH_04" )]
|
||||
start_node = "state_1"
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayI_01"]
|
||||
filters = []
|
||||
animation = &"ArmatureAnimation"
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayI_02"]
|
||||
filters = []
|
||||
animation = &"ArmatureAnimation"
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayI_03"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayI_04"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachine" id="AutoplayI"]
|
||||
states/state_1/node = SubResource( "AutoplayI_01" )
|
||||
states/state_2/node = SubResource( "AutoplayI_02" )
|
||||
transitions = [&"state_1", &"state_2", SubResource( "AutoplayI_03" ), &"state_2", &"state_1", SubResource( "AutoplayI_04" )]
|
||||
start_node = "state_1"
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayJ_01"]
|
||||
filters = []
|
||||
animation = &"SpinningCubesV2"
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayJ_02"]
|
||||
filters = []
|
||||
animation = &"SpinningCubesV2"
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayJ_03"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayJ_04"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachine" id="AutoplayJ"]
|
||||
states/state_1/node = SubResource( "AutoplayJ_01" )
|
||||
states/state_2/node = SubResource( "AutoplayJ_02" )
|
||||
transitions = [&"state_1", &"state_2", SubResource( "AutoplayJ_03" ), &"state_2", &"state_1", SubResource( "AutoplayJ_04" )]
|
||||
start_node = "state_1"
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayK_01"]
|
||||
filters = []
|
||||
animation = &"SpinningCubesV2"
|
||||
[sub_resource type="AnimationNodeAnimation" id="AutoplayK_02"]
|
||||
filters = []
|
||||
animation = &"SpinningCubesV2"
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayK_03"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachineTransition" id="AutoplayK_04"]
|
||||
switch_mode = 2
|
||||
auto_advance = true
|
||||
[sub_resource type="AnimationNodeStateMachine" id="AutoplayK"]
|
||||
states/state_1/node = SubResource( "AutoplayK_01" )
|
||||
states/state_2/node = SubResource( "AutoplayK_02" )
|
||||
transitions = [&"state_1", &"state_2", SubResource( "AutoplayK_03" ), &"state_2", &"state_1", SubResource( "AutoplayK_04" )]
|
||||
start_node = "state_1"
|
||||
|
||||
[node name="Node3D" type="Node3D"]
|
||||
script = null
|
||||
|
||||
[node name="MeshSkinnedToItselfAndOthersV2WithTail" parent="." instance=ExtResource( 8 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 0, 0 )
|
||||
|
||||
[node name="AnimationTree" type="AnimationTree" parent="MeshSkinnedToItselfAndOthersV2WithTail"]
|
||||
tree_root = SubResource( "AutoplayA" )
|
||||
anim_player = NodePath("../AnimationPlayer")
|
||||
active = true
|
||||
|
||||
[node name="modified_bone_animation_test" parent="." instance=ExtResource( 1 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0 )
|
||||
|
||||
[node name="AnimationTree" type="AnimationTree" parent="modified_bone_animation_test"]
|
||||
tree_root = SubResource( "AutoplayB" )
|
||||
anim_player = NodePath("../AnimationPlayer")
|
||||
active = true
|
||||
|
||||
[node name="NestedSkeletonReproCaseV2Animated" parent="." instance=ExtResource( 2 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0, 0 )
|
||||
|
||||
[node name="AnimationTree" type="AnimationTree" parent="NestedSkeletonReproCaseV2Animated"]
|
||||
tree_root = SubResource( "AutoplayC" )
|
||||
anim_player = NodePath("../AnimationPlayer")
|
||||
active = true
|
||||
|
||||
[node name="MeshSkinnedToItselfAndOthersV2" parent="." instance=ExtResource( 4 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 )
|
||||
|
||||
[node name="AnimationTree" type="AnimationTree" parent="MeshSkinnedToItselfAndOthersV2"]
|
||||
tree_root = SubResource( "AutoplayD" )
|
||||
anim_player = NodePath("../AnimationPlayer")
|
||||
active = true
|
||||
|
||||
[node name="MeshSkinnedToItselfAndOthers" parent="." instance=ExtResource( 6 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0 )
|
||||
|
||||
[node name="AnimationTree" type="AnimationTree" parent="MeshSkinnedToItselfAndOthers"]
|
||||
tree_root = SubResource( "AutoplayE" )
|
||||
anim_player = NodePath("../AnimationPlayer")
|
||||
active = true
|
||||
|
||||
[node name="MeshSkinnedToItselfAndOthersV1x" parent="." instance=ExtResource( 5 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0, 0 )
|
||||
|
||||
[node name="AnimationTree" type="AnimationTree" parent="MeshSkinnedToItselfAndOthersV1x"]
|
||||
tree_root = SubResource( "AutoplayF" )
|
||||
anim_player = NodePath("../AnimationPlayer")
|
||||
active = true
|
||||
|
||||
[node name="duplicate_skinned_mesh_combined" parent="." instance=ExtResource( 3 )]
|
||||
transform = Transform( 0, 0.1, 0, -0.1, 0, 0, 0, 0, 0.1, -2, 2, 0 )
|
||||
|
||||
[node name="AnimationTree" type="AnimationTree" parent="duplicate_skinned_mesh_combined"]
|
||||
tree_root = SubResource( "AutoplayG" )
|
||||
anim_player = NodePath("../AnimationPlayer")
|
||||
active = true
|
||||
|
||||
[node name="NestedSkeletonReproV3" parent="." instance=ExtResource( 9 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 1, 0 )
|
||||
|
||||
[node name="AnimationTree" type="AnimationTree" parent="NestedSkeletonReproV3"]
|
||||
tree_root = SubResource( "AutoplayH" )
|
||||
anim_player = NodePath("../AnimationPlayer")
|
||||
active = true
|
||||
|
||||
[node name="MeshSkinnedToItself" parent="." instance=ExtResource( 7 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 )
|
||||
|
||||
[node name="NestedSkeletonReproCaseV2WithBody" parent="." instance=ExtResource( 10 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0 )
|
||||
|
||||
[node name="NestedSkeletonReproCase_renamemesh" parent="." instance=ExtResource( 11 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 1, 0 )
|
||||
|
||||
[node name="DirectParentedSkeletons" parent="." instance=ExtResource( 12 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0 )
|
||||
|
||||
[editable path="MeshSkinnedToItselfAndOthersV2WithTail"]
|
||||
[editable path="modified_bone_animation_test"]
|
||||
[editable path="NestedSkeletonReproCaseV2Animated"]
|
||||
[editable path="MeshSkinnedToItselfAndOthersV2"]
|
||||
[editable path="MeshSkinnedToItselfAndOthersV1x"]
|
||||
[editable path="duplicate_skinned_mesh_combined"]
|
||||
[editable path="MeshSkinnedToItselfAndOthers"]
|
||||
[editable path="MeshSkinnedToItself"]
|
||||
[editable path="NestedSkeletonReproCaseV2WithBody"]
|
||||
[editable path="NestedSkeletonReproCase_renamemesh"]
|
||||
[editable path="NestedSkeletonReproV3"]
|
||||
[editable path="DirectParentedSkeletons"]
|
||||
74
tests/gltf_skeleton_tests/TestModels_noanim.tscn
Normal file
74
tests/gltf_skeleton_tests/TestModels_noanim.tscn
Normal file
@@ -0,0 +1,74 @@
|
||||
[gd_scene load_steps=10 format=2]
|
||||
|
||||
[ext_resource path="res://gltf_tests/modified_bone_animation_test.glb" type="PackedScene" id=1]
|
||||
[ext_resource path="res://gltf_tests/NestedSkeletonReproCaseV2Animated.glb" type="PackedScene" id=2]
|
||||
[ext_resource path="res://gltf_tests/duplicate_skinned_mesh_combined.glb" type="PackedScene" id=3]
|
||||
[ext_resource path="res://gltf_tests/MeshSkinnedToItselfAndOthersV2.glb" type="PackedScene" id=4]
|
||||
[ext_resource path="res://gltf_tests/MeshSkinnedToItselfAndOthersV1x.glb" type="PackedScene" id=5]
|
||||
[ext_resource path="res://gltf_tests/MeshSkinnedToItselfAndOthers.glb" type="PackedScene" id=6]
|
||||
[ext_resource path="res://gltf_tests/MeshSkinnedToItself.glb" type="PackedScene" id=7]
|
||||
[ext_resource path="res://gltf_tests/MeshSkinnedToItselfAndOthersV2WithTail.glb" type="PackedScene" id=8]
|
||||
[ext_resource path="res://gltf_tests/NestedSkeletonReproV3.glb" type="PackedScene" id=9]
|
||||
[ext_resource path="res://gltf_tests/NestedSkeletonReproCaseV2WithBody.glb" type="PackedScene" id=10]
|
||||
[ext_resource path="res://gltf_tests/NestedSkeletonReproCase_renamemesh.glb" type="PackedScene" id=11]
|
||||
[ext_resource path="res://gltf_tests/DirectParentedSkeletons.glb" type="PackedScene" id=12]
|
||||
|
||||
[sub_resource type="AnimationNodeAnimation" id="modified_bone_animation_test"]
|
||||
animation = &"ArmatureAnimation"
|
||||
|
||||
[node name="Node3D" type="Node3D"]
|
||||
script = null
|
||||
|
||||
[node name="MeshSkinnedToItselfAndOthersV2WithTail" parent="." instance=ExtResource( 8 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -2, 0, 0 )
|
||||
|
||||
[node name="modified_bone_animation_test" parent="." instance=ExtResource( 1 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, -1, 0 )
|
||||
|
||||
[node name="AnimationTree" type="AnimationTree" parent="modified_bone_animation_test"]
|
||||
tree_root = SubResource( "modified_bone_animation_test" )
|
||||
anim_player = NodePath("../AnimationPlayer")
|
||||
active = true
|
||||
|
||||
[node name="NestedSkeletonReproCaseV2Animated" parent="." instance=ExtResource( 2 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 0, 0 )
|
||||
|
||||
[node name="MeshSkinnedToItselfAndOthersV2" parent="." instance=ExtResource( 4 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 )
|
||||
|
||||
[node name="MeshSkinnedToItselfAndOthers" parent="." instance=ExtResource( 6 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 0 )
|
||||
|
||||
[node name="MeshSkinnedToItselfAndOthersV1x" parent="." instance=ExtResource( 5 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 0, 0 )
|
||||
|
||||
[node name="duplicate_skinned_mesh_combined" parent="." instance=ExtResource( 3 )]
|
||||
transform = Transform( 0, 0.1, 0, -0.1, 0, 0, 0, 0, 0.1, -2, 2, 0 )
|
||||
|
||||
[node name="NestedSkeletonReproV3" parent="." instance=ExtResource( 9 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1, 1, 0 )
|
||||
|
||||
[node name="MeshSkinnedToItself" parent="." instance=ExtResource( 7 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0 )
|
||||
|
||||
[node name="NestedSkeletonReproCaseV2WithBody" parent="." instance=ExtResource( 10 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0 )
|
||||
|
||||
[node name="NestedSkeletonReproCase_renamemesh" parent="." instance=ExtResource( 11 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2, 1, 0 )
|
||||
|
||||
[node name="DirectParentedSkeletons" parent="." instance=ExtResource( 12 )]
|
||||
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 0 )
|
||||
|
||||
[editable path="MeshSkinnedToItselfAndOthersV2WithTail"]
|
||||
[editable path="modified_bone_animation_test"]
|
||||
[editable path="NestedSkeletonReproCaseV2Animated"]
|
||||
[editable path="MeshSkinnedToItselfAndOthersV2"]
|
||||
[editable path="MeshSkinnedToItselfAndOthersV1x"]
|
||||
[editable path="duplicate_skinned_mesh_combined"]
|
||||
[editable path="MeshSkinnedToItselfAndOthers"]
|
||||
[editable path="MeshSkinnedToItself"]
|
||||
[editable path="NestedSkeletonReproCaseV2WithBody"]
|
||||
[editable path="NestedSkeletonReproCase_renamemesh"]
|
||||
[editable path="NestedSkeletonReproV3"]
|
||||
[editable path="DirectParentedSkeletons"]
|
||||
BIN
tests/gltf_skeleton_tests/gltf_tests/DirectParentedSkeletons.glb
Normal file
BIN
tests/gltf_skeleton_tests/gltf_tests/DirectParentedSkeletons.glb
Normal file
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://duoiepw26xxf"
|
||||
path="res://.godot/imported/DirectParentedSkeletons.glb-bcd53dfc080581455af9ab887e50f2ba.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://gltf_tests/DirectParentedSkeletons.glb"
|
||||
dest_files=["res://.godot/imported/DirectParentedSkeletons.glb-bcd53dfc080581455af9ab887e50f2ba.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type="Node3D"
|
||||
nodes/root_name="Scene Root"
|
||||
nodes/root_scale=1.0
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=2
|
||||
meshes/lightmap_texel_size=0.1
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/bake_reset_animation=true
|
||||
animation/fps=15
|
||||
import_script/path=""
|
||||
_subresources={
|
||||
}
|
||||
BIN
tests/gltf_skeleton_tests/gltf_tests/MeshSkinnedToItself.glb
Normal file
BIN
tests/gltf_skeleton_tests/gltf_tests/MeshSkinnedToItself.glb
Normal file
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://dy3y3t81knkqb"
|
||||
path="res://.godot/imported/MeshSkinnedToItself.glb-deee8e08f3151bd9287668b1d3941d62.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://gltf_tests/MeshSkinnedToItself.glb"
|
||||
dest_files=["res://.godot/imported/MeshSkinnedToItself.glb-deee8e08f3151bd9287668b1d3941d62.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type="Node3D"
|
||||
nodes/root_name="Scene Root"
|
||||
nodes/root_scale=1.0
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=2
|
||||
meshes/lightmap_texel_size=0.1
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/bake_reset_animation=true
|
||||
animation/fps=15
|
||||
import_script/path=""
|
||||
_subresources={
|
||||
}
|
||||
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://dmeag3j0gpnly"
|
||||
path="res://.godot/imported/MeshSkinnedToItselfAndOthers.glb-494932e134f4724fa2f480207306c114.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://gltf_tests/MeshSkinnedToItselfAndOthers.glb"
|
||||
dest_files=["res://.godot/imported/MeshSkinnedToItselfAndOthers.glb-494932e134f4724fa2f480207306c114.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type="Node3D"
|
||||
nodes/root_name="Scene Root"
|
||||
nodes/root_scale=1.0
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=2
|
||||
meshes/lightmap_texel_size=0.1
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/bake_reset_animation=true
|
||||
animation/fps=15
|
||||
import_script/path=""
|
||||
_subresources={
|
||||
}
|
||||
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://d0404a2mn4wik"
|
||||
path="res://.godot/imported/MeshSkinnedToItselfAndOthersV1x.glb-ab96467ae6fb3b33ae1d9a8d37824954.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://gltf_tests/MeshSkinnedToItselfAndOthersV1x.glb"
|
||||
dest_files=["res://.godot/imported/MeshSkinnedToItselfAndOthersV1x.glb-ab96467ae6fb3b33ae1d9a8d37824954.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type="Node3D"
|
||||
nodes/root_name="Scene Root"
|
||||
nodes/root_scale=1.0
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=2
|
||||
meshes/lightmap_texel_size=0.1
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/bake_reset_animation=true
|
||||
animation/fps=15
|
||||
import_script/path=""
|
||||
_subresources={
|
||||
}
|
||||
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://kk28nkdfv1yg"
|
||||
path="res://.godot/imported/MeshSkinnedToItselfAndOthersV2.glb-cbad2a314958181155c917d5253c69db.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://gltf_tests/MeshSkinnedToItselfAndOthersV2.glb"
|
||||
dest_files=["res://.godot/imported/MeshSkinnedToItselfAndOthersV2.glb-cbad2a314958181155c917d5253c69db.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type="Node3D"
|
||||
nodes/root_name="Scene Root"
|
||||
nodes/root_scale=1.0
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=2
|
||||
meshes/lightmap_texel_size=0.1
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/bake_reset_animation=true
|
||||
animation/fps=15
|
||||
import_script/path=""
|
||||
_subresources={
|
||||
}
|
||||
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://cclbgr58klrt8"
|
||||
path="res://.godot/imported/MeshSkinnedToItselfAndOthersV2WithTail.glb-5c30b66707202d482aa600e0a24743be.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://gltf_tests/MeshSkinnedToItselfAndOthersV2WithTail.glb"
|
||||
dest_files=["res://.godot/imported/MeshSkinnedToItselfAndOthersV2WithTail.glb-5c30b66707202d482aa600e0a24743be.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type="Node3D"
|
||||
nodes/root_name="Scene Root"
|
||||
nodes/root_scale=1.0
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=2
|
||||
meshes/lightmap_texel_size=0.1
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/bake_reset_animation=true
|
||||
animation/fps=15
|
||||
import_script/path=""
|
||||
_subresources={
|
||||
}
|
||||
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://cjj1vomqen7gq"
|
||||
path="res://.godot/imported/MeshSkinnedToItselfAndOthersV3.glb-593799b8bc045ea6a04db5b968470125.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://gltf_tests/MeshSkinnedToItselfAndOthersV3.glb"
|
||||
dest_files=["res://.godot/imported/MeshSkinnedToItselfAndOthersV3.glb-593799b8bc045ea6a04db5b968470125.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type="Node3D"
|
||||
nodes/root_name="Scene Root"
|
||||
nodes/root_scale=1.0
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=2
|
||||
meshes/lightmap_texel_size=0.1
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/bake_reset_animation=true
|
||||
animation/fps=15
|
||||
import_script/path=""
|
||||
_subresources={
|
||||
}
|
||||
BIN
tests/gltf_skeleton_tests/gltf_tests/NestedSkeletonReproCase.glb
Normal file
BIN
tests/gltf_skeleton_tests/gltf_tests/NestedSkeletonReproCase.glb
Normal file
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://bu0bo7cnb7c81"
|
||||
path="res://.godot/imported/NestedSkeletonReproCase.glb-c81949c01820d54eb73805ed065923a2.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://gltf_tests/NestedSkeletonReproCase.glb"
|
||||
dest_files=["res://.godot/imported/NestedSkeletonReproCase.glb-c81949c01820d54eb73805ed065923a2.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type="Node3D"
|
||||
nodes/root_name="Scene Root"
|
||||
nodes/root_scale=1.0
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=2
|
||||
meshes/lightmap_texel_size=0.1
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/bake_reset_animation=true
|
||||
animation/fps=15
|
||||
import_script/path=""
|
||||
_subresources={
|
||||
}
|
||||
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://cka4qceh300pb"
|
||||
path="res://.godot/imported/NestedSkeletonReproCaseV2Animated.glb-992ac79dfc427b29ceeb930f3d98b932.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://gltf_tests/NestedSkeletonReproCaseV2Animated.glb"
|
||||
dest_files=["res://.godot/imported/NestedSkeletonReproCaseV2Animated.glb-992ac79dfc427b29ceeb930f3d98b932.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type="Node3D"
|
||||
nodes/root_name="Scene Root"
|
||||
nodes/root_scale=1.0
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=2
|
||||
meshes/lightmap_texel_size=0.1
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/bake_reset_animation=true
|
||||
animation/fps=15
|
||||
import_script/path=""
|
||||
_subresources={
|
||||
}
|
||||
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://ccdn5dqjfrgsw"
|
||||
path="res://.godot/imported/NestedSkeletonReproCaseV2WithBody.glb-075056b077bf20102c24100df453ad66.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://gltf_tests/NestedSkeletonReproCaseV2WithBody.glb"
|
||||
dest_files=["res://.godot/imported/NestedSkeletonReproCaseV2WithBody.glb-075056b077bf20102c24100df453ad66.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type="Node3D"
|
||||
nodes/root_name="Scene Root"
|
||||
nodes/root_scale=1.0
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=2
|
||||
meshes/lightmap_texel_size=0.1
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/bake_reset_animation=true
|
||||
animation/fps=15
|
||||
import_script/path=""
|
||||
_subresources={
|
||||
}
|
||||
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://ccecsuatvflqi"
|
||||
path="res://.godot/imported/NestedSkeletonReproCase_renamemesh.glb-9517162d1b570b6fae4b7f6a55ed8219.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://gltf_tests/NestedSkeletonReproCase_renamemesh.glb"
|
||||
dest_files=["res://.godot/imported/NestedSkeletonReproCase_renamemesh.glb-9517162d1b570b6fae4b7f6a55ed8219.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type="Node3D"
|
||||
nodes/root_name="Scene Root"
|
||||
nodes/root_scale=1.0
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=2
|
||||
meshes/lightmap_texel_size=0.1
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/bake_reset_animation=true
|
||||
animation/fps=15
|
||||
import_script/path=""
|
||||
_subresources={
|
||||
}
|
||||
BIN
tests/gltf_skeleton_tests/gltf_tests/NestedSkeletonReproV3.glb
Normal file
BIN
tests/gltf_skeleton_tests/gltf_tests/NestedSkeletonReproV3.glb
Normal file
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://rv7ro10w2jl4"
|
||||
path="res://.godot/imported/NestedSkeletonReproV3.glb-79730a6dc0d76819c422b809685119d9.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://gltf_tests/NestedSkeletonReproV3.glb"
|
||||
dest_files=["res://.godot/imported/NestedSkeletonReproV3.glb-79730a6dc0d76819c422b809685119d9.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type="Node3D"
|
||||
nodes/root_name="Scene Root"
|
||||
nodes/root_scale=1.0
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=2
|
||||
meshes/lightmap_texel_size=0.1
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/bake_reset_animation=true
|
||||
animation/fps=15
|
||||
import_script/path=""
|
||||
_subresources={
|
||||
}
|
||||
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://bd54q20rhhw60"
|
||||
path="res://.godot/imported/duplicate_skinned_mesh_combined.glb-aa98802ca169e7316f73ee17ada09617.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://gltf_tests/duplicate_skinned_mesh_combined.glb"
|
||||
dest_files=["res://.godot/imported/duplicate_skinned_mesh_combined.glb-aa98802ca169e7316f73ee17ada09617.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type="Node3D"
|
||||
nodes/root_name="Scene Root"
|
||||
nodes/root_scale=1.0
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=2
|
||||
meshes/lightmap_texel_size=0.1
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/bake_reset_animation=true
|
||||
animation/fps=15
|
||||
import_script/path=""
|
||||
_subresources={
|
||||
}
|
||||
Binary file not shown.
@@ -0,0 +1,30 @@
|
||||
[remap]
|
||||
|
||||
importer="scene"
|
||||
importer_version=1
|
||||
type="PackedScene"
|
||||
uid="uid://cve3ee5hdutu8"
|
||||
path="res://.godot/imported/modified_bone_animation_test.glb-b0ddb307fdebaaf595f3061a40d93968.scn"
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://gltf_tests/modified_bone_animation_test.glb"
|
||||
dest_files=["res://.godot/imported/modified_bone_animation_test.glb-b0ddb307fdebaaf595f3061a40d93968.scn"]
|
||||
|
||||
[params]
|
||||
|
||||
nodes/root_type="Node3D"
|
||||
nodes/root_name="Scene Root"
|
||||
nodes/root_scale=1.0
|
||||
meshes/ensure_tangents=true
|
||||
meshes/generate_lods=true
|
||||
meshes/create_shadow_meshes=true
|
||||
meshes/light_baking=2
|
||||
meshes/lightmap_texel_size=0.1
|
||||
skins/use_named_skins=true
|
||||
animation/import=true
|
||||
animation/bake_reset_animation=true
|
||||
animation/fps=15
|
||||
import_script/path=""
|
||||
_subresources={
|
||||
}
|
||||
19
tests/gltf_skeleton_tests/project.godot
Normal file
19
tests/gltf_skeleton_tests/project.godot
Normal file
@@ -0,0 +1,19 @@
|
||||
; Engine configuration file.
|
||||
; It's best edited using the editor UI and not directly,
|
||||
; since the parameters that go here are not all obvious.
|
||||
;
|
||||
; Format:
|
||||
; [section] ; section goes between []
|
||||
; param=value ; assign values to parameters
|
||||
|
||||
config_version=4
|
||||
|
||||
[application]
|
||||
|
||||
config/name="GLTF Skeleton Tests"
|
||||
run/main_scene="res://TestModels.tscn"
|
||||
config/icon="res://icon.png"
|
||||
|
||||
[rendering]
|
||||
|
||||
environment/default_environment="res://default_env.tres"
|
||||
Reference in New Issue
Block a user