# 单体化三维切片制作-局部坐标系-Z-multi

3dmax中模型分割后使用该脚本构建tileset,使用局部相对坐标(使用RTC_CENTER), 模型之间相对位置更为精确,每个位置生成一个i3dm, 但是引用的模型是同一个,导出的单体化模型名称必须为data.glb

# 适用场景

适用于相对分散的同样外观的批量化模型,如:风力发电机,一条马路上的路灯,树木等 不太适用于聚集的模型,如一小片密度比较大的森林

# 使用方法

  1. 在3dmax Scripting Listener中输入:select $*车道线*,选择所有车道线,检查是否所有实例化对象为同一个实例
  2. 执行以下脚本exportInfo.ms,按下ctrl+E执行,输出模型名称,模型位置,绕z轴角度等信息
    点击查看代码
    select $*???*
    selObj = selection as Array
    out_file = createfile "F:/Document/3dsMax/export/output_key.txt" encoding:#utf8
    for i=1 to selObj.count do(
        format "%;%;%\n" (selObj[i].name) (selObj[i].pos) (selObj[i].rotation.z_rotation)to:out_file
    )
    close out_file
    
  3. 修改该脚本中txtFile路径,并执行,执行结果在txtFile同目录下
  4. 3dmax中批量导出模型,导出之前需要把模型坐标改为0,使用batchExportObj.ms 执行:
    点击查看代码
        $.position = [0,0,0]
        $.rotation.z_rotation = 0
        exportfile "F:/Document/3dsMax/export/data.fbx" #noprompt selectedOnly:true                                             
    
  5. 批量执行:
    fbx2gltf -i data.fbx -o data.glb