【发布时间】:2019-07-31 05:34:25
【问题描述】:
我正在将一个从 Flare3d 导出的 3dmodel 成功加载到 Flash 中。我可以使用MouseCollision() 跟踪模型不同部分的“名称”。
目标:
动态提取所有模型零件名称/零件编号 鼠标碰撞。
*我想在模型添加到舞台之前检索相同的数据。
我希望输出所有 3d 模型的零件名称,然后操作数据以供我的应用程序使用。我想动态地执行此操作,以便于更新 3d 模型。
我已经追踪了主要场景:我正在使用的 Scene3D
scene = new Viewer3D(this).
输出返回[object Camera3D], [object Flare3DLoader]
这是目前仅适用于鼠标碰撞的情况:
private function updateEvent(e: Event): void {
if (mouse.test(Input3D.mouseX, Input3D.mouseY)) {
// get access to the first and closest collision.
var over: Pivot3D = mouse.data[0].mesh;
if (over != last) {
// name of 3d part is traced.
trace("mouse in", over.name);
}
over.rotateY(10);
last = over;
Mouse.cursor = MouseCursor.BUTTON;
} else {
if (last) {
trace("mouse out", last.name);
}
last = null;
Mouse.cursor = MouseCursor.AUTO;
}
}
【问题讨论】: