我正在使用 three.js
构建一个浏览器游戏,我想要将来自 Maya 2013 的模型加载到场景中。我已经将模型导出为 obj 文件。
现在我需要知道如何将它转换为 three.js
-loader 所需的 JS 文件。
这是我的加载器:
var jsonLoader = new THREE.JSONLoader();
jsonLoader.load( "models/model.js", addModelToScene );
提前致谢
我正在使用 three.js
构建一个浏览器游戏,我想要将来自 Maya 2013 的模型加载到场景中。我已经将模型导出为 obj 文件。
现在我需要知道如何将它转换为 three.js
-loader 所需的 JS 文件。
这是我的加载器:
var jsonLoader = new THREE.JSONLoader();
jsonLoader.load( "models/model.js", addModelToScene );
提前致谢
python convert_obj_three.py -i infile.obj -o outfile.js
回复有点晚了。我已经编写了一个转换器,用于读取obj文件并转换为ThreeJS支持的JSON格式: https://github.com/theMaxscriptGuy/Windows_Programs/tree/master/Obj_To_ThreeJS
下载所有文件并运行converter.exe...
vertexNormalsHelper
检查缺陷。然而,可以确定有效的是convert_obj_three.py
Python脚本。它似乎提供了预期的结果。 - Adrian Moisa
node obj2three.js model.obj
使用[convert_obj_three.py][1]
脚本将 3ds max 模型导出到 three.js 时,可以通过以下命令在 cmd 命令提示符中实现一定程度的自动化:
cd C:\Python27 &
python convert_obj_three.py -i _obj\chromeBand.obj -o _json\chromeBand.js &
python convert_obj_three.py -i _obj\controlPanelCover.obj -o _json\controlPanelCover.js
(
local inputPath = "D:\Archive\Work\_Dev\_Convert\Obj\\"
local outputPath = "C:\Server\htdocs\viewer\assets\models\my-project\\"
local jsonPath = "assets/models/my-project/"
local myListEntry = "\n"
for o in selection do
(
myListEntry +=
"\"" + o.name + "\": {\n" +
"\t\"url\": \"" + jsonPath + o.name + ".js\",\n" +
"\t\"position\": {\n" +
"\t\t\"x\": \"" + o.position.x as string + "\",\n" +
"\t\t\"y\": \"" + o.position.z as string + "\",\n" +
"\t\t\"z\": \"" + (o.position.y * -1) as string + "\"\n" +
"\t}\n" +
"},\n"
)
myListEntry += "\n\n\n=== Run this using cmd promt: ===\n"
myListEntry += "cd C:\Python27 &\n"
for o in selection do
(
myListEntry += "python D:\Archive\Work\_Dev\_Convert\convert_obj_three.py -i " +
inputPath + o.name + ".obj -o " +
outputPath + o.name + ".js & \n"
)
myListEntry += "exit \n"
print myListEntry
actionMan.executeAction 0 "40472"
)
coordinates.mcr
并将文件拖放到3ds max窗口中。它将自动打开MaxScript Listener窗口并打印结果。复制粘贴python命令到cmd中。使用打印的json批量加载您项目中的模型。编辑:
在尝试过脚本后,我做了一个设置,使我能够在不到1分钟的时间内从3ds max将我的模型(超过20个)导出到打开的浏览器标签页中。当然,您可能需要调整json输出以适应您的需求。希望这对您有用。
创建一个名为conversion.py
的Python文件。点击此处了解如何创建。
然后在您的终端中执行以下命令:
python conversion.py -i file.obj -o file.js