3dStudioMax ішінен THREE.js ішіне импорттау моделі

THREE.js әртүрлі 3D графикалық форматтарынан импорттаушылар бар екенін білемін.

3dStudioMax-те құрылған модельді көрсету үшін қолайлы импорттаушы бар ма? Егер біреу болмаса, THREE.js-те импорттауға болатын 3dStudioMax моделін түрлендірудің жолы бар ма?

12
Айтпақшы, бұл ұсынылған 3d стеккомпозициясы үшін өте жақсы сұрақ еді area51.stackexchange.com/ ұсыныстар/5022/& hellip; .
қосылды автор cdiggins, көзі

4 жауаптар

Сізде екі нұсқа бар:

1) ThreeJSExporter.ms қолданыңыз, бірақ енді қол жетімді емес екенін ескеріңіз:

https://github.com/mrdoob/three.js/tree/master/utils/exporters/max

2) (Ұсынылады) 3DS Max ішіндегі OBJ экспорттаушы параметрін пайдаланыңыз. Содан кейін мұнда қол жетімді convert_obj_three.py сценарийін пайдаланыңыз:

https://github.com/mrdoob/three .js/blob/master/utils/converters/obj/convert_obj_three.py

Үш.js-дың Github-дағы мәселедегі толығырақ ақпарат:

https://github.com/mrdoob/three.js/issues/893

17
қосылды

Төменде таңдалған нысанның торын JSON-ға түрлендіретін MAXScript сценарийі болып табылады. Осы лауазымның уақытында ол Google кодтық хостында 3ds Max әзірлеуші ​​қауымдастығы SVN-де қол жетімді болды.

tmesh = snapshotAsMesh selection[1]
out_file = createfile "$scripts\\output.json

num_faces = tmesh.numfaces
num_verts = tmesh.numverts 

fn PrintPoint pt = (
 format "%, %, %, " pt.x pt.y pt.z to:out_file
)   

fn PrintPointUV pt = (
 format "%, %, " pt.x pt.y to:out_file
)   

fn PrintPointInt pt = (
    x = int(pt.x) - 1
    y = int(pt.y) - 1
    z = int(pt.z) - 1
    format "%, %, %, " x y z to:out_file
)   

format "{\n" to:out_file

-- Vertex Positions 
-- format "    \"vertexPositions\" : [" to:out_file
format "    positions : [" to:out_file
for i = 1 to num_verts do
(
 vert = getVert tmesh i
 PrintPoint vert
)
format "],\n" to:out_file

-- Vertex Normals
-- format "    \"vertexNormals\" : [" to:out_file
format "    normals : [" to:out_file
for i = 1 to num_verts do
(
  vert = getNormal tmesh i
  PrintPoint vert
)
format "],\n" to:out_file

-- Vertex Texture Coordinates 
-- format "    \"vertexTextureCoords\" : [" to:out_file
format "    uv : [" to:out_file
for i = 1 to num_faces do
(
    -- Iterate over faces 
    tvface = getTVFace tmesh i
    for j = 1 to 3 do (
        -- Get a specific texture vertex
        tvert = getTVert tmesh tvface[j]        
        PrintPointUV tvert
    )
)
format "],\n" to:out_file

-- Face Indexes
-- format "    \"indices\" : [" to:out_file
format "    indices : [" to:out_file
for f = 1 to num_faces do
(
   face = getFace tmesh f
   PrintPointInt face
)
format "],\n" to:out_file

format "}" to:out_file

close out_file
delete tmesh
edit out_name
6
қосылды

Мен бір кездері үш.js пайдаланбадым, бірақ 3dsmax оңай экспорттауға болатын OBJ импортын білемін және .obj үш.js .json торына түрлендіретін питон сценарийі бар.

Мен соңғы нұсқасында MaxScript бар екенін байқадым Экспорттаушыны тікелей форматқа көшіріп алыңыз, солай етіңіз. Таңдалған торға негізделген .js файлын жасау керек, бірақ тестілеу сәтінде компьютерге кіре алмайды.

2
қосылды

You can save max file using 3ds file format. Open 3ds model with the A3dsViewer. Click Export to the HTML5 in the toolbar and you will be able to preview the model in the browser.

1
қосылды