合并更新

This commit is contained in:
Hector 2026-02-28 11:10:43 +08:00
parent 5752559cdd
commit 036b68ef41
3 changed files with 17 additions and 10 deletions

Binary file not shown.

View File

@ -25,7 +25,7 @@ Collapsed=0
[Window][工具栏]
Pos=278,20
Size=1295,32
Size=1373,32
Collapsed=0
DockId=0x0000000D,0
@ -36,8 +36,8 @@ Collapsed=0
DockId=0x00000007,0
[Window][属性面板]
Pos=1575,20
Size=345,989
Pos=1653,20
Size=267,989
Collapsed=0
DockId=0x00000003,0
@ -100,7 +100,7 @@ Collapsed=0
[Window][资源管理器]
Pos=278,675
Size=1295,334
Size=1373,334
Collapsed=0
DockId=0x00000006,0
@ -202,16 +202,16 @@ Collapsed=0
[Docking][Data]
DockSpace ID=0x08BD597D Window=0x1BBC0F80 Pos=0,20 Size=1920,989 Split=X
DockNode ID=0x00000001 Parent=0x08BD597D SizeRef=1573,989 Split=X
DockNode ID=0x00000001 Parent=0x08BD597D SizeRef=1651,989 Split=X
DockNode ID=0x00000009 Parent=0x00000001 SizeRef=276,989 Split=Y Selected=0xE0015051
DockNode ID=0x00000007 Parent=0x00000009 SizeRef=271,634 Selected=0xE0015051
DockNode ID=0x00000008 Parent=0x00000009 SizeRef=271,353 Selected=0x5428E753
DockNode ID=0x0000000A Parent=0x00000001 SizeRef=755,989 Split=Y
DockNode ID=0x0000000A Parent=0x00000001 SizeRef=1373,989 Split=Y
DockNode ID=0x0000000D Parent=0x0000000A SizeRef=1318,32 HiddenTabBar=1 Selected=0x43A39006
DockNode ID=0x0000000E Parent=0x0000000A SizeRef=1318,937 Split=Y
DockNode ID=0x00000005 Parent=0x0000000E SizeRef=1341,601 CentralNode=1
DockNode ID=0x00000006 Parent=0x0000000E SizeRef=1341,334 Selected=0x3A2E05C3
DockNode ID=0x00000002 Parent=0x08BD597D SizeRef=345,989 Split=Y Selected=0x3188AB8D
DockNode ID=0x00000002 Parent=0x08BD597D SizeRef=267,989 Split=Y Selected=0x3188AB8D
DockNode ID=0x00000003 Parent=0x00000002 SizeRef=351,390 Selected=0x5DB6FF37
DockNode ID=0x00000004 Parent=0x00000002 SizeRef=351,597 Selected=0x1EB923B7

View File

@ -3,7 +3,7 @@ from pathlib import Path
from direct.actor.Actor import Actor
from direct.task.TaskManagerGlobal import taskMgr
from panda3d.core import NodePath, PartSubset
from panda3d.core import NodePath, PartSubset, Filename
class _BoundAnimationProxy:
@ -704,7 +704,11 @@ class AnimationTools:
def _try_create_actor_from_source(source, source_desc):
try:
actor = Actor(source)
resolved_source = source
if isinstance(source, (str, os.PathLike)):
src_text = os.fspath(source)
resolved_source = Filename.from_os_specific(src_text).get_fullpath()
actor = Actor(resolved_source)
# 无论是否已检测到动画名,都显式绑定一次,避免“有名字但无可播放控制”
try:
actor.bindAllAnims(allowAsyncBind=False)
@ -1139,7 +1143,10 @@ class AnimationTools:
# 路径 Actor 失败后,再尝试把文件作为普通模型加载并 autoBind
try:
loaded_model = self.loader.loadModel(p)
model_source = p
if isinstance(p, (str, os.PathLike)):
model_source = Filename.from_os_specific(os.fspath(p))
loaded_model = self.loader.loadModel(model_source)
if loaded_model and not loaded_model.isEmpty():
proxy = _try_create_autobind_proxy(loaded_model, f"文件路径({p})", owns_node=True)
if proxy: