Interstellar 3D Engine Demo

复制链接 & 嵌入
链接
复制链接
嵌入网页
复制嵌入代码
进入全屏模式
载入作品
正在创建积木……
载入角色……
载入声音……
加载扩展……
正在创建积木……
呼唤小猫……
传送Nano……
给Gobo充气 …
准备表情……
还没有人打赏!
最后修改于2023年11月22日

指导教师

操作说明

SMALL DEMO OF MY NEWEST 3D ENGINE. EXPECT MORE TO COME! FULL VERSION WILL BE RELEASED ON THE MAIN ACCOUNT WHEN FINISHED: @THEGOODGUY8000

MAKE YOUR OWN TEXTURES HERE:
HTTPS://JOECLINTON1.GITHUB.IO/TEXTURE-CONVERTER-JS/

THIS ENGINE WORKS SIMILARLY TO LUNAR OR CELESTIAL. YOU CAN MAKE A GAME WITH THIS. (THOUGH SOME FEATURES ARE NOT HERE YET)

WHY ARE YOU SHARING THIS ON YOUR SECOND ACCOUNT?
I'M SHARING THIS ON MY SECOND ACCOUNT TO GET THIS INTO THE HANDS OF PEOPLE WHO CAN HELP ME IMPROVE THIS AS FAST AS POSSIBLE. I ALSO HAVE A LOT OF FEATURES IN DEVELOPMENT THAT WILL COME TO HERE EVENTUALLY, AND ONCE THEY ARE HERE, THE GAME ENGINE WILL BE FINISHED AND SHARED ON MY MAIN ACCOUNT.

-UPDATE 11/15/23
-ADDED POINTS
-ADDED LINES
-ADDED TRIANGLE UNITS
-UPDATE 11/14/23
-ADDED STTF 2 TEXTURES SUPPORT
-NUMEROUS OTHER CHANGES

ROCKETSHIP MODEL FROM: HTTPS://SKETCHFAB.COM/3D-MODELS/LOW-POLY-RACING-SHIP-8EB8FA2A19B341329B355C7458432373

I MADE THE ISLAND MODEL MYSELF

MUSIC FROM MINECRAFT

@CHROME_CAT FOR Z CLIPPING AND STTF 2.0
@HOWTOMAKEAUSERNAME FOR ORIGINAL Z CLIPPING
@-REX- FOR QUICKSORT
@SPINNINGCUBE FOR OPTIMIZATION IDEAS
TRI FILLER ORIGINALLY BY @TSF70 (OPTIMIZED BY @KRYPTOSCRATCHER)
@KRYPTOSCRATCHER FOR TRIG

备注与谢志

https://scratch.mit.edu/projects/923196031/

开发日志

角色

Stage

代码

当 绿旗 被点击

重复执行

播放声音 2-2 等待播完

 

当 绿旗 被点击

重复执行

播放声音 2-2 等待播完

 

Main

造型

load1

load2

 

声音

game begin

 

代码

当 绿旗 被点击

删除 {~averageFPS} 的全部项目

广播 Meshes 并等待

广播 Load 并等待

重复执行

执行 FPS

广播 Frame 并等待

 

将 {FPS} 设为 四舍五入(({FPS} / {~averageFPS} 的项目数))

 

当 绿旗 被点击

删除 {~averageFPS} 的全部项目

将 {~load} 设为 0

将 {Load} 设为 0

克隆 自己

广播 Meshes 并等待

等待 (1 < (计时器 - {~load}))

将 {Load} 设为 1

广播 Load 并等待

重复执行

执行 FPS

广播 Frame 并等待

 

当接收到 Frame

将 虚像 特效设定为 ((计时器 - {~load}) * 80)

如果 (2 < (计时器 - {~load})) 那么

删除此克隆体

 

当作为克隆体启动时

将音量设为 25%

换成 load2 造型

显示

重复执行

如果 ({Load} = 0) 那么

换成 (四舍五入((计时器 * 1.7)) 除以 2 的余数 + 2) 造型

否则

播放声音 game begin

将 {~load} 设为 计时器

停止 这个脚本

 

定义 FPS

将 {Deltatime} 设为 ((2000年至今的天数 - {~last}) * 86400)

将 {~last} 设为 2000年至今的天数

在 (1 / {Deltatime}) 的第 1 项前插入 {~averageFPS}

删除 {~averageFPS} 的第 31 项

将 {FPS} 设为 0

将 {FPS} 设为 四舍五入(({FPS} / {~averageFPS} 的项目数))

 

Objects

代码

当接收到 Load

执行 Objects

 

当接收到 Frame

执行 Update

 

定义 Set Object: {name} rotation to rx: {rx} ry: {ry} rz: {rz}

将 {~i} 设为 ({objectName} 中第一个 {name} 的编号 * 11)

将 {objectData} 的第 ({~i} - 2) 项替换为 {rx}

将 {objectData} 的第 ({~i} - 1) 项替换为 {ry}

将 {objectData} 的第 {~i} 项替换为 {rz}

 

定义 Set Object {name} position to x: {x} y: {y} z: {z}

将 {~i} 设为 ({objectName} 中第一个 {name} 的编号 * 11)

将 {objectData} 的第 ({~i} - 8) 项替换为 {x}

将 {objectData} 的第 ({~i} - 7) 项替换为 {y}

将 {objectData} 的第 ({~i} - 6) 项替换为 {z}

 

定义 Set Object: {name} scale to sx: {sx} sy: {sy} sz: {sz}

将 {~i} 设为 ({objectName} 中第一个 {name} 的编号 * 11)

将 {objectData} 的第 ({~i} - 5) 项替换为 {sx}

将 {objectData} 的第 ({~i} - 4) 项替换为 {sy}

将 {objectData} 的第 ({~i} - 3) 项替换为 {sz}

 

定义 Objects

执行 Add 3D Mesh: Island at: size: 8 8 8 rotation:

执行 Add 3D Mesh: spaceship at: size: 1.5 1.5 1.5 rotation: 45

执行 Add 3D Mesh: cube at: 15000 20000 size: 35 35 35 rotation:

执行 Add Point at x: 1100 y: -200 z: 0 size: 140 material: cave

执行 Add line at x1: 1100 y1: -200 z1: 0 x2: 1100 y2: 200 z2: 0 start width: 100 end width: 50 material: cave

执行 Add Triangle at x1: 1100 y1: 200 z1: 0 x2: 1100 y2: 130 z2: 0 x3: 1250 y3: 165 z3: 0 material: glass backface cull? 0

执行 Add Point at x: 1700 y: -200 z: 0 size: 140 material: cave

执行 Add line at x1: 1700 y1: -200 z1: 0 x2: 1700 y2: 200 z2: 0 start width: 100 end width: 50 material: cave

执行 Add Triangle at x1: 1700 y1: 200 z1: 0 x2: 1700 y2: 130 z2: 0 x3: 1850 y3: 165 z3: 0 material: red backface cull? 0

 

显示列表 {ERROR}

 

定义 Update

执行 Change Object: cube rotation by rx: (5 * {Deltatime}) ry: (5 * {Deltatime}) rz: (5 * {Deltatime})

执行 Set Object Island position to x: y: (sin((计时器 * 70)) * 25) z:

执行 Set Object: island rotation to rx: (sin((计时器 * 35)) * 3) ry: (sin((计时器 * 70)) / 3) rz: (cos((计时器 * 70)) / 3)

执行 Set Object spaceship position to x: (sin((计时器 * 60)) * 1400) y: (sin((计时器 * 120)) * 100) z: (cos((计时器 * 60)) * 1400)

执行 Set Object: spaceship rotation to rx: ((计时器 * 60) + 90) ry: (sin((计时器 * 120)) * 12) rz:

 

定义 Change mesh to: {mesh} for object: {name}

如果 {meshes} 包含 {mesh} ? 那么

将 {objectData} 的第 (({objectName} 中第一个 {name} 的编号 * 11) - 9) 项替换为 {mesh}

 

定义 Scale Object: {name1} to scale of object: {name2}

将 {~i} 设为 ({objectName} 中第一个 {name1} 的编号 * 11)

将 {~ID} 设为 ({objectName} 中第一个 {name2} 的编号 * 11)

将 {objectData} 的第 ({~i} - 5) 项替换为 {objectData} 的第 ({~ID} - 5) 项

将 {objectData} 的第 ({~i} - 4) 项替换为 {objectData} 的第 ({~ID} - 4) 项

将 {objectData} 的第 ({~i} - 3) 项替换为 {objectData} 的第 ({~ID} - 3) 项

 

定义 Change Object: {name} scale by sx: {sx} sy: {sy} sz: {sz}

将 {~i} 设为 ({objectName} 中第一个 {name} 的编号 * 11)

将 {objectData} 的第 ({~i} - 5) 项替换为 ({objectData} 的第 ({~i} - 5) 项 + {sx})

将 {objectData} 的第 ({~i} - 4) 项替换为 ({objectData} 的第 ({~i} - 4) 项 + {sy})

将 {objectData} 的第 ({~i} - 3) 项替换为 ({objectData} 的第 ({~i} - 3) 项 + {sz})

 

定义 Change Object: {name} rotation by rx: {rx} ry: {ry} rz: {rz}

将 {~i} 设为 ({objectName} 中第一个 {name} 的编号 * 11)

将 {objectData} 的第 ({~i} - 2) 项替换为 ({objectData} 的第 ({~i} - 2) 项 + {rx})

将 {objectData} 的第 ({~i} - 1) 项替换为 ({objectData} 的第 ({~i} - 1) 项 + {ry})

将 {objectData} 的第 {~i} 项替换为 ({objectData} 的第 {~i} 项 + {rz})

 

定义 Delete object: {name}

重复执行 11 次

删除 {objectData} 的第 (({objectName} 中第一个 {name} 的编号 * 11) - 10) 项

删除 {objectName} 的第 {objectName} 中第一个 {name} 的编号 项

 

定义 Set object name to: {name}

将 {objectName} 的第 last 项替换为 {name}

 

当接收到 Load

执行 Objects

 

当接收到 Frame

执行 Update

 

定义 Add 3D Mesh: {Mesh} at: {x} {y} {z} size: {xs} {ys} {zs} rotation: {xr} {yr} {zr}

如果 {meshes} 包含 {Mesh} ? 那么

将 {Mesh} 加入 {objectName}

将 1 加入 {objectData}

将 {Mesh} 加入 {objectData}

将 {x} 加入 {objectData}

将 {y} 加入 {objectData}

将 {z} 加入 {objectData}

将 {xs} 加入 {objectData}

将 {ys} 加入 {objectData}

将 {zs} 加入 {objectData}

将 {xr} 加入 {objectData}

将 {yr} 加入 {objectData}

将 {zr} 加入 {objectData}

否则

将 ERROR: 加入 {ERROR}

将 连接 Mesh: " 和 连接 {Mesh} 和 " does not exist 加入 {ERROR}

Please input a valid mesh 加入 {ERROR}

List of meshes: 加入 {ERROR}

显示列表 {ERROR}

 

定义 Scale Object: {name1} to scale of object: {name2}

将 {~i} 设为 ({objectName} 中第一个 {name1} 的编号 * 11)

将 {~ID} 设为 ({objectName} 中第一个 {name2} 的编号 * 11)

将 {objectData} 的第 ({~i} - 5) 项替换为 {objectData} 的第 ({~ID} - 5) 项

将 {objectData} 的第 ({~i} - 4) 项替换为 {objectData} 的第 ({~ID} - 4) 项

将 {objectData} 的第 ({~i} - 3) 项替换为 {objectData} 的第 ({~ID} - 3) 项

 

定义 Change Object: {name} scale by sx: {sx} sy: {sy} sz: {sz}

将 {~i} 设为 ({objectName} 中第一个 {name} 的编号 * 11)

将 {objectData} 的第 ({~i} - 5) 项替换为 ({objectData} 的第 ({~i} - 5) 项 + {sx})

将 {objectData} 的第 ({~i} - 4) 项替换为 ({objectData} 的第 ({~i} - 4) 项 + {sy})

将 {objectData} 的第 ({~i} - 3) 项替换为 ({objectData} 的第 ({~i} - 3) 项 + {sz})

 

定义 Set object name to: {name}

将 {objectName} 的第 last 项替换为 {name}

 

定义 Move Object: {name1} to position of object: {name2}

将 {~i} 设为 ({objectName} 中第一个 {name1} 的编号 * 11)

将 {~ID} 设为 ({objectName} 中第一个 {name2} 的编号 * 11)

将 {objectData} 的第 ({~i} - 8) 项替换为 {objectData} 的第 ({~ID} - 8) 项

将 {objectData} 的第 ({~i} - 7) 项替换为 {objectData} 的第 ({~ID} - 7) 项

将 {objectData} 的第 ({~i} - 6) 项替换为 {objectData} 的第 ({~ID} - 6) 项

 

定义 Change Object: {name} position by x: {x} y: {y} z: {z}

将 {~i} 设为 ({objectName} 中第一个 {name} 的编号 * 11)

将 {objectData} 的第 ({~i} - 8) 项替换为 ({objectData} 的第 ({~i} - 8) 项 + {x})

将 {objectData} 的第 ({~i} - 7) 项替换为 ({objectData} 的第 ({~i} - 7) 项 + {y})

将 {objectData} 的第 ({~i} - 6) 项替换为 ({objectData} 的第 ({~i} - 6) 项 + {z})

 

定义 Rotate Object: {name1} to rotation of object: {name2}

将 {~i} 设为 ({objectName} 中第一个 {name1} 的编号 * 11)

将 {~ID} 设为 ({objectName} 中第一个 {name2} 的编号 * 11)

将 {objectData} 的第 ({~i} - 2) 项替换为 {objectData} 的第 ({~ID} - 2) 项

将 {objectData} 的第 ({~i} - 1) 项替换为 {objectData} 的第 ({~ID} - 1) 项

将 {objectData} 的第 {~i} 项替换为 {objectData} 的第 {~ID} 项

 

定义 Set Object: {name} rotation to rx: {rx} ry: {ry} rz: {rz}

将 {~i} 设为 ({objectName} 中第一个 {name} 的编号 * 11)

将 {objectData} 的第 ({~i} - 2) 项替换为 {rx}

将 {objectData} 的第 ({~i} - 1) 项替换为 {ry}

将 {objectData} 的第 {~i} 项替换为 {rz}

 

定义 Move Object: {name1} to position of object: {name2}

将 {~i} 设为 ({objectName} 中第一个 {name1} 的编号 * 11)

将 {~ID} 设为 ({objectName} 中第一个 {name2} 的编号 * 11)

将 {objectData} 的第 ({~i} - 8) 项替换为 {objectData} 的第 ({~ID} - 8) 项

将 {objectData} 的第 ({~i} - 7) 项替换为 {objectData} 的第 ({~ID} - 7) 项

将 {objectData} 的第 ({~i} - 6) 项替换为 {objectData} 的第 ({~ID} - 6) 项

定义 Set Object {name} position to x: {x} y: {y} z: {z}

将 {~i} 设为 ({objectName} 中第一个 {name} 的编号 * 11)

将 {objectData} 的第 ({~i} - 8) 项替换为 {x}

将 {objectData} 的第 ({~i} - 7) 项替换为 {y}

将 {objectData} 的第 ({~i} - 6) 项替换为 {z}

 

定义 Change Object: {name} position by x: {x} y: {y} z: {z}

将 {~i} 设为 ({objectName} 中第一个 {name} 的编号 * 11)

将 {objectData} 的第 ({~i} - 8) 项替换为 ({objectData} 的第 ({~i} - 8) 项 + {x})

将 {objectData} 的第 ({~i} - 7) 项替换为 ({objectData} 的第 ({~i} - 7) 项 + {y})

将 {objectData} 的第 ({~i} - 6) 项替换为 ({objectData} 的第 ({~i} - 6) 项 + {z})

 

定义 Rotate Object: {name1} to rotation of object: {name2}

将 {~i} 设为 ({objectName} 中第一个 {name1} 的编号 * 11)

将 {~ID} 设为 ({objectName} 中第一个 {name2} 的编号 * 11)

将 {objectData} 的第 ({~i} - 2) 项替换为 {objectData} 的第 ({~ID} - 2) 项

将 {objectData} 的第 ({~i} - 1) 项替换为 {objectData} 的第 ({~ID} - 1) 项

将 {objectData} 的第 {~i} 项替换为 {objectData} 的第 {~ID} 项

 

定义 Add line at x1: {x1} y1: {y1} z1: {z1} x2: {x2} y2: {y2} z2: {z2} start width: {s1} end width: {s2} material: {mat}

执行 Vert: {x1} {y1} {z1}

将 Line 加入 {objectName}

将 3 加入 {objectData}

将 {s1} 加入 {objectData}

将 {mat} 加入 {objectData}

将 {~pointer} 加入 {objectData}

执行 Vert: {x2} {y2} {z2}

将 {~pointer} 加入 {objectData}

将 {s2} 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

 

定义 Add Triangle at x1: {x1} y1: {y1} z1: {z1} x2: {x2} y2: {y2} z2: {z2} x3: {x3} y3: {y3} z3: {z3} material: {mat} backface cull? {cull}

执行 Vert: {x1} {y1} {z1}

将 Triangle 加入 {objectName}

将 4 加入 {objectData}

将 {mat} 加入 {objectData}

将 {~pointer} 加入 {objectData}

执行 Vert: {x2} {y2} {z2}

将 {~pointer} 加入 {objectData}

执行 Vert: {x3} {y3} {z3}

将 {~pointer} 加入 {objectData}

将 {cull} 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

 

定义 Set Object: {name} scale to sx: {sx} sy: {sy} sz: {sz}

将 {~i} 设为 ({objectName} 中第一个 {name} 的编号 * 11)

将 {objectData} 的第 ({~i} - 5) 项替换为 {sx}

将 {objectData} 的第 ({~i} - 4) 项替换为 {sy}

将 {objectData} 的第 ({~i} - 3) 项替换为 {sz}

 

定义 Objects

执行 Add 3D Mesh: Island at: size: 8 8 8 rotation:

执行 Add 3D Mesh: spaceship at: size: 1.5 1.5 1.5 rotation: 45

执行 Add 3D Mesh: cube at: 15000 20000 size: 35 35 35 rotation:

执行 Add Point at x: 1100 y: -200 z: 0 size: 140 material: cave

执行 Add line at x1: 1100 y1: -200 z1: 0 x2: 1100 y2: 200 z2: 0 start width: 100 end width: 50 material: cave

执行 Add Triangle at x1: 1100 y1: 200 z1: 0 x2: 1100 y2: 130 z2: 0 x3: 1250 y3: 165 z3: 0 material: glass backface cull? 0

执行 Add Point at x: 1700 y: -200 z: 0 size: 140 material: cave

执行 Add line at x1: 1700 y1: -200 z1: 0 x2: 1700 y2: 200 z2: 0 start width: 100 end width: 50 material: cave

执行 Add Triangle at x1: 1700 y1: 200 z1: 0 x2: 1700 y2: 130 z2: 0 x3: 1850 y3: 165 z3: 0 material: red backface cull? 0

 

定义 Update

执行 Change Object: cube rotation by rx: (5 * {Deltatime}) ry: (5 * {Deltatime}) rz: (5 * {Deltatime})

执行 Set Object Island position to x: y: (sin((计时器 * 70)) * 25) z:

执行 Set Object: island rotation to rx: (sin((计时器 * 35)) * 3) ry: (sin((计时器 * 70)) / 3) rz: (cos((计时器 * 70)) / 3)

执行 Set Object spaceship position to x: (sin((计时器 * 60)) * 1400) y: (sin((计时器 * 120)) * 100) z: (cos((计时器 * 60)) * 1400)

执行 Set Object: spaceship rotation to rx: ((计时器 * 60) + 90) ry: (sin((计时器 * 120)) * 12) rz:

 

定义 Change Object: {name} rotation by rx: {rx} ry: {ry} rz: {rz}

将 {~i} 设为 ({objectName} 中第一个 {name} 的编号 * 11)

将 {objectData} 的第 ({~i} - 2) 项替换为 ({objectData} 的第 ({~i} - 2) 项 + {rx})

将 {objectData} 的第 ({~i} - 1) 项替换为 ({objectData} 的第 ({~i} - 1) 项 + {ry})

将 {objectData} 的第 {~i} 项替换为 ({objectData} 的第 {~i} 项 + {rz})

 

定义 Add line at x1: {x1} y1: {y1} z1: {z1} x2: {x2} y2: {y2} z2: {z2} start width: {s1} end width: {s2} material: {mat}

执行 Vert: {x1} {y1} {z1}

将 Line 加入 {objectName}

将 3 加入 {objectData}

将 {s1} 加入 {objectData}

将 {mat} 加入 {objectData}

将 {~pointer} 加入 {objectData}

执行 Vert: {x2} {y2} {z2}

将 {~pointer} 加入 {objectData}

将 {s2} 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

 

定义 Add Point at x: {x} y: {y} z: {z} size: {size} material: {mat}

执行 Vert: {x} {y} {z}

将 Point 加入 {objectName}

将 2 加入 {objectData}

将 {size} 加入 {objectData}

将 {mat} 加入 {objectData}

将 {~pointer} 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

 

定义 Vert: {x} {y} {z}

将 {~ID} 设为 连接 {x} 和 连接 - 和 连接 {y} 和 连接 - 和 {z}

如果 {objectVertID} 包含 {~ID} ? 那么

将 {~pointer} 设为 {objectVertID} 中第一个 {~ID} 的编号

否则

将 {x} 加入 {objectVertX}

将 {y} 加入 {objectVertY}

将 {z} 加入 {objectVertZ}

将 {~ID} 加入 {objectVertID}

将 {~pointer} 设为 {objectVertID} 的项目数

 

定义 Add 3D Mesh of Points {mesh}

将 {~i} 设为 {meshData} 的第 ((({meshes} 中第一个 {mesh} 的编号 - 1) * 4) - 3) 项

将 {~repeat} 设为 ({meshData} 的第 (({meshes} 中第一个 {mesh} 的编号 * 4) - 3) 项 - {~i})

重复执行 {~repeat} 次

将 {~i} 增加 1

执行 Add Point at x: {vertX} 的第 {~i} 项 y: {vertY} 的第 {~i} 项 z: {vertZ} 的第 {~i} 项 size: 100 material: leaf

 

定义 Add Triangle at x1: {x1} y1: {y1} z1: {z1} x2: {x2} y2: {y2} z2: {z2} x3: {x3} y3: {y3} z3: {z3} material: {mat} backface cull? {cull}

执行 Vert: {x1} {y1} {z1}

将 Triangle 加入 {objectName}

将 4 加入 {objectData}

将 {mat} 加入 {objectData}

将 {~pointer} 加入 {objectData}

执行 Vert: {x2} {y2} {z2}

将 {~pointer} 加入 {objectData}

执行 Vert: {x3} {y3} {z3}

将 {~pointer} 加入 {objectData}

将 {cull} 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

 

定义 Add Point at x: {x} y: {y} z: {z} size: {size} material: {mat}

执行 Vert: {x} {y} {z}

将 Point 加入 {objectName}

将 2 加入 {objectData}

将 {size} 加入 {objectData}

将 {mat} 加入 {objectData}

将 {~pointer} 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

将 加入 {objectData}

定义 Change mesh to: {mesh} for object: {name}

如果 {meshes} 包含 {mesh} ? 那么

将 {objectData} 的第 (({objectName} 中第一个 {name} 的编号 * 11) - 9) 项替换为 {mesh}

 

定义 Vert: {x} {y} {z}

将 {~ID} 设为 连接 {x} 和 连接 - 和 连接 {y} 和 连接 - 和 {z}

如果 {objectVertID} 包含 {~ID} ? 那么

将 {~pointer} 设为 {objectVertID} 中第一个 {~ID} 的编号

否则

将 {x} 加入 {objectVertX}

将 {y} 加入 {objectVertY}

将 {z} 加入 {objectVertZ}

将 {~ID} 加入 {objectVertID}

将 {~pointer} 设为 {objectVertID} 的项目数

 

定义 Add 3D Mesh of Points {mesh}

将 {~i} 设为 {meshData} 的第 ((({meshes} 中第一个 {mesh} 的编号 - 1) * 4) - 3) 项

将 {~repeat} 设为 ({meshData} 的第 (({meshes} 中第一个 {mesh} 的编号 * 4) - 3) 项 - {~i})

重复执行 {~repeat} 次

将 {~i} 增加 1

执行 Add Point at x: {vertX} 的第 {~i} 项 y: {vertY} 的第 {~i} 项 z: {vertZ} 的第 {~i} 项 size: 100 material: leaf

 

定义 Delete object: {name}

重复执行 11 次

删除 {objectData} 的第 (({objectName} 中第一个 {name} 的编号 * 11) - 10) 项

删除 {objectName} 的第 {objectName} 中第一个 {name} 的编号 项

 

Meshes

代码

当按下 k 键

如果 (用户名 = TheGoodGuy8000) 那么

将 {~saveLoad} 设为 1

执行 Reset

将 {~saveLoad} 设为 0

停止 全部脚本

 

当按下 t 键

将 {~stats} 设为 (1 - {~stats})

如果 ({~stats} = 1) 那么

显示列表 {stats}

否则

隐藏列表 {stats}

 

当接收到 Meshes

执行 Reset

执行 Meshes

 

当 计时器 > {~temp}

将 {~temp} 设为 计时器

如果 (OBJ. File = {~last}) 不成立 那么

执行 load file

删除 {OBJ. File} 的全部项目

将 Right click this list and select import 加入 {OBJ. File}

将 In your file explorer make SURE to select "All Files" in the bottom right corner 加入 {OBJ. File}

将 Do NOT select "Custom Files" in the bottom right corner 加入 {OBJ. File}

将 Select your desired file 加入 {OBJ. File}

将 {~last} 设为 OBJ. File

 

定义 Reset

将 {~temp} 设为 9999999999

将 {~stats} 设为 0

隐藏列表 {stats}

隐藏列表 {ERROR}

隐藏列表 {Your File}

隐藏列表 {OBJ. File}

删除 {ERROR} 的全部项目

删除 {meshes} 的全部项目

删除 {meshData} 的全部项目

删除 {triColor} 的全部项目

删除 {quadColor} 的全部项目

删除 {objectVertID} 的全部项目

删除 {objectVertX} 的全部项目

删除 {objectVertY} 的全部项目

删除 {objectVertZ} 的全部项目

删除 {vertX} 的全部项目

删除 {vertY} 的全部项目

删除 {vertZ} 的全部项目

删除 {objectData} 的全部项目

删除 {objectName} 的全部项目

删除 {vertNormX} 的全部项目

删除 {vertNormY} 的全部项目

删除 {vertNormZ} 的全部项目

删除 {materials} 的全部项目

删除 {materialColor} 的全部项目

删除 {textureCostume} 的全部项目

删除 {materialCull} 的全部项目

删除 {STTFConstants1} 的全部项目

删除 {STTFConstants2} 的全部项目

删除 {STTFConstants3} 的全部项目

删除 {STTFConstants4} 的全部项目

删除 {STTFConstants5} 的全部项目

删除 {triVertIndexA} 的全部项目

删除 {triVertIndexB} 的全部项目

删除 {triVertIndexC} 的全部项目

删除 {triNormIndexA} 的全部项目

删除 {triNormIndexB} 的全部项目

删除 {triNormIndexC} 的全部项目

删除 {quadNormIndexA} 的全部项目

删除 {quadNormIndexB} 的全部项目

删除 {quadNormIndexC} 的全部项目

删除 {quadNormIndexD} 的全部项目

删除 {quadVertIndexA} 的全部项目

删除 {quadVertIndexB} 的全部项目

删除 {quadVertIndexC} 的全部项目

删除 {quadVertIndexD} 的全部项目

删除 {OBJ. File} 的全部项目

将 Right click this list and select import 加入 {OBJ. File}

将 In your file explorer make SURE to select "All Files" in the bottom right corner 加入 {OBJ. File}

将 Do NOT select "Custom Files" in the bottom right corner 加入 {OBJ. File}

将 Select your desired file 加入 {OBJ. File}

显示列表 {OBJ. File}

隐藏列表 {OBJ. File}

将 {~last} 设为 OBJ. File

 

当按下 t 键

将 {~stats} 设为 (1 - {~stats})

如果 ({~stats} = 1) 那么

显示列表 {stats}

否则

隐藏列表 {stats}

 

当按下 k 键

如果 (用户名 = TheGoodGuy8000) 那么

将 {~saveLoad} 设为 1

执行 Reset

将 {~saveLoad} 设为 0

停止 全部脚本

 

当接收到 Meshes

执行 Reset

执行 Meshes

 

当 计时器 > {~temp}

将 {~temp} 设为 计时器

如果 (OBJ. File = {~last}) 不成立 那么

执行 load file

删除 {OBJ. File} 的全部项目

将 Right click this list and select import 加入 {OBJ. File}

将 In your file explorer make SURE to select "All Files" in the bottom right corner 加入 {OBJ. File}

将 Do NOT select "Custom Files" in the bottom right corner 加入 {OBJ. File}

将 Select your desired file 加入 {OBJ. File}

将 {~last} 设为 OBJ. File

 

定义 format read face {#}

将 {~i2} 增加 {#}

将 {~text} 设为

重复执行直到 ((({OBJ. File} 的第 {~i} 项 的第 {~i2} 个字符 = /) 或 ({OBJ. File} 的第 {~i} 项 的第 {~i2} 个字符 = )) 或 ({~i2} > {OBJ. File} 的第 {~i} 项 的字符数))

将 {~text} 设为 连接 {~text} 和 {OBJ. File} 的第 {~i} 项 的第 {~i2} 个字符

将 {~i2} 增加 1

 

定义 format file {file} {space}

将 {~objFile} 设为 连接 {~objFile} 和 连接 {file} 和 {space}

 

定义 Load Obj. File Name: {name} Data: {obj}

如果 ({obj} 的第 1 个字符 = ») 那么

将 {~material} 设为 None

将 {~file} 设为 {obj}

将 {name} 加入 {meshes}

将 {~i2} 设为 2

重复执行直到 ({~file} 的字符数 < {~i2})

如果 {~items} 包含 {~file} 的第 {~i2} 个字符 ? 那么

将 {~ID} 设为 {~items} 中第一个 {~file} 的第 {~i2} 个字符 的编号

如果 ({~ID} < 3) 那么

如果 ({~ID} = 1) 那么

执行 obj. read

将 ({~text} * -100) 加入 {vertX}

执行 obj. read

将 ({~text} * 100) 加入 {vertY}

执行 obj. read

将 ({~text} * 100) 加入 {vertZ}

否则

执行 obj. read

将 {~text} 加入 {triVertIndexA}

执行 obj. read

将 {~text} 加入 {triNormIndexA}

执行 obj. read

将 {~text} 加入 {triVertIndexB}

执行 obj. read

将 {~text} 加入 {triNormIndexB}

执行 obj. read

将 {~text} 加入 {triVertIndexC}

执行 obj. read

将 {~text} 加入 {triNormIndexC}

将 {~material} 加入 {triColor}

否则

如果 ({~ID} < 5) 那么

如果 ({~ID} = 3) 那么

执行 obj. read

将 {~text} 加入 {quadVertIndexA}

执行 obj. read

将 {~text} 加入 {quadNormIndexA}

执行 obj. read

将 {~text} 加入 {quadVertIndexB}

执行 obj. read

将 {~text} 加入 {quadNormIndexB}

执行 obj. read

将 {~text} 加入 {quadVertIndexC}

执行 obj. read

将 {~text} 加入 {quadNormIndexC}

执行 obj. read

将 {~text} 加入 {quadVertIndexD}

执行 obj. read

将 {~text} 加入 {quadNormIndexD}

将 {~material} 加入 {quadColor}

否则

如果 ({~ID} = 4) 那么

执行 obj. read

将 ( - {~text}) 加入 {vertNormX}

执行 obj. read

将 {~text} 加入 {vertNormY}

执行 obj. read

将 {~text} 加入 {vertNormZ}

否则

如果 ({~ID} = 5) 那么

将 {~i2} 增加 1

将 {~text} 设为

重复执行直到 ({~file} 的第 {~i2} 个字符 = )

将 {~text} 设为 连接 {~text} 和 {~file} 的第 {~i2} 个字符

将 {~i2} 增加 1

如果 {materials} 包含 {~text} ? 那么

将 {~material} 设为 {materials} 中第一个 {~text} 的编号

否则

将 {~text} 加入 {materials}

将 (16711900 * {materials} 的项目数 除以 2 的余数) 加入 {materialColor}

将 error_br_a 加入 {textureCostume}

将 10.392304845413262 加入 {STTFConstants1}

将 0.24605149764209297 加入 {STTFConstants2}

将 -17.633489373763908 加入 {STTFConstants3}

将 -28.65260025725912 加入 {STTFConstants4}

将 -37.46934494414107 加入 {STTFConstants5}

将 1 加入 {materialCull}

将 {~material} 设为 {materials} 中第一个 {~text} 的编号

否则

将 {~i2} 增加 1

将 {vertX} 的项目数 加入 {meshData}

将 {vertNormX} 的项目数 加入 {meshData}

将 {quadVertIndexA} 的项目数 加入 {meshData}

将 {triVertIndexA} 的项目数 加入 {meshData}

定义 format read type {#}

如果 ({#} < 3) 那么

如果 ({#} = 1) 那么

将 {~i2} 设为 3

执行 format read

将 {~tempA} 设为 ({~text} + 0)

执行 format read

将 {~tempB} 设为 ({~text} + 0)

执行 format read

将 {~tempC} 设为 ({~text} + 0)

执行 format file

执行 format file

执行 format file

执行 format file

否则

将 {~i2} 设为 4

执行 format read

将 {~tempA} 设为 ({~text} + 0)

执行 format read

将 {~tempB} 设为 ({~text} + 0)

执行 format read

将 {~tempC} 设为 ({~text} + 0)

执行 format file

执行 format file

执行 format file

执行 format file

否则

将 ERROR: 加入 {ERROR}

Your OBJ. File is not formatted correctly 加入 {ERROR}

To format your file, select the Meshes sprite and click Import OBJ. File 加入 {ERROR}

将 连接 File: " 和 连接 {name} 和 " 加入 {ERROR}

显示列表 {ERROR}

如果 ({#} = 3) 那么

将 {~i2} 设为 3

执行 format read face

将 {~tempA} 设为 {~text}

执行 format read face

执行 format read face

将 {~tempB} 设为 {~text}

将 {~i2} 增加 1

执行 format read face

将 {~tempC} 设为 {~text}

执行 format read face

执行 format read face

将 {~tempD} 设为 {~text}

将 {~i2} 增加 1

执行 format read face

将 {~tempE} 设为 {~text}

执行 format read face

执行 format read face

将 {~tempF} 设为 {~text}

如果 ({~i2} < {OBJ. File} 的第 {~i} 项 的字符数) 那么

将 {~i2} 增加 1

执行 format read face

将 {~tempG} 设为 {~text}

执行 format read face

执行 format read face

将 {~tempH} 设为 {~text}

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

如果 ({~i2} < {OBJ. File} 的第 {~i} 项 的字符数) 那么

将 {~faceError} 设为 1

否则

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

否则

将 {~i2} 设为 8

执行 format read

执行 format file

执行 format file

 

定义 format read face {#}

将 {~i2} 增加 {#}

将 {~text} 设为

重复执行直到 ((({OBJ. File} 的第 {~i} 项 的第 {~i2} 个字符 = /) 或 ({OBJ. File} 的第 {~i} 项 的第 {~i2} 个字符 = )) 或 ({~i2} > {OBJ. File} 的第 {~i} 项 的字符数))

将 {~text} 设为 连接 {~text} 和 {OBJ. File} 的第 {~i} 项 的第 {~i2} 个字符

将 {~i2} 增加 1

 

定义 format file {file} {space}

将 {~objFile} 设为 连接 {~objFile} 和 连接 {file} 和 {space}

 

定义 format read type {#}

如果 ({#} < 3) 那么

如果 ({#} = 1) 那么

将 {~i2} 设为 3

执行 format read

将 {~tempA} 设为 ({~text} + 0)

执行 format read

将 {~tempB} 设为 ({~text} + 0)

执行 format read

将 {~tempC} 设为 ({~text} + 0)

执行 format file

执行 format file

执行 format file

执行 format file

否则

将 {~i2} 设为 4

执行 format read

将 {~tempA} 设为 ({~text} + 0)

执行 format read

将 {~tempB} 设为 ({~text} + 0)

执行 format read

将 {~tempC} 设为 ({~text} + 0)

执行 format file

执行 format file

执行 format file

执行 format file

否则

如果 ({#} = 3) 那么

将 {~i2} 设为 3

执行 format read face

将 {~tempA} 设为 {~text}

执行 format read face

执行 format read face

将 {~tempB} 设为 {~text}

将 {~i2} 增加 1

执行 format read face

将 {~tempC} 设为 {~text}

执行 format read face

执行 format read face

将 {~tempD} 设为 {~text}

将 {~i2} 增加 1

执行 format read face

将 {~tempE} 设为 {~text}

执行 format read face

执行 format read face

将 {~tempF} 设为 {~text}

如果 ({~i2} < {OBJ. File} 的第 {~i} 项 的字符数) 那么

将 {~i2} 增加 1

执行 format read face

将 {~tempG} 设为 {~text}

执行 format read face

执行 format read face

将 {~tempH} 设为 {~text}

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

如果 ({~i2} < {OBJ. File} 的第 {~i} 项 的字符数) 那么

将 {~faceError} 设为 1

否则

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

执行 format file

否则

将 {~i2} 设为 8

执行 format read

执行 format file

执行 format file

 

定义 obj. read {#}

将 {~i2} 增加 {#}

将 {~text} 设为

重复执行直到 ((({~file} 的第 {~i2} 个字符 = ) 或 {~items} 包含 {~file} 的第 {~i2} 个字符 ?) 或 ({~file} 的字符数 < {~i2}))

将 {~text} 设为 连接 {~text} 和 {~file} 的第 {~i2} 个字符

将 {~i2} 增加 1

 

定义 Set Material: {name} to color: {color}

如果 {materials} 包含 {name} ? 那么

将 {materialColor} 的第 {materials} 中第一个 {name} 的编号 项替换为 {color}

否则

将 {name} 加入 {materials}

将 {color} 加入 {materialColor}

 

定义 Meshes

执行 Load Obj. File Name: island Data: »v0.002725 -1.002578 -0.069705v0.706002 -0.458702 0.554755v-0.343556 -0.389919 0.874358v-0.860902 -0.447736 0.061683v-0.338177 -0.494911 -0.810233v0.635526 -0.536809 -0.52547v-0.212531 -0.672047 0.746568v-0.068132 -0.872519 0.386781v-0.032256 -1.024495 0.164922v0.197911 -0.989499 -0.033743v0.346763 -0.803911 0.338705v0.611665 -0.71981 0.483704v0.492093 -0.479584 0.720228v0.25136 -0.511723 0.834453v-0.047949 -0.427793 0.916927v0.781326 -0.496286 -0.28178v0.760023 -0.558901 -0.028109v0.80279 -0.508538 0.194099v0.108006 -0.918165 -0.307266v0.536886 -0.667267 -0.495789v-0.792748 -0.663182 -0.098239v-0.523165 -0.863645 0.00225v-0.306388 -0.971563 -0.051742v-0.47356 -0.455766 0.716342v-0.777941 -0.450398 0.407405v-0.78508 -0.534296 0.287372v-0.216482 -0.655453 -0.706221v-0.871104 -0.433727 -0.237991v-0.769204 -0.475067 -0.350752v-0.451141 -0.551202 -0.686157v-0.12196 -0.553939 -0.868661v0.299499 -0.43293 -0.862899v0.510626 -0.494766 -0.640429v0.898867 0.021463 0.243902v0.883218 -0.206577 0.446332v0.90759 -0.312614 -0.260856v0.919766 0.007709 -0.257724v0.027429 -0.004778 1.00108v0.654888 -0.305068 0.643275v0.688472 0.006802 0.763485v-0.944353 0.005298 0.272266v-0.961168 -0.278463 0.169611v-0.462476 -0.217829 0.891653v-0.680523 0.008508 0.746355v-0.62394 -0.002018 -0.860254v-0.377122 -0.172187 -0.849963v-1.008127 -0.203527 -0.226064v-0.975696 -0.006222 -0.306862v0.554202 0.005606 -0.832295v0.713135 -0.351137 -0.605312v-0.202192 -0.24891 -1.00255v-0.065154 -0.002377 -1.008738v0.783212 -0.039531 -0.556047v-0.317753 0.000851 -0.995627v-0.988768 0.009184 -0.09335v-0.305112 -0.009002 0.964719v0.77674 0.003266 0.666502v0.192777 0.015461 -0.978461v0.54656 -0.26715 -0.811755v0.199172 -0.241083 -0.953628v-0.792056 0.005509 -0.564609v-0.666001 -0.24159 -0.757789v-0.846286 -0.317194 -0.430742v-0.793569 -0.013459 0.626472v-0.822781 -0.287956 0.496507v-0.596573 -0.308532 0.712591v0.313425 -0.007731 0.965738v0.16427 -0.339206 0.910743v0.599389 -0.20425 0.719054v0.930102 0.000421 0.078816v0.945737 -0.286503 0.136114v0.935576 -0.278973 -0.201291v0.387593 -0.730531 -0.576933v0.154198 -0.796338 -0.581251v-0.437167 -0.750352 -0.527568v-0.370423 -0.84876 -0.332144v-0.567292 -0.709736 -0.398646v-0.710144 -0.778578 0.092069v-0.334458 -0.849183 0.325253v-0.512221 -0.762767 0.432502v0.569723 -0.711449 -0.124813v0.687062 -0.773381 0.182738v0.662431 -0.78423 0.155886v-0.155177 -0.687544 0.731312v0.145636 -0.82686 0.535644v0.443975 -0.75103 0.557264v0.848735 0.062299 0.244041v0.852174 0.064208 -0.249974v0.035474 0.064825 0.918876v0.633098 0.064298 0.706601v-0.874834 0.063466 0.259708v-0.633651 0.06438 0.696567v-0.576728 0.064873 -0.787316v-0.893174 0.064272 -0.28224v0.515998 0.062578 -0.774638v-0.056811 0.065258 -0.924683v0.649113 0.065615 -0.552993v-0.292095 0.064242 -0.917696v-0.92169 0.06407 -0.090659v-0.28201 0.063763 0.880363v0.725472 0.064639 0.59665v0.185145 0.062977 -0.919707v-0.735153 0.062208 -0.530682v-0.71947 0.065593 0.567521v0.252096 0.06341 0.891512v0.853591 0.064468 -0.002737v0.308458 -0.622495 -0.378837v0.638356 -0.452716 -0.491624v0.476564 -0.449438 -0.659393v0.785141 -0.482411 -0.270715v0.782678 -0.474763 0.03589v0.224071 -0.63686 -0.020638v0.570121 -1.553398 -0.477345v0.571383 -1.606005 -0.115018v0.5723 -1.557983 -0.288583v0.570866 -1.602535 -0.215708v0.571373 -1.561544 -0.38407v0.571161 -1.608612 -0.166232v0.57003 -1.557301 -0.315801v0.571512 -1.587748 -0.252622v0.5712 -1.571475 -0.43819v0.57562 -1.776576 -0.140832v0.57562 -1.75385 -0.148049v0.57562 -1.775264 -0.157867v0.57562 -1.796782 -0.148007v0.57562 -2.013252 -0.210971v0.57562 -1.998101 -0.215783v0.57562 -2.012378 -0.222329v0.57562 -2.026725 -0.215755v0.57562 -1.852004 -0.267732v0.57562 -1.834843 -0.273182v0.57562 -1.851014 -0.280596v0.57562 -1.867263 -0.27315v0.57562 -1.700232 -0.304305v0.57562 -1.680039 -0.310718v0.57562 -1.699066 -0.319442v0.57562 -1.718186 -0.310681v0.57562 -1.766451 -0.415911v0.57562 -1.746158 -0.422356v0.57562 -1.76528 -0.431123v0.57562 -1.784495 -0.422318v0.57562 -2.140146 -0.34605v0.57562 -2.127934 -0.349929v0.57562 -2.139441 -0.355204v0.57562 -2.151004 -0.349906v0.56994 -1.595153 -0.477373v0.571413 -1.631791 -0.115018v0.573134 -1.601727 -0.287714v0.571077 -1.638805 -0.210335v0.571003 -1.599914 -0.384093v0.571226 -1.635739 -0.166232v0.569789 -1.592136 -0.330453v0.57203 -1.625295 -0.252598v0.570995 -1.606478 -0.438205v0.57562 -1.947326 -0.392109v0.57562 -1.932152 -0.396928v0.57562 -1.94645 -0.403484v0.57562 -1.960818 -0.3969v0.57562 -1.894956 -0.179133v0.57562 -1.879178 -0.184144v0.57562 -1.894046 -0.19096v0.57562 -1.908986 -0.184115n-0.8369 -0.5424 0.0732n0.4842 -0.5086 -0.712n0.6857 -0.1785 0.7057n-0.0518 0.0037 -0.9987n-0.6985 -0.3052 -0.6473n-0.3372 -0.5359 -0.774n-0.9885 0.1337 -0.0702n-0.4989 0.0738 0.8635n-0.1048 -0.176 0.9788n0.9421 0.1841 0.2802n0.3509 -0.244 -0.9041n-0.3456 -0.4519 -0.8224n-0.7053 -0.5628 -0.4311n-0.8032 -0.4584 -0.3805n-0.6891 -0.1699 -0.7045n-0.7064 -0.2573 0.6594n0.4659 -0.3448 0.8149n0.8702 -0.1202 -0.4778n0.4532 -0.3627 0.8143n-0.8591 -0.5118 0.0051n0.6091 -0.2341 0.7578n0.9984 0.0489 -0.0293n-0.9625 0.2709 -0.0143n-0.6205 -0.5023 0.6022n0.3718 -0.0802 -0.9249n0.8254 -0.5602 -0.0694n0.1195 -0.3726 -0.9203n-0.9926 0.0151 0.1207n0.7805 -0.4923 -0.3854n0.5135 -0.5663 -0.6447n-0.6567 -0.5702 -0.4936n0.836 -0.5475 -0.0372n-0.206 -0.354 -0.9123n0.8374 -0.4641 0.2886n0.6941 -0.3228 0.6434n0.1176 -0.2138 0.9698n0.9807 0.0881 0.1747n-0.8685 -0.0582 -0.4923n-0.6802 -0.2533 0.6879n-0.8076 -0.1049 -0.5803n0.1223 -0.0927 -0.9882n-0.9184 -0.0853 0.3864n0.7623 -0.0698 -0.6434n0.4406 -0.1678 0.8819n-0.5781 -0.4664 0.6695n-0.166 -0.2117 0.9631n-0.84 -0.4201 0.3434n0.1642 -0.3284 0.9301n-0.7 -0.246 0.6704n-0.8296 -0.1852 0.5268n0.9108 -0.0306 -0.4118n-0.6294 0.7714 -0.0936n0.572 0.7402 -0.3534n-0.5569 0.7596 -0.336n-0.5312 0.7668 0.3604n-0.5825 0.7599 0.2885n0.2634 0.7954 0.5459n-0.6316 0.7706 0.0853n-0.5451 0.7602 -0.3534n0.5671 0.7327 -0.3761n-0.2989 0.7619 0.5747n-0.0798 0.765 0.639n0.2583 0.7673 -0.587n0.6302 0.7762 0.0197n-0.0222 0.7796 -0.6259n0.02 0.7783 -0.6276n-0.2543 0.7893 -0.5588n0.6181 0.7572 0.2111n0.6427 0.7661 -0.0037n0.0876 0.7552 0.6496n0.4496 0.8084 0.38n-0.0049 0.9999 0.0127n0.0054 0.9999 -0.0096n-0.0012 1 0.0021n-0.0009 1 0.0014n0.0029 1 -0.006n-0.0042 1 0.0083n0.0011 1 -0.0016n-0.0043 1 0.0074n0.0098 0.9998 -0.0196n-0.1758 -0.8883 0.4243n0.5674 -0.4769 -0.6713n0.0538 -0.5952 0.8018n-0.1055 -0.9885 -0.1081n-0.3297 -0.6022 -0.7271n-0.9494 -0.3135 0.0177n-0.5049 -0.8177 -0.2766n-0.6273 -0.4846 0.6096n-0.1848 -0.4754 0.8601n0.9143 -0.3958 -0.0863n0.1281 -0.7047 0.6979n0.5843 -0.4028 0.7045n0.4523 0.6123 0.6485n0.2571 -0.902 0.3467n-0.3775 -0.8887 0.2604n-0.1209 -0.887 0.4457n0.0814 -0.9934 -0.0807n0.2597 -0.8979 -0.3555n0.6886 -0.6137 -0.3863n0.1963 -0.6485 -0.7355n0.4515 -0.8805 -0.1447n-0.7182 -0.5243 -0.4575n-0.9047 -0.3984 0.1511n0.1855 -0.9584 0.2171n-0.7028 -0.563 0.4349n-0.3583 -0.6836 -0.6359n0.1165 -0.951 -0.2863n-0.5246 -0.5413 0.6571n-0.1951 -0.8236 0.5326n0.2356 -0.9633 0.1283n0.8727 -0.3938 0.2887n0.3806 -0.8794 0.2861n-0.6881 -0.481 -0.5432n0.422 -0.5205 0.7423n-0.3127 -0.923 0.2244n-0.101 0.6194 -0.7785n0.4973 -0.7856 -0.3681n-0.115 -0.8112 -0.5734n-0.1085 -0.9018 -0.4183n-0.1139 -0.9193 -0.3768n-0.4814 -0.8379 -0.2572n-0.5124 -0.8191 -0.2581n0.2374 0.9668 0.0944n1 0.0018 -0.0051n0.9998 -0.0008 0.0192n0.9961 0.0197 -0.0856n0.9993 0.0373 -0.0102n0.999 0.0407 0.0171n1 0 0n1 0.0018 -0.0041n1 0.004 -0.0046n0.9996 0.0116 0.0244n0.9991 0.017 0.0394n0.9968 0.021 -0.0769n0.9997 -0.0128 0.0222n1 -0.0078 -0.0005n0.9996 -0.005 -0.0291n0.3355 -0.8782 -0.3408n0.2762 -0.9607 0.0264mDirt t4 1 26 1 42 1t6 2 33 2 50 2t2 3 35 3 39 3t51 4 54 4 52 4t51 5 46 5 54 5t46 6 45 6 54 6t47 7 55 7 48 7t43 8 56 8 44 8t15 9 38 9 56 9t35 10 34 10 57 10t59 11 32 11 60 11t31 12 5 12 51 12t29 13 28 13 63 13t63 14 28 14 47 14q46 15 51 15 5 15 30 15t66 16 43 16 44 16t68 17 69 17 67 17t53 18 36 18 50 18q69 19 39 19 40 19 67 19q4 20 42 20 47 20 28 20q13 21 2 21 39 21 69 21q72 22 37 22 70 22 71 22q17 23 111 23 110 23 16 23q66 24 65 24 25 24 24 24q59 25 60 25 58 25 49 25q16 26 36 26 72 26 17 26q31 27 51 27 60 27 32 27q42 28 41 28 55 28 47 28q6 29 50 29 36 29 16 29q33 30 32 30 59 30 50 30q29 31 63 31 62 31 30 31q72 32 71 32 18 32 17 32q46 33 30 33 62 33 45 33q18 34 71 34 35 34 2 34q39 35 35 35 57 35 40 35q68 36 67 36 38 36 15 36q71 37 70 37 34 37 35 37q62 38 63 38 61 38 45 38q64 39 65 39 66 39 44 39q63 40 47 40 48 40 61 40q60 41 51 41 52 41 58 41q65 42 64 42 41 42 42 42q50 43 59 43 49 43 53 43q14 44 13 44 69 44 68 44q24 45 3 45 43 45 66 45q15 46 56 46 43 46 3 46q26 47 25 47 65 47 42 47t15 48 14 48 68 48q6 49 108 49 109 49 33 49q16 50 110 50 108 50 6 50q37 51 72 51 36 51 53 51mGrass q94 52 48 52 55 52 99 52q95 53 97 53 53 53 49 53q93 54 45 54 61 54 103 54q92 55 104 55 64 55 44 55q41 56 64 56 104 56 91 56q90 57 105 57 67 57 40 57q99 58 55 58 41 58 91 58q94 59 103 59 61 59 48 59q88 60 37 60 53 60 97 60q92 61 44 61 56 61 100 61q89 62 100 62 56 62 38 62q102 63 95 63 49 63 58 63q87 64 34 64 70 64 106 64q98 65 96 65 52 65 54 65q102 66 58 66 52 66 96 66q93 67 98 67 54 67 45 67q101 68 57 68 34 68 87 68q88 69 106 69 70 69 37 69q105 70 89 70 38 70 67 70q90 71 40 71 57 71 101 71q100 72 89 72 104 72 92 72q89 73 105 73 91 73 104 73q105 74 90 74 99 74 91 74q90 75 101 75 94 75 99 75q101 76 87 76 103 76 94 76q87 77 106 77 93 77 103 77q106 78 88 78 98 78 93 78q88 79 97 79 96 79 98 79q97 80 95 80 102 80 96 80mStone q8 81 7 81 80 81 79 81q73 82 32 82 33 82 20 82q84 83 14 83 15 83 7 83t23 84 1 84 9 84t27 85 75 85 30 85t21 86 4 86 28 86t22 87 78 87 21 87t80 88 24 88 25 88t7 89 15 89 3 89t18 90 82 90 17 90q86 91 14 91 84 91 85 91t12 92 2 92 13 92q107 93 20 93 33 93 109 93t83 94 11 94 10 94q23 95 9 95 79 95 22 95q8 96 85 96 84 96 7 96t1 97 10 97 9 97t19 98 74 98 73 98q82 99 83 99 81 99 17 99q74 100 31 100 32 100 73 100q19 101 73 101 20 101 81 101q21 102 28 102 29 102 77 102q26 103 4 103 21 103 78 103q82 104 12 104 11 104 83 104q78 105 80 105 25 105 26 105q27 106 30 106 5 106 31 106t1 107 19 107 10 107q7 108 3 108 24 108 80 108q9 109 85 109 8 109 79 109q11 110 12 110 86 110 85 110q12 111 82 111 18 111 2 111q10 112 11 112 85 112 9 112q75 113 77 113 29 113 30 113q86 114 12 114 13 114 14 114q79 115 80 115 78 115 22 115q112 116 111 116 17 116 81 116q19 117 81 117 83 117 10 117q31 118 74 118 75 118 27 118q74 119 19 119 76 119 75 119q19 120 1 120 23 120 76 120q23 121 22 121 75 121 76 121q22 122 21 122 77 122 75 122mwater q107 123 112 123 81 123 20 123q114 124 118 124 116 124 81 124q116 125 120 125 115 125 81 125q20 126 81 126 115 126 119 126q121 127 113 127 20 127 117 127t119 128 117 128 20 128mwhite q132 129 131 129 130 129 133 129q140 129 139 129 138 129 141 129q124 129 123 129 122 129 125 129q157 129 156 129 155 129 158 129q161 129 160 129 159 129 162 129q128 129 127 129 126 129 129 129q144 129 143 129 142 129 145 129q114 130 147 130 151 130 118 130q118 131 151 131 149 131 116 131q116 132 149 132 153 132 120 132q120 133 153 133 148 133 115 133q115 134 148 134 152 134 119 134q119 135 152 135 150 135 117 135q117 136 150 136 154 136 121 136q121 137 154 137 146 137 113 137q136 129 135 129 134 129 137 129mcave q108 138 110 138 107 138 109 138q112 139 107 139 110 139 111 139v-0.35688 0.064065 0.482779v-0.344313 0.64621 0.493127v-0.294069 0.064065 0.459258v-0.296748 0.64621 0.475315v-0.242294 0.064065 0.501893v-0.25754 0.64621 0.507602v-0.25333 0.064065 0.568049v-0.265897 0.64621 0.557701v-0.316141 0.064065 0.59157v-0.313462 0.64621 0.575513v-0.367915 0.064065 0.548935v-0.35267 0.64621 0.543226v-0.319765 0.574171 0.525885v-0.058824 0.740772 0.458256v-0.174811 0.740772 0.753156v-0.491123 0.740772 0.733977v-0.570621 0.740772 0.427218v-0.303445 0.740772 0.256817v-0.068909 1.010339 0.624552v-0.336084 1.010339 0.794953v-0.580706 1.010339 0.593514v-0.464719 1.010339 0.298614v-0.148407 1.010339 0.317794v-0.319765 1.17694 0.525885n0.9861 0.0242 0.1645n0.6355 0.0242 -0.7717n0.3506 0.0242 0.9362n-0.9861 0.0242 -0.1645n-0.3506 0.0242 -0.9362n-0.6355 0.0242 0.7717n0.5649 -0.7947 0.2222n0.3859 -0.7947 -0.4686n-0.0367 -0.7947 0.606n-0.5877 -0.7947 0.1523n-0.3264 -0.7947 -0.5118n0.6244 -0.1876 -0.7582n0.9141 -0.1876 0.3595n-0.0595 -0.1876 0.9804n-0.9508 -0.1876 0.2464n-0.5282 -0.1876 -0.8282n0.9508 0.1876 -0.2464n0.5282 0.1876 0.8281n-0.6244 0.1876 0.7582n-0.9141 0.1876 -0.3595n0.0595 0.1876 -0.9804n0.5877 0.7947 -0.1523n0.3264 0.7947 0.5118n-0.3859 0.7947 0.4686n-0.5649 0.7947 -0.2222n0.0367 0.7947 -0.606mtree q170 140 169 140 167 140 168 140q166 141 168 141 167 141 165 141q172 142 171 142 169 142 170 142q174 143 164 143 163 143 173 143q164 144 166 144 165 144 163 144q174 145 173 145 171 145 172 145mleaf t175 146 176 146 177 146t176 147 175 147 180 147t175 148 177 148 178 148t175 149 178 149 179 149t175 150 179 150 180 150t176 151 180 151 185 151t177 152 176 152 181 152t178 153 177 153 182 153t179 154 178 154 183 154t180 155 179 155 184 155t176 156 185 156 181 156t177 157 181 157 182 157t178 158 182 158 183 158t179 159 183 159 184 159t180 160 184 160 185 160t181 161 185 161 186 161t182 162 181 162 186 162t183 163 182 163 186 163t184 164 183 164 186 164t185 165 184 165 186 165v0.080957 0.064065 -0.565232v0.089338 0.568143 -0.561163v0.136496 0.064065 -0.602834v0.137162 0.568143 -0.593541v0.196829 0.064065 -0.573537v0.189115 0.568143 -0.568314v0.201624 0.064065 -0.506638v0.193243 0.568143 -0.510708v0.146085 0.064065 -0.469037v0.145419 0.568143 -0.478329v0.085752 0.064065 -0.498334v0.093466 0.568143 -0.503556v0.12715 0.496104 -0.532038v0.364939 0.662705 -0.659004v0.321383 0.662705 -0.345122v0.009401 0.662705 -0.289549v-0.139853 0.662705 -0.569091v0.079882 0.662705 -0.797424v0.394154 0.932272 -0.494984v0.174419 0.932272 -0.266652v-0.110639 0.932272 -0.405071v-0.067082 0.932272 -0.718954v0.244899 0.932272 -0.774526v0.12715 1.098873 -0.532038n-0.5606 0.016 -0.828n0.9973 0.016 -0.0715n0.4368 0.016 -0.8994n-0.9973 0.016 0.0715n0.5606 0.016 0.828n-0.4368 0.016 0.8994n0.6013 -0.7947 0.0834n0.2652 -0.7947 -0.5461n0.1065 -0.7947 0.5977n-0.5355 -0.7947 0.2859n-0.4374 -0.7947 -0.4209n0.4291 -0.1876 -0.8836n0.9729 -0.1876 0.135n0.1723 -0.1876 0.967n-0.8665 -0.1876 0.4626n-0.7077 -0.1876 -0.6811n0.8665 0.1876 -0.4626n0.7077 0.1876 0.6811n-0.4291 0.1876 0.8836n-0.9729 0.1876 -0.135n-0.1723 0.1876 -0.967n0.5355 0.7947 -0.2859n0.4374 0.7947 0.4209n-0.2652 0.7947 0.5461n-0.6013 0.7947 -0.0834n-0.1065 0.7947 -0.5977mtree q189 166 187 166 188 166 190 166q192 167 194 167 193 167 191 167q192 168 191 168 189 168 190 168q187 169 197 169 198 169 188 169q195 170 193 170 194 170 196 170q198 171 197 171 195 171 196 171mleaf t199 172 200 172 201 172t200 173 199 173 204 173t199 174 201 174 202 174t199 175 202 175 203 175t199 176 203 176 204 176t200 177 204 177 209 177t201 178 200 178 205 178t202 179 201 179 206 179t203 180 202 180 207 180t204 181 203 181 208 181t200 182 209 182 205 182t201 183 205 183 206 183t202 184 206 184 207 184t203 185 207 185 208 185t204 186 208 186 209 186t205 187 209 187 210 187t206 188 205 188 210 188t207 189 206 189 210 189t208 190 207 190 210 190t209 191 208 191 210 191v0.092239 0.397535 -0.499705v-0.029808 0.508518 -0.325565v0.10942 0.416538 -0.494015v-0.012843 0.524813 -0.3221v0.135079 0.405286 -0.480134v0.003902 0.518502 -0.308556v0.139468 0.385173 -0.477787v0.001231 0.502739 -0.296111v0.126721 0.364661 -0.48581v-0.014877 0.491395 -0.294734v0.101374 0.371292 -0.495273v-0.028742 0.490967 -0.310945v-0.004242 0.486043 -0.333664v0.059533 0.592814 -0.266877v0.025328 0.475605 -0.196025v-0.098667 0.429479 -0.245276v-0.141094 0.518182 -0.346566v-0.04332 0.619128 -0.359916v0.004523 0.602239 -0.13721v-0.09325 0.501293 -0.123861v-0.196104 0.527607 -0.2169v-0.161899 0.644816 -0.287751v-0.037903 0.690942 -0.238501v-0.132329 0.634378 -0.150112n0.8411 0.2401 0.4846n0.4499 -0.5537 0.7007n-0.8561 -0.3605 -0.3703n-0.4309 0.5932 -0.68n-0.3506 -0.879 0.3232n0.4809 0.8546 -0.1962n0.8919 -0.3942 -0.2215n0.6774 0.0542 -0.7336n0.3977 -0.9045 -0.154n-0.1223 -0.7715 -0.6244n0.0506 -0.179 -0.9826n0.5723 0.6944 -0.4363n0.9193 -0.0312 0.3923n0.1196 -0.8569 0.5015n-0.7218 -0.6416 -0.2596n-0.442 0.3171 -0.8391n0.7218 0.6416 0.2596n0.442 -0.3171 0.8391n-0.5723 -0.6944 0.4363n-0.9193 0.0312 -0.3923n-0.1196 0.8569 -0.5015n0.1223 0.7715 0.6244n-0.0506 0.179 0.9826n-0.6774 -0.0542 0.7336n-0.8919 0.3942 0.2215n-0.3977 0.9045 0.154mtree q217 192 215 192 216 192 218 192q219 193 217 193 218 193 220 193q221 194 222 194 212 194 211 194q211 195 212 195 214 195 213 195q221 196 219 196 220 196 222 196q216 197 215 197 213 197 214 197mleaf t223 198 224 198 225 198t224 199 223 199 228 199t223 200 225 200 226 200t223 201 226 201 227 201t223 202 227 202 228 202t224 203 228 203 233 203t225 204 224 204 229 204t226 205 225 205 230 205t227 206 226 206 231 206t228 207 227 207 232 207t224 208 233 208 229 208t225 209 229 209 230 209t226 210 230 210 231 210t227 211 231 211 232 211t228 212 232 212 233 212t229 213 233 213 234 213t230 214 229 214 234 214t231 215 230 215 234 215t232 216 231 216 234 216t233 217 232 217 234 217v0.882907 -1.054189 0.859013v0.666037 -1.050401 0.773342v0.788073 -0.800572 0.892122v0.683312 -0.790388 0.874494v0.813166 -0.849432 0.663805v0.898854 -0.798259 0.802819v0.774533 -1.19006 0.880299v0.893884 -1.115737 0.766316v0.870485 -1.139255 0.725045v0.694481 -1.04971 0.862944v0.768237 -1.202278 0.722659v0.697016 -1.171588 0.747182v0.922609 -0.901268 0.770313v0.780068 -1.014197 0.910646v0.865759 -0.868248 0.877443v0.668243 -0.952369 0.820325v0.734137 -0.88361 0.876698v0.882041 -0.943304 0.67157v0.691503 -0.843993 0.709198v0.750103 -0.992924 0.638298v0.824653 -0.676652 0.724162v0.822803 -0.706299 0.825649v0.731815 -0.672827 0.815651v0.731845 -0.712954 0.737529n0.5568 -0.8296 0.0421n-0.369 -0.9254 0.0865n-0.9456 -0.123 0.3011n0.8873 0.0363 0.4597n-0.3823 0.8219 -0.4223n-0.9886 0.1215 -0.0884n-0.1722 -0.0707 0.9825n0.4119 -0.1087 0.9047n0.2161 0.078 -0.9733n-0.4751 -0.239 0.8469n-0.711 0.1123 0.6942n0.458 0.2659 -0.8483n-0.4373 -0.1395 0.8884n0.5123 -0.8382 0.1872n-0.395 0.3263 -0.8588n0.2474 0.0745 0.966n-0.9885 0.0827 -0.1262n0.2344 -0.3458 -0.9086n0.7367 -0.5199 0.4324n0.7793 0.5976 0.1888n-0.2802 0.3044 -0.9104n0.3057 0.9124 0.2721n-0.9364 0.3158 -0.1532n-0.4406 -0.3681 -0.8188n-0.5015 0.0482 0.8638n-0.0073 0.5113 0.8594n0.9236 -0.134 -0.3592n0.8579 0.2865 -0.4265n-0.849 -0.373 0.3742n-0.8312 -0.0778 -0.5505n0.9699 -0.1337 0.2036n-0.4049 0.094 0.9095n0.5747 0.3836 0.7229n0.8894 0.0622 0.4528n0.3288 -0.2666 -0.906mStone t245 218 242 218 241 218t245 219 241 219 246 219t236 220 244 220 250 220t235 221 247 221 249 221t258 222 257 222 255 222t250 223 238 223 253 223t251 224 237 224 238 224q235 225 249 225 248 225 241 225t252 226 254 226 239 226t250 227 251 227 238 227t250 228 244 228 251 228t239 229 255 229 252 229t241 230 248 230 244 230t245 231 243 231 242 231t254 232 255 232 239 232t248 233 249 233 237 233t253 234 236 234 250 234t243 235 245 235 254 235t241 236 242 236 235 236t256 237 240 237 255 237q254 238 253 238 258 238 255 238t255 239 257 239 256 239q253 240 238 240 257 240 258 240t246 241 254 241 245 241t251 242 244 242 248 242q237 243 256 243 257 243 238 243q252 244 247 244 242 244 243 244q247 245 252 245 255 245 240 245q246 246 241 246 244 246 236 246q254 247 246 247 236 247 253 247t247 248 235 248 242 248t251 249 248 249 237 249q249 250 240 250 256 250 237 250t240 251 249 251 247 251t254 252 252 252 243 252v-0.736873 -0.740306 -0.638371v-0.559871 -0.728862 -0.708428v-0.64259 -0.940649 -0.611296v-0.556528 -0.941929 -0.625711v-0.666315 -0.902509 -0.798002v-0.732722 -0.949957 -0.684323v-0.657654 -0.62231 -0.620965v-0.749944 -0.69088 -0.714174v-0.732449 -0.670146 -0.747923v-0.583007 -0.731331 -0.635156v-0.65334 -0.61193 -0.749874v-0.593239 -0.632171 -0.729821v-0.758984 -0.867596 -0.710905v-0.650381 -0.766009 -0.596149v-0.710439 -0.890698 -0.6233v-0.555101 -0.808905 -0.670008v-0.604197 -0.869359 -0.623909v-0.728738 -0.83062 -0.791652v-0.566796 -0.89879 -0.760882v-0.624534 -0.781338 -0.81886v-0.6641 -1.044094 -0.748645v-0.664579 -1.019808 -0.665654v-0.588181 -1.040991 -0.673831v-0.590893 -1.00829 -0.737714n-0.6229 0.7812 0.0421n0.2919 0.9525 0.0865n0.9324 0.2001 0.3011n-0.8814 -0.1089 0.4597n0.4484 -0.7878 -0.4223n0.9953 -0.0401 -0.0884n0.1658 0.0845 0.9825n-0.4195 0.0746 0.9047n-0.209 -0.0955 -0.9733n0.4539 0.2771 0.8469n0.7178 -0.0536 0.6941n-0.4347 -0.3025 -0.8483n0.4244 0.1749 0.8884n-0.5792 0.7934 0.1872n0.4204 -0.2928 -0.8588n-0.2405 -0.0945 0.966n0.992 -0.0015 -0.1262n-0.2619 0.3254 -0.9086n-0.7768 0.4578 0.4324n-0.7277 -0.6594 0.1888n0.3042 -0.2804 -0.9104n-0.23 -0.9344 0.2721n0.9591 -0.238 -0.1532n0.4089 0.403 -0.8188n0.5037 -0.0069 0.8638n0.0491 -0.5089 0.8594n-0.9315 0.0578 -0.3592n-0.8315 -0.3558 -0.4265n0.8156 0.4414 0.3742n0.822 0.1457 -0.5505n-0.9776 0.0538 0.2036n0.4112 -0.0605 0.9095n-0.5413 -0.4294 0.7229n-0.8813 -0.1349 0.4528n-0.3495 0.2388 -0.906mStone t269 253 266 253 265 253t269 254 265 254 270 254t260 255 268 255 274 255t259 256 271 256 273 256t282 257 281 257 279 257t274 258 262 258 277 258t275 259 261 259 262 259q259 260 273 260 272 260 265 260t276 261 278 261 263 261t274 262 275 262 262 262t274 263 268 263 275 263t263 264 279 264 276 264t265 265 272 265 268 265t269 266 267 266 266 266t278 267 279 267 263 267t272 268 273 268 261 268t277 269 260 269 274 269t267 270 269 270 278 270t265 271 266 271 259 271t280 272 264 272 279 272q278 273 277 273 282 273 279 273t279 274 281 274 280 274q277 275 262 275 281 275 282 275t270 276 278 276 269 276t275 277 268 277 272 277q261 278 280 278 281 278 262 278q276 279 271 279 266 279 267 279q271 280 276 280 279 280 264 280q270 281 265 281 268 281 260 281q278 282 270 282 260 282 277 282t271 283 259 283 266 283t275 284 272 284 261 284q273 285 264 285 280 285 261 285t264 286 273 286 271 286t278 287 276 287 267 287v-0.041704 -1.784495 0.093536v0.250675 -1.738581 0.015429v-0.021448 -1.457375 -0.0506v0.100212 -1.430211 -0.11449v0.133346 -1.467204 0.215755v-0.072255 -1.443089 0.12858v0.086474 -1.954336 0.006692v0.029387 -1.842221 0.20821v0.090083 -1.860281 0.236851v0.153488 -1.762081 -0.056877v0.213628 -1.931233 0.16928v0.263873 -1.891042 0.08409v-0.050635 -1.569951 0.195746v0.019662 -1.735958 -0.045913v-0.077833 -1.548141 0.034493v0.191885 -1.62406 -0.046181v0.065149 -1.555427 -0.064279v0.075195 -1.596292 0.274164v0.226788 -1.459849 0.073223v0.250283 -1.639734 0.214208v0.038482 -1.260627 0.136639v-0.028976 -1.323211 0.032733v0.067358 -1.269223 -0.03184v0.134459 -1.301902 0.056008n-0.3346 -0.8606 0.384n0.4013 -0.8968 -0.1864n0.6102 -0.1089 -0.7847n-0.9822 -0.1126 0.1504n0.412 0.9109 0.0241n0.8261 0.2058 -0.5246n-0.4092 -0.2386 -0.8807n-0.8289 -0.3031 -0.4702n0.3674 0.241 0.8983n-0.0602 -0.3569 -0.9322n0.1585 0.0324 -0.9868n0.0703 0.3848 0.9203n-0.1308 -0.2698 -0.954n-0.38 -0.8926 0.2425n0.753 0.5066 0.4199n-0.7617 -0.1231 -0.6361n0.854 0.1748 -0.49n0.3861 -0.1878 0.9031n-0.7532 -0.6419 0.1438n-0.834 0.4954 0.243n0.6936 0.4865 0.5312n-0.5524 0.8223 -0.1366n0.7887 0.4045 -0.4629n0.882 -0.1781 0.4362n-0.0963 -0.0767 -0.9924n-0.5684 0.3428 -0.7479n-0.5167 -0.1307 0.8461n-0.4953 0.2986 0.8158n0.5323 -0.3744 -0.7593n0.9956 0.0846 -0.0401n-0.8746 -0.2377 0.4225n-0.2076 -0.0471 -0.9771n-0.938 0.2015 -0.282n-0.9843 -0.086 0.1544n0.2955 -0.1173 0.9481mStone t293 288 290 288 289 288t293 289 289 289 294 289t284 290 292 290 298 290t283 291 295 291 297 291t306 292 305 292 303 292t298 293 286 293 301 293t299 294 285 294 286 294q283 295 297 295 296 295 289 295t300 296 302 296 287 296t298 297 299 297 286 297t298 298 292 298 299 298t287 299 303 299 300 299t289 300 296 300 292 300t293 301 291 301 290 301t302 302 303 302 287 302t296 303 297 303 285 303t301 304 284 304 298 304t291 305 293 305 302 305t289 306 290 306 283 306t304 307 288 307 303 307q302 308 301 308 306 308 303 308t303 309 305 309 304 309q301 310 286 310 305 310 306 310t294 311 302 311 293 311t299 312 292 312 296 312q285 313 304 313 305 313 286 313q300 314 295 314 290 314 291 314q295 315 300 315 303 315 288 315q294 316 289 316 292 316 284 316q302 317 294 317 284 317 301 317t295 318 283 318 290 318t299 319 296 319 285 319q297 320 288 320 304 320 285 320t288 321 297 321 295 321t302 322 300 322 291 322

执行 Load Obj. File Name: spaceship Data: »v0.513531 0.03316 -1.235458v-0.51354 0.03316 -1.235458v0.033499 -0.28953 -0.231547v-0.000085 -0.329031 -1.163254v0.451976 -0.073479 -0.181736v0.565535 -0.073479 -0.181736v0.528484 0.086295 -0.181736v0.533966 0.004716 -0.471801v0.451976 -0.095237 -0.488884v0.451976 -0.116338 -0.183132v0.565535 -0.116338 -0.183132v0.451976 0.144566 -0.510881v0.590262 -0.05086 -0.510881v0.563453 0.144566 -0.510881v0.531255 0.061605 -0.471801v0.43916 -0.073479 0.065492v0.438561 0.052754 0.065491v0.452577 -0.073479 0.065492v0.494451 0.004716 -0.471801v-0.451986 -0.073479 -0.181736v-0.451986 0.086295 -0.181736v-0.49446 0.004716 -0.471801v-0.49446 0.061605 -0.471801v-0.565544 -0.073479 -0.181736v-0.451986 -0.116338 -0.183132v-0.451986 0.144566 -0.510881v-0.563463 0.144566 -0.510881v-0.452586 -0.073479 0.065492v0.063452 -0.321739 0.680524v-0.034074 -0.289879 -0.231547v0.318722 0.004096 0.80771v0.452411 -0.122476 0.868773v0.055717 -0.170231 1.941422v-0.395977 0.004096 0.363167v-0.318732 0.004096 0.80771v0.395967 0.004096 0.363167v-0.171175 0.268309 0.163167v0.171166 0.268309 0.163167v0.074728 -0.244864 1.506145v0.50482 -0.244864 -0.385641v0.562056 -0.122476 -0.450933v-0.562066 -0.122476 -0.450933v-0.068754 0.314443 -0.543948v0.582749 0.266825 -0.060796v-0.582759 0.266825 -0.060796v0.640172 0.348347 -0.595672v0.842313 0.028411 0.127445v0.566519 0.086426 0.571528v0.564523 -0.023371 0.82436v0.675536 -0.289477 -0.060796v-0.675546 -0.289477 -0.060796v-0.921733 0.043213 -0.310149v0.75587 -0.34532 -0.595672v0.725642 -0.280137 -0.048322v0.601921 -0.125825 0.571528v-0.652037 -0.116485 0.584003v0.652027 -0.116485 0.584003v0.046988 0.351079 -0.174973v-0.046997 0.351079 -0.174973v0.036803 0.409266 -0.292112v0.016829 0.441231 -0.589189v-0.036813 0.409266 -0.292112v-0.016839 0.441231 -0.589189v-0.022081 -0.368473 -0.158079v0.073942 0.213573 -0.359271v-0.000005 0.124517 -1.841058v-0.533976 0.004716 -0.471801v0.451976 0.086295 -0.181736v0.451976 -0.05086 -0.510881v0.43916 -0.097149 0.065492v0.590262 -0.095237 -0.488884v0.494451 0.061605 -0.471801v0.452577 -0.097149 0.065492v-0.451986 -0.05086 -0.510881v-0.590271 -0.05086 -0.510881v-0.528493 0.086295 -0.181736v-0.43917 -0.097149 0.065492v-0.451986 -0.095237 -0.488884v-0.590271 -0.095237 -0.488884v-0.565544 -0.116338 -0.183132v-0.531265 0.061605 -0.471801v-0.43917 -0.073479 0.065492v-0.43917 0.052754 0.065491v-0.452586 -0.097149 0.065492v-0.088675 -0.245319 -0.311217v-0.140569 -0.24631 0.680524v0.139538 -0.244864 0.680524v0.087643 -0.244409 -0.311217v-0.026046 -0.501567 0.090881v-0.063694 -0.322396 0.680524v0.027657 -0.50129 0.090881v-0.000413 -0.242237 1.406331v0.000156 -0.375694 0.769879v0.000922 -0.524079 0.128622v-0.063227 -0.412804 -0.155333v0.063919 -0.412147 -0.155333v0.000844 -0.508979 -0.246442v0.022318 -0.368243 -0.158079v-0.11658 0.004096 1.359211v-0.084478 0.143057 1.051067v0.562056 -0.122476 0.32159v-0.562066 -0.122476 0.32159v-0.45242 -0.122476 0.868773v0.084548 0.143078 1.051048v0.11657 0.004096 1.359211v-0.055727 -0.170231 1.941422v0.242962 0.317779 0.055669v0.111114 0.396264 -0.549063v-0.129604 0.254761 0.501541v0.129516 0.254794 0.501511v-0.242972 0.317779 0.055669v-0.074738 -0.244864 1.506145v-0.111124 0.396264 -0.549063v0.403435 -0.051715 -0.492329v-0.403444 -0.051715 -0.492329v0.068745 0.314443 -0.543948v0.208016 0.035461 -0.343573v0.921724 0.043213 -0.310149v-0.640181 0.348347 -0.595672v0.792207 0.019071 0.11497v0.632855 0.276166 -0.048322v-0.632865 0.276166 -0.048322v-0.566529 0.086426 0.571528v-0.53948 -0.028041 0.818122v0.616625 0.095766 0.584003v-0.616635 0.095766 0.584003v-0.792216 0.01907 0.11497v-0.842322 0.028411 0.127445v-0.755879 -0.34532 -0.595672v-0.725652 -0.280137 -0.048322v0.53947 -0.028041 0.818122v-0.564533 -0.023371 0.82436v-0.601931 -0.125825 0.571528v0.396669 -0.244864 0.855061v0.50482 -0.244864 0.183586v-0.50483 -0.244864 0.183586v-0.396679 -0.244864 0.855061v-0.50483 -0.244864 -0.385641v0.048559 0.39854 -0.533915v-0.048569 0.39854 -0.533915v-0.000005 0.306593 0.124382v-0.000005 0.338765 0.065738v-0.000005 0.500326 -0.451382v-0.073952 0.213573 -0.359271v-0.208025 0.035461 -0.343573v-0.000005 0.532386 -0.769221n-1 0 0n0.9782 0.1759 0.1103n0.9098 -0.0087 0.4149n0.9967 0.0186 0.0789n0 0.9847 0.1743n0 -0.9976 -0.0689n0 -0.4441 -0.896n0 0 1n-0.9987 0 -0.0518n0 -0.997 0.077n0 0.9909 0.1344n0.909 0.1623 0.384n1 0 0n-0.9782 0.1759 0.1103n-0.9098 -0.0087 0.4149n-0.9967 0.0186 0.0789n0.9987 0 -0.0518n-0.909 0.1623 0.384n-0.909 0.1622 0.3839n0.6222 -0.7822 -0.0316n0.7039 -0.6967 0.1383n0.7475 -0.65 0.137n-0.7409 -0.6575 0.1372n-0.7014 -0.7087 0.0763n0.7547 -0.639 0.1488n0.9811 -0.1866 -0.0514n-0.7481 -0.6467 0.1488n-0.6141 -0.7886 -0.0316n-0.6314 0.7664 0.118n-0.4884 0.7031 0.5168n0.6647 0.6991 0.2636n0 0.959 0.2835n0 0.8942 0.4476n0.4884 0.7031 0.5168n-0.6647 0.6991 0.2636n0.6314 0.7664 0.118n0 0.9917 0.1287n0 -0.0878 -0.9961n0 -0.4707 -0.8823n-0.7598 0.645 -0.0819n0.8097 0.5869 0n0 -0.505 -0.8631n0 -0.0624 -0.9981n-0.1781 -0.0084 -0.984n0.1781 -0.0084 -0.984n-0.6885 0.7146 0.1237n0.6885 0.7146 0.1237n-0.2118 0.9693 0.125n0.2118 0.9693 0.125n-0.2393 0.9353 0.2607n0.2605 0.8863 0.3828n-0.2605 0.8863 0.3828n0.2393 0.9353 0.2607n0.6616 0.7164 0.2214n-0.6616 0.7164 0.2214n-0.8893 -0.4409 0.1215n0.8893 -0.4409 0.1215n0.1516 -0.9805 0.1251n-0.1516 -0.9805 0.1251n0.1136 -0.9585 0.2613n-0.9141 0.1525 0.3757n-0.0759 -0.9202 0.3841n0.0759 -0.9202 0.3841n-0.1136 -0.9585 0.2613n0.8655 -0.4512 0.2175n0.9141 0.1525 0.3757n-0.8655 -0.4512 0.2175n-0.6967 -0.7039 0.1385n-0.907 0.4204 0.0255n-0.861 0.4709 0.1922n0 -0.7914 -0.6113n0.907 0.4204 0.0255n-0.7309 0.6514 0.2035n0.9604 0.2787 -0.0022n-0.9604 0.2787 -0.0022n0.7309 0.6514 0.2035n-0.9791 -0.1966 -0.0514n0.7087 -0.7014 0.0763n0.861 0.4709 0.1922n0.7598 0.645 -0.0819n-0.8097 0.5869 0n0 -0.8922 -0.4517n-0.9997 0 -0.025n0 -0.9993 -0.0372n0 0.9993 -0.0372n0.9986 0.0476 -0.0249n0.9997 0 -0.025n-0.9986 0.0476 -0.0249n-0.9838 -0.1767 -0.0285n-0.0052 0.9991 -0.0422n0.0052 -0.9992 -0.0391n0.9856 -0.1666 -0.0285n0 -0.9982 -0.0594n0 0.9982 -0.06n-0.7998 0.5954 -0.0757n0.7998 0.5954 -0.0757n-0.6807 0.7139 0.164n0.6708 0.6997 0.2459n0 0.9116 0.4111n-0.0001 0.9992 0.04n-0.0001 0.98 0.1992n0.6807 0.714 0.1639n-0.6706 0.7 0.2458n-0.7118 0.6928 0.1152n0.7118 0.6929 0.1153n0.5626 -0.0112 -0.8266n0.5628 0.0135 -0.8265n0.5624 0.006 -0.8269n0.5624 -0.0052 -0.8269n0.0072 0.48 -0.8772n-0.0072 0.48 -0.8772n-0.0031 0.4798 -0.8773n0.003 0.4798 -0.8773n-0.0019 -0.3567 -0.9342n0.0022 -0.3568 -0.9342n0.0009 -0.3567 -0.9342n-0.0007 -0.3567 -0.9342n-0.5374 -0.0519 -0.8417n-0.5391 -0.0733 -0.8391n-0.5362 -0.0683 -0.8413n-0.5396 -0.0591 -0.8399n-0.5627 -0.0112 -0.8266n-0.5624 -0.0051 -0.8269n-0.5624 0.006 -0.8269n-0.5628 0.0135 -0.8265n-0.003 0.4798 -0.8773n0.0031 0.4798 -0.8773n0.0019 -0.3567 -0.9342n0.0007 -0.3567 -0.9342n-0.0009 -0.3567 -0.9342n-0.0022 -0.3568 -0.9342n0.5374 -0.0519 -0.8417n0.5396 -0.0591 -0.8398n0.5363 -0.0683 -0.8413n0.5391 -0.0733 -0.8391n0.0051 -0.9942 0.1075n-0.0049 0.9567 -0.291n-0.0052 0.9997 -0.0224n-0.0035 -0.835 -0.5502n0.0122 -0.8349 -0.5502n0.0076 -0.8348 -0.5506n0.001 -0.8348 -0.5506n-0.0056 -0.1345 -0.9909n0.007 -0.1345 -0.9909n0.0033 -0.1347 -0.9909n-0.0019 -0.1347 -0.9909n-0.4449 -0.5612 -0.6979n-0.4449 -0.5725 -0.6887n-0.445 -0.5742 -0.6872n-0.4447 -0.5695 -0.6913n0.4508 -0.5679 -0.6887n0.4507 -0.5565 -0.6979n0.4506 -0.5648 -0.6913n0.451 -0.5696 -0.6872n-0.6604 -0.706 0.2558n0.6604 -0.706 0.2558n0 -1 0n-0.8576 -0.4909 0.1533n0.8576 -0.4909 0.1533n0 -0.9856 0.169n-0.9058 -0.4236 0n0.9058 -0.4236 0n0 0.8628 -0.5056n0 -0.8776 -0.4794n0.667 -0.6247 -0.4062n-0.667 -0.6247 -0.4062n0.6884 -0.7147 -0.1237n0.6885 -0.7146 -0.1237n-0.6884 -0.7147 -0.1237n-0.6885 -0.7146 -0.1237n0.6616 -0.7164 -0.2214n-0.8015 -0.504 -0.3219n0.8015 -0.504 -0.3219n-0.6616 -0.7164 -0.2214n0.8893 0.4409 -0.1216n0.8893 0.4408 -0.1215n0.8893 0.4409 -0.1215n-0.8893 0.4409 -0.1216n-0.8893 0.4409 -0.1215n-0.8893 0.4408 -0.1215n0.8655 0.4512 -0.2175n-0.9242 0.2117 -0.318n0.9242 0.2117 -0.318n-0.8655 0.4512 -0.2175mhull q5 1 68 1 12 1 69 1q13 2 14 2 7 2 6 2q11 3 6 3 18 3 73 3q13 4 6 4 11 4 71 4q14 5 12 5 68 5 7 5q9 6 71 6 11 6 10 6q69 7 13 7 71 7 9 7t18 8 17 8 16 8q18 8 16 8 70 8 73 8t68 9 5 9 16 9q10 10 11 10 73 10 70 10t7 11 68 11 17 11q6 12 7 12 17 12 18 12t17 9 68 9 16 9q20 13 74 13 26 13 21 13q75 14 24 14 76 14 27 14q80 15 84 15 28 15 24 15q75 16 79 16 80 16 24 16q27 5 76 5 21 5 26 5q78 6 25 6 80 6 79 6q74 7 78 7 79 7 75 7t28 8 82 8 83 8q28 8 84 8 77 8 82 8t21 17 82 17 20 17q25 10 77 10 84 10 80 10t76 11 83 11 21 11q24 18 28 19 83 18 76 18t83 17 82 17 21 17t91 20 94 20 97 20t29 21 87 21 92 21t93 22 29 22 92 22t90 23 93 23 92 23t95 24 90 24 86 24q29 25 93 25 94 25 91 25t96 26 88 26 87 26q93 27 90 27 89 27 94 27t94 28 89 28 97 28q35 29 34 29 102 29 103 29q34 30 37 30 111 30 102 30q31 31 105 31 33 31 32 31q105 32 99 32 106 32 33 32q37 33 38 33 107 33 111 33q38 34 36 34 101 34 107 34q99 35 35 35 103 35 106 35q36 36 31 36 32 36 101 36q111 37 107 37 108 37 113 37q117 38 145 38 144 38 65 38q42 39 41 39 40 39 138 39t111 40 113 40 42 40t107 41 101 41 41 41q115 42 114 42 41 42 42 42q116 43 43 43 113 43 108 43q43 44 115 44 42 44 113 44q114 45 116 45 108 45 41 45q128 46 122 46 119 46 52 46q121 47 47 47 118 47 46 47t46 48 44 48 121 48t45 49 119 49 122 49q121 50 44 50 48 50 125 50q124 51 123 51 126 51 132 51q48 52 131 52 49 52 125 52q45 53 122 53 126 53 123 53t47 54 121 54 125 54t122 55 128 55 126 55q128 56 52 56 129 56 130 56q54 57 53 57 118 57 47 57t53 58 54 58 50 58t51 59 130 59 129 59q54 60 57 60 55 60 50 60q126 61 128 61 56 61 132 61q124 62 132 62 56 62 133 62q55 63 57 63 49 63 131 63q51 64 133 64 56 64 130 64t47 65 57 65 54 65q49 66 57 66 47 66 125 66t130 67 56 67 128 67t86 68 90 68 92 68q140 69 59 69 62 69 63 69q59 70 141 70 142 70 62 70q139 71 140 71 63 71 61 71q58 72 139 72 61 72 60 72t62 73 142 73 143 73q60 74 61 74 146 74 143 74q63 75 62 75 143 75 146 75t142 76 60 76 143 76t85 77 95 77 86 77t29 78 96 78 87 78q142 79 141 79 58 79 60 79t108 80 107 80 41 80t102 81 111 81 42 81t61 82 63 82 146 82mthrusters t19 83 72 83 1 83t8 84 19 84 1 84t72 85 15 85 1 85t15 86 8 86 1 86t22 87 2 87 23 87t67 84 2 84 22 84t23 85 2 85 81 85t81 88 2 88 67 88t64 89 30 89 4 89t30 90 3 90 4 90t98 91 64 91 4 91t3 92 98 92 4 92t117 93 145 93 66 93t144 94 65 94 66 94t145 95 144 95 66 95t65 96 117 96 66 96mglass q35 97 100 97 109 97 34 97t31 98 104 98 105 98q105 99 104 99 100 99 99 99q37 100 109 100 110 100 38 100q110 101 109 101 100 101 104 101q36 102 110 102 104 102 31 102t99 103 100 103 35 103t34 104 109 104 37 104t110 105 36 105 38 105mdark_gray q72 106 19 107 69 108 12 109q19 110 8 111 13 112 69 113q15 114 72 115 12 116 14 117q8 118 15 119 14 120 13 121q23 122 26 123 74 124 22 125q22 111 74 126 75 127 67 110q81 128 27 129 26 130 23 131q67 132 75 133 27 134 81 135q96 136 29 136 90 136 95 136q90 137 29 137 91 137 89 137t89 138 91 138 97 138q3 139 30 140 85 141 88 142q64 143 98 144 96 145 95 146q98 147 3 148 88 149 96 150q30 151 64 152 95 153 85 154q106 155 103 155 137 155 112 155q32 156 33 156 39 156 134 156q135 157 136 157 138 157 40 157q137 157 134 157 39 157 112 157q136 157 135 157 134 157 137 157q103 158 102 158 136 158 137 158q101 159 32 159 134 159 135 159q33 160 106 160 112 160 39 160q136 161 102 161 42 161 138 161q101 162 135 162 40 162 41 162q145 163 117 163 114 163 115 163q65 164 144 164 43 164 116 164q144 165 145 165 115 165 43 165q117 166 65 166 116 166 114 166q127 167 52 168 119 168 45 168q44 169 46 170 118 170 120 169t127 171 45 171 123 171t120 172 131 172 48 172t124 173 127 173 123 173t44 174 120 174 48 174q127 175 51 175 129 176 52 177q50 178 120 178 118 179 53 180t127 181 133 181 51 181t120 182 55 182 131 182t124 183 133 183 127 183t50 184 55 184 120 184

执行 Load Obj. File Name: cube Data: »v1 1 -1v1 -1 -1v1 1 1v1 -1 1v-1 1 -1v-1 -1 -1v-1 1 1v-1 -1 1n0 1 0n0 0 1n-1 0 0n0 -1 0n1 0 0n0 0 -1mMaterial q1 1 5 1 7 1 3 1q4 2 3 2 7 2 8 2q8 3 7 3 5 3 6 3q6 4 2 4 4 4 8 4q2 5 1 5 3 5 4 5q6 6 5 6 1 6 2 6

 

定义 obj. read {#}

将 {~i2} 增加 {#}

将 {~text} 设为

重复执行直到 ((({~file} 的第 {~i2} 个字符 = ) 或 {~items} 包含 {~file} 的第 {~i2} 个字符 ?) 或 ({~file} 的字符数 < {~i2}))

将 {~text} 设为 连接 {~text} 和 {~file} 的第 {~i2} 个字符

将 {~i2} 增加 1

 

定义 Set Material: {name} to color: {color}

如果 {materials} 包含 {name} ? 那么

将 {materialColor} 的第 {materials} 中第一个 {name} 的编号 项替换为 {color}

否则

将 {name} 加入 {materials}

将 {color} 加入 {materialColor}

 

定义 Meshes

执行 Load Obj. File Name: island Data: »v0.002725 -1.002578 -0.069705v0.706002 -0.458702 0.554755v-0.343556 -0.389919 0.874358v-0.860902 -0.447736 0.061683v-0.338177 -0.494911 -0.810233v0.635526 -0.536809 -0.52547v-0.212531 -0.672047 0.746568v-0.068132 -0.872519 0.386781v-0.032256 -1.024495 0.164922v0.197911 -0.989499 -0.033743v0.346763 -0.803911 0.338705v0.611665 -0.71981 0.483704v0.492093 -0.479584 0.720228v0.25136 -0.511723 0.834453v-0.047949 -0.427793 0.916927v0.781326 -0.496286 -0.28178v0.760023 -0.558901 -0.028109v0.80279 -0.508538 0.194099v0.108006 -0.918165 -0.307266v0.536886 -0.667267 -0.495789v-0.792748 -0.663182 -0.098239v-0.523165 -0.863645 0.00225v-0.306388 -0.971563 -0.051742v-0.47356 -0.455766 0.716342v-0.777941 -0.450398 0.407405v-0.78508 -0.534296 0.287372v-0.216482 -0.655453 -0.706221v-0.871104 -0.433727 -0.237991v-0.769204 -0.475067 -0.350752v-0.451141 -0.551202 -0.686157v-0.12196 -0.553939 -0.868661v0.299499 -0.43293 -0.862899v0.510626 -0.494766 -0.640429v0.898867 0.021463 0.243902v0.883218 -0.206577 0.446332v0.90759 -0.312614 -0.260856v0.919766 0.007709 -0.257724v0.027429 -0.004778 1.00108v0.654888 -0.305068 0.643275v0.688472 0.006802 0.763485v-0.944353 0.005298 0.272266v-0.961168 -0.278463 0.169611v-0.462476 -0.217829 0.891653v-0.680523 0.008508 0.746355v-0.62394 -0.002018 -0.860254v-0.377122 -0.172187 -0.849963v-1.008127 -0.203527 -0.226064v-0.975696 -0.006222 -0.306862v0.554202 0.005606 -0.832295v0.713135 -0.351137 -0.605312v-0.202192 -0.24891 -1.00255v-0.065154 -0.002377 -1.008738v0.783212 -0.039531 -0.556047v-0.317753 0.000851 -0.995627v-0.988768 0.009184 -0.09335v-0.305112 -0.009002 0.964719v0.77674 0.003266 0.666502v0.192777 0.015461 -0.978461v0.54656 -0.26715 -0.811755v0.199172 -0.241083 -0.953628v-0.792056 0.005509 -0.564609v-0.666001 -0.24159 -0.757789v-0.846286 -0.317194 -0.430742v-0.793569 -0.013459 0.626472v-0.822781 -0.287956 0.496507v-0.596573 -0.308532 0.712591v0.313425 -0.007731 0.965738v0.16427 -0.339206 0.910743v0.599389 -0.20425 0.719054v0.930102 0.000421 0.078816v0.945737 -0.286503 0.136114v0.935576 -0.278973 -0.201291v0.387593 -0.730531 -0.576933v0.154198 -0.796338 -0.581251v-0.437167 -0.750352 -0.527568v-0.370423 -0.84876 -0.332144v-0.567292 -0.709736 -0.398646v-0.710144 -0.778578 0.092069v-0.334458 -0.849183 0.325253v-0.512221 -0.762767 0.432502v0.569723 -0.711449 -0.124813v0.687062 -0.773381 0.182738v0.662431 -0.78423 0.155886v-0.155177 -0.687544 0.731312v0.145636 -0.82686 0.535644v0.443975 -0.75103 0.557264v0.848735 0.062299 0.244041v0.852174 0.064208 -0.249974v0.035474 0.064825 0.918876v0.633098 0.064298 0.706601v-0.874834 0.063466 0.259708v-0.633651 0.06438 0.696567v-0.576728 0.064873 -0.787316v-0.893174 0.064272 -0.28224v0.515998 0.062578 -0.774638v-0.056811 0.065258 -0.924683v0.649113 0.065615 -0.552993v-0.292095 0.064242 -0.917696v-0.92169 0.06407 -0.090659v-0.28201 0.063763 0.880363v0.725472 0.064639 0.59665v0.185145 0.062977 -0.919707v-0.735153 0.062208 -0.530682v-0.71947 0.065593 0.567521v0.252096 0.06341 0.891512v0.853591 0.064468 -0.002737v0.308458 -0.622495 -0.378837v0.638356 -0.452716 -0.491624v0.476564 -0.449438 -0.659393v0.785141 -0.482411 -0.270715v0.782678 -0.474763 0.03589v0.224071 -0.63686 -0.020638v0.570121 -1.553398 -0.477345v0.571383 -1.606005 -0.115018v0.5723 -1.557983 -0.288583v0.570866 -1.602535 -0.215708v0.571373 -1.561544 -0.38407v0.571161 -1.608612 -0.166232v0.57003 -1.557301 -0.315801v0.571512 -1.587748 -0.252622v0.5712 -1.571475 -0.43819v0.57562 -1.776576 -0.140832v0.57562 -1.75385 -0.148049v0.57562 -1.775264 -0.157867v0.57562 -1.796782 -0.148007v0.57562 -2.013252 -0.210971v0.57562 -1.998101 -0.215783v0.57562 -2.012378 -0.222329v0.57562 -2.026725 -0.215755v0.57562 -1.852004 -0.267732v0.57562 -1.834843 -0.273182v0.57562 -1.851014 -0.280596v0.57562 -1.867263 -0.27315v0.57562 -1.700232 -0.304305v0.57562 -1.680039 -0.310718v0.57562 -1.699066 -0.319442v0.57562 -1.718186 -0.310681v0.57562 -1.766451 -0.415911v0.57562 -1.746158 -0.422356v0.57562 -1.76528 -0.431123v0.57562 -1.784495 -0.422318v0.57562 -2.140146 -0.34605v0.57562 -2.127934 -0.349929v0.57562 -2.139441 -0.355204v0.57562 -2.151004 -0.349906v0.56994 -1.595153 -0.477373v0.571413 -1.631791 -0.115018v0.573134 -1.601727 -0.287714v0.571077 -1.638805 -0.210335v0.571003 -1.599914 -0.384093v0.571226 -1.635739 -0.166232v0.569789 -1.592136 -0.330453v0.57203 -1.625295 -0.252598v0.570995 -1.606478 -0.438205v0.57562 -1.947326 -0.392109v0.57562 -1.932152 -0.396928v0.57562 -1.94645 -0.403484v0.57562 -1.960818 -0.3969v0.57562 -1.894956 -0.179133v0.57562 -1.879178 -0.184144v0.57562 -1.894046 -0.19096v0.57562 -1.908986 -0.184115n-0.8369 -0.5424 0.0732n0.4842 -0.5086 -0.712n0.6857 -0.1785 0.7057n-0.0518 0.0037 -0.9987n-0.6985 -0.3052 -0.6473n-0.3372 -0.5359 -0.774n-0.9885 0.1337 -0.0702n-0.4989 0.0738 0.8635n-0.1048 -0.176 0.9788n0.9421 0.1841 0.2802n0.3509 -0.244 -0.9041n-0.3456 -0.4519 -0.8224n-0.7053 -0.5628 -0.4311n-0.8032 -0.4584 -0.3805n-0.6891 -0.1699 -0.7045n-0.7064 -0.2573 0.6594n0.4659 -0.3448 0.8149n0.8702 -0.1202 -0.4778n0.4532 -0.3627 0.8143n-0.8591 -0.5118 0.0051n0.6091 -0.2341 0.7578n0.9984 0.0489 -0.0293n-0.9625 0.2709 -0.0143n-0.6205 -0.5023 0.6022n0.3718 -0.0802 -0.9249n0.8254 -0.5602 -0.0694n0.1195 -0.3726 -0.9203n-0.9926 0.0151 0.1207n0.7805 -0.4923 -0.3854n0.5135 -0.5663 -0.6447n-0.6567 -0.5702 -0.4936n0.836 -0.5475 -0.0372n-0.206 -0.354 -0.9123n0.8374 -0.4641 0.2886n0.6941 -0.3228 0.6434n0.1176 -0.2138 0.9698n0.9807 0.0881 0.1747n-0.8685 -0.0582 -0.4923n-0.6802 -0.2533 0.6879n-0.8076 -0.1049 -0.5803n0.1223 -0.0927 -0.9882n-0.9184 -0.0853 0.3864n0.7623 -0.0698 -0.6434n0.4406 -0.1678 0.8819n-0.5781 -0.4664 0.6695n-0.166 -0.2117 0.9631n-0.84 -0.4201 0.3434n0.1642 -0.3284 0.9301n-0.7 -0.246 0.6704n-0.8296 -0.1852 0.5268n0.9108 -0.0306 -0.4118n-0.6294 0.7714 -0.0936n0.572 0.7402 -0.3534n-0.5569 0.7596 -0.336n-0.5312 0.7668 0.3604n-0.5825 0.7599 0.2885n0.2634 0.7954 0.5459n-0.6316 0.7706 0.0853n-0.5451 0.7602 -0.3534n0.5671 0.7327 -0.3761n-0.2989 0.7619 0.5747n-0.0798 0.765 0.639n0.2583 0.7673 -0.587n0.6302 0.7762 0.0197n-0.0222 0.7796 -0.6259n0.02 0.7783 -0.6276n-0.2543 0.7893 -0.5588n0.6181 0.7572 0.2111n0.6427 0.7661 -0.0037n0.0876 0.7552 0.6496n0.4496 0.8084 0.38n-0.0049 0.9999 0.0127n0.0054 0.9999 -0.0096n-0.0012 1 0.0021n-0.0009 1 0.0014n0.0029 1 -0.006n-0.0042 1 0.0083n0.0011 1 -0.0016n-0.0043 1 0.0074n0.0098 0.9998 -0.0196n-0.1758 -0.8883 0.4243n0.5674 -0.4769 -0.6713n0.0538 -0.5952 0.8018n-0.1055 -0.9885 -0.1081n-0.3297 -0.6022 -0.7271n-0.9494 -0.3135 0.0177n-0.5049 -0.8177 -0.2766n-0.6273 -0.4846 0.6096n-0.1848 -0.4754 0.8601n0.9143 -0.3958 -0.0863n0.1281 -0.7047 0.6979n0.5843 -0.4028 0.7045n0.4523 0.6123 0.6485n0.2571 -0.902 0.3467n-0.3775 -0.8887 0.2604n-0.1209 -0.887 0.4457n0.0814 -0.9934 -0.0807n0.2597 -0.8979 -0.3555n0.6886 -0.6137 -0.3863n0.1963 -0.6485 -0.7355n0.4515 -0.8805 -0.1447n-0.7182 -0.5243 -0.4575n-0.9047 -0.3984 0.1511n0.1855 -0.9584 0.2171n-0.7028 -0.563 0.4349n-0.3583 -0.6836 -0.6359n0.1165 -0.951 -0.2863n-0.5246 -0.5413 0.6571n-0.1951 -0.8236 0.5326n0.2356 -0.9633 0.1283n0.8727 -0.3938 0.2887n0.3806 -0.8794 0.2861n-0.6881 -0.481 -0.5432n0.422 -0.5205 0.7423n-0.3127 -0.923 0.2244n-0.101 0.6194 -0.7785n0.4973 -0.7856 -0.3681n-0.115 -0.8112 -0.5734n-0.1085 -0.9018 -0.4183n-0.1139 -0.9193 -0.3768n-0.4814 -0.8379 -0.2572n-0.5124 -0.8191 -0.2581n0.2374 0.9668 0.0944n1 0.0018 -0.0051n0.9998 -0.0008 0.0192n0.9961 0.0197 -0.0856n0.9993 0.0373 -0.0102n0.999 0.0407 0.0171n1 0 0n1 0.0018 -0.0041n1 0.004 -0.0046n0.9996 0.0116 0.0244n0.9991 0.017 0.0394n0.9968 0.021 -0.0769n0.9997 -0.0128 0.0222n1 -0.0078 -0.0005n0.9996 -0.005 -0.0291n0.3355 -0.8782 -0.3408n0.2762 -0.9607 0.0264mDirt t4 1 26 1 42 1t6 2 33 2 50 2t2 3 35 3 39 3t51 4 54 4 52 4t51 5 46 5 54 5t46 6 45 6 54 6t47 7 55 7 48 7t43 8 56 8 44 8t15 9 38 9 56 9t35 10 34 10 57 10t59 11 32 11 60 11t31 12 5 12 51 12t29 13 28 13 63 13t63 14 28 14 47 14q46 15 51 15 5 15 30 15t66 16 43 16 44 16t68 17 69 17 67 17t53 18 36 18 50 18q69 19 39 19 40 19 67 19q4 20 42 20 47 20 28 20q13 21 2 21 39 21 69 21q72 22 37 22 70 22 71 22q17 23 111 23 110 23 16 23q66 24 65 24 25 24 24 24q59 25 60 25 58 25 49 25q16 26 36 26 72 26 17 26q31 27 51 27 60 27 32 27q42 28 41 28 55 28 47 28q6 29 50 29 36 29 16 29q33 30 32 30 59 30 50 30q29 31 63 31 62 31 30 31q72 32 71 32 18 32 17 32q46 33 30 33 62 33 45 33q18 34 71 34 35 34 2 34q39 35 35 35 57 35 40 35q68 36 67 36 38 36 15 36q71 37 70 37 34 37 35 37q62 38 63 38 61 38 45 38q64 39 65 39 66 39 44 39q63 40 47 40 48 40 61 40q60 41 51 41 52 41 58 41q65 42 64 42 41 42 42 42q50 43 59 43 49 43 53 43q14 44 13 44 69 44 68 44q24 45 3 45 43 45 66 45q15 46 56 46 43 46 3 46q26 47 25 47 65 47 42 47t15 48 14 48 68 48q6 49 108 49 109 49 33 49q16 50 110 50 108 50 6 50q37 51 72 51 36 51 53 51mGrass q94 52 48 52 55 52 99 52q95 53 97 53 53 53 49 53q93 54 45 54 61 54 103 54q92 55 104 55 64 55 44 55q41 56 64 56 104 56 91 56q90 57 105 57 67 57 40 57q99 58 55 58 41 58 91 58q94 59 103 59 61 59 48 59q88 60 37 60 53 60 97 60q92 61 44 61 56 61 100 61q89 62 100 62 56 62 38 62q102 63 95 63 49 63 58 63q87 64 34 64 70 64 106 64q98 65 96 65 52 65 54 65q102 66 58 66 52 66 96 66q93 67 98 67 54 67 45 67q101 68 57 68 34 68 87 68q88 69 106 69 70 69 37 69q105 70 89 70 38 70 67 70q90 71 40 71 57 71 101 71q100 72 89 72 104 72 92 72q89 73 105 73 91 73 104 73q105 74 90 74 99 74 91 74q90 75 101 75 94 75 99 75q101 76 87 76 103 76 94 76q87 77 106 77 93 77 103 77q106 78 88 78 98 78 93 78q88 79 97 79 96 79 98 79q97 80 95 80 102 80 96 80mStone q8 81 7 81 80 81 79 81q73 82 32 82 33 82 20 82q84 83 14 83 15 83 7 83t23 84 1 84 9 84t27 85 75 85 30 85t21 86 4 86 28 86t22 87 78 87 21 87t80 88 24 88 25 88t7 89 15 89 3 89t18 90 82 90 17 90q86 91 14 91 84 91 85 91t12 92 2 92 13 92q107 93 20 93 33 93 109 93t83 94 11 94 10 94q23 95 9 95 79 95 22 95q8 96 85 96 84 96 7 96t1 97 10 97 9 97t19 98 74 98 73 98q82 99 83 99 81 99 17 99q74 100 31 100 32 100 73 100q19 101 73 101 20 101 81 101q21 102 28 102 29 102 77 102q26 103 4 103 21 103 78 103q82 104 12 104 11 104 83 104q78 105 80 105 25 105 26 105q27 106 30 106 5 106 31 106t1 107 19 107 10 107q7 108 3 108 24 108 80 108q9 109 85 109 8 109 79 109q11 110 12 110 86 110 85 110q12 111 82 111 18 111 2 111q10 112 11 112 85 112 9 112q75 113 77 113 29 113 30 113q86 114 12 114 13 114 14 114q79 115 80 115 78 115 22 115q112 116 111 116 17 116 81 116q19 117 81 117 83 117 10 117q31 118 74 118 75 118 27 118q74 119 19 119 76 119 75 119q19 120 1 120 23 120 76 120q23 121 22 121 75 121 76 121q22 122 21 122 77 122 75 122mwater q107 123 112 123 81 123 20 123q114 124 118 124 116 124 81 124q116 125 120 125 115 125 81 125q20 126 81 126 115 126 119 126q121 127 113 127 20 127 117 127t119 128 117 128 20 128mwhite q132 129 131 129 130 129 133 129q140 129 139 129 138 129 141 129q124 129 123 129 122 129 125 129q157 129 156 129 155 129 158 129q161 129 160 129 159 129 162 129q128 129 127 129 126 129 129 129q144 129 143 129 142 129 145 129q114 130 147 130 151 130 118 130q118 131 151 131 149 131 116 131q116 132 149 132 153 132 120 132q120 133 153 133 148 133 115 133q115 134 148 134 152 134 119 134q119 135 152 135 150 135 117 135q117 136 150 136 154 136 121 136q121 137 154 137 146 137 113 137q136 129 135 129 134 129 137 129mcave q108 138 110 138 107 138 109 138q112 139 107 139 110 139 111 139v-0.35688 0.064065 0.482779v-0.344313 0.64621 0.493127v-0.294069 0.064065 0.459258v-0.296748 0.64621 0.475315v-0.242294 0.064065 0.501893v-0.25754 0.64621 0.507602v-0.25333 0.064065 0.568049v-0.265897 0.64621 0.557701v-0.316141 0.064065 0.59157v-0.313462 0.64621 0.575513v-0.367915 0.064065 0.548935v-0.35267 0.64621 0.543226v-0.319765 0.574171 0.525885v-0.058824 0.740772 0.458256v-0.174811 0.740772 0.753156v-0.491123 0.740772 0.733977v-0.570621 0.740772 0.427218v-0.303445 0.740772 0.256817v-0.068909 1.010339 0.624552v-0.336084 1.010339 0.794953v-0.580706 1.010339 0.593514v-0.464719 1.010339 0.298614v-0.148407 1.010339 0.317794v-0.319765 1.17694 0.525885n0.9861 0.0242 0.1645n0.6355 0.0242 -0.7717n0.3506 0.0242 0.9362n-0.9861 0.0242 -0.1645n-0.3506 0.0242 -0.9362n-0.6355 0.0242 0.7717n0.5649 -0.7947 0.2222n0.3859 -0.7947 -0.4686n-0.0367 -0.7947 0.606n-0.5877 -0.7947 0.1523n-0.3264 -0.7947 -0.5118n0.6244 -0.1876 -0.7582n0.9141 -0.1876 0.3595n-0.0595 -0.1876 0.9804n-0.9508 -0.1876 0.2464n-0.5282 -0.1876 -0.8282n0.9508 0.1876 -0.2464n0.5282 0.1876 0.8281n-0.6244 0.1876 0.7582n-0.9141 0.1876 -0.3595n0.0595 0.1876 -0.9804n0.5877 0.7947 -0.1523n0.3264 0.7947 0.5118n-0.3859 0.7947 0.4686n-0.5649 0.7947 -0.2222n0.0367 0.7947 -0.606mtree q170 140 169 140 167 140 168 140q166 141 168 141 167 141 165 141q172 142 171 142 169 142 170 142q174 143 164 143 163 143 173 143q164 144 166 144 165 144 163 144q174 145 173 145 171 145 172 145mleaf t175 146 176 146 177 146t176 147 175 147 180 147t175 148 177 148 178 148t175 149 178 149 179 149t175 150 179 150 180 150t176 151 180 151 185 151t177 152 176 152 181 152t178 153 177 153 182 153t179 154 178 154 183 154t180 155 179 155 184 155t176 156 185 156 181 156t177 157 181 157 182 157t178 158 182 158 183 158t179 159 183 159 184 159t180 160 184 160 185 160t181 161 185 161 186 161t182 162 181 162 186 162t183 163 182 163 186 163t184 164 183 164 186 164t185 165 184 165 186 165v0.080957 0.064065 -0.565232v0.089338 0.568143 -0.561163v0.136496 0.064065 -0.602834v0.137162 0.568143 -0.593541v0.196829 0.064065 -0.573537v0.189115 0.568143 -0.568314v0.201624 0.064065 -0.506638v0.193243 0.568143 -0.510708v0.146085 0.064065 -0.469037v0.145419 0.568143 -0.478329v0.085752 0.064065 -0.498334v0.093466 0.568143 -0.503556v0.12715 0.496104 -0.532038v0.364939 0.662705 -0.659004v0.321383 0.662705 -0.345122v0.009401 0.662705 -0.289549v-0.139853 0.662705 -0.569091v0.079882 0.662705 -0.797424v0.394154 0.932272 -0.494984v0.174419 0.932272 -0.266652v-0.110639 0.932272 -0.405071v-0.067082 0.932272 -0.718954v0.244899 0.932272 -0.774526v0.12715 1.098873 -0.532038n-0.5606 0.016 -0.828n0.9973 0.016 -0.0715n0.4368 0.016 -0.8994n-0.9973 0.016 0.0715n0.5606 0.016 0.828n-0.4368 0.016 0.8994n0.6013 -0.7947 0.0834n0.2652 -0.7947 -0.5461n0.1065 -0.7947 0.5977n-0.5355 -0.7947 0.2859n-0.4374 -0.7947 -0.4209n0.4291 -0.1876 -0.8836n0.9729 -0.1876 0.135n0.1723 -0.1876 0.967n-0.8665 -0.1876 0.4626n-0.7077 -0.1876 -0.6811n0.8665 0.1876 -0.4626n0.7077 0.1876 0.6811n-0.4291 0.1876 0.8836n-0.9729 0.1876 -0.135n-0.1723 0.1876 -0.967n0.5355 0.7947 -0.2859n0.4374 0.7947 0.4209n-0.2652 0.7947 0.5461n-0.6013 0.7947 -0.0834n-0.1065 0.7947 -0.5977mtree q189 166 187 166 188 166 190 166q192 167 194 167 193 167 191 167q192 168 191 168 189 168 190 168q187 169 197 169 198 169 188 169q195 170 193 170 194 170 196 170q198 171 197 171 195 171 196 171mleaf t199 172 200 172 201 172t200 173 199 173 204 173t199 174 201 174 202 174t199 175 202 175 203 175t199 176 203 176 204 176t200 177 204 177 209 177t201 178 200 178 205 178t202 179 201 179 206 179t203 180 202 180 207 180t204 181 203 181 208 181t200 182 209 182 205 182t201 183 205 183 206 183t202 184 206 184 207 184t203 185 207 185 208 185t204 186 208 186 209 186t205 187 209 187 210 187t206 188 205 188 210 188t207 189 206 189 210 189t208 190 207 190 210 190t209 191 208 191 210 191v0.092239 0.397535 -0.499705v-0.029808 0.508518 -0.325565v0.10942 0.416538 -0.494015v-0.012843 0.524813 -0.3221v0.135079 0.405286 -0.480134v0.003902 0.518502 -0.308556v0.139468 0.385173 -0.477787v0.001231 0.502739 -0.296111v0.126721 0.364661 -0.48581v-0.014877 0.491395 -0.294734v0.101374 0.371292 -0.495273v-0.028742 0.490967 -0.310945v-0.004242 0.486043 -0.333664v0.059533 0.592814 -0.266877v0.025328 0.475605 -0.196025v-0.098667 0.429479 -0.245276v-0.141094 0.518182 -0.346566v-0.04332 0.619128 -0.359916v0.004523 0.602239 -0.13721v-0.09325 0.501293 -0.123861v-0.196104 0.527607 -0.2169v-0.161899 0.644816 -0.287751v-0.037903 0.690942 -0.238501v-0.132329 0.634378 -0.150112n0.8411 0.2401 0.4846n0.4499 -0.5537 0.7007n-0.8561 -0.3605 -0.3703n-0.4309 0.5932 -0.68n-0.3506 -0.879 0.3232n0.4809 0.8546 -0.1962n0.8919 -0.3942 -0.2215n0.6774 0.0542 -0.7336n0.3977 -0.9045 -0.154n-0.1223 -0.7715 -0.6244n0.0506 -0.179 -0.9826n0.5723 0.6944 -0.4363n0.9193 -0.0312 0.3923n0.1196 -0.8569 0.5015n-0.7218 -0.6416 -0.2596n-0.442 0.3171 -0.8391n0.7218 0.6416 0.2596n0.442 -0.3171 0.8391n-0.5723 -0.6944 0.4363n-0.9193 0.0312 -0.3923n-0.1196 0.8569 -0.5015n0.1223 0.7715 0.6244n-0.0506 0.179 0.9826n-0.6774 -0.0542 0.7336n-0.8919 0.3942 0.2215n-0.3977 0.9045 0.154mtree q217 192 215 192 216 192 218 192q219 193 217 193 218 193 220 193q221 194 222 194 212 194 211 194q211 195 212 195 214 195 213 195q221 196 219 196 220 196 222 196q216 197 215 197 213 197 214 197mleaf t223 198 224 198 225 198t224 199 223 199 228 199t223 200 225 200 226 200t223 201 226 201 227 201t223 202 227 202 228 202t224 203 228 203 233 203t225 204 224 204 229 204t226 205 225 205 230 205t227 206 226 206 231 206t228 207 227 207 232 207t224 208 233 208 229 208t225 209 229 209 230 209t226 210 230 210 231 210t227 211 231 211 232 211t228 212 232 212 233 212t229 213 233 213 234 213t230 214 229 214 234 214t231 215 230 215 234 215t232 216 231 216 234 216t233 217 232 217 234 217v0.882907 -1.054189 0.859013v0.666037 -1.050401 0.773342v0.788073 -0.800572 0.892122v0.683312 -0.790388 0.874494v0.813166 -0.849432 0.663805v0.898854 -0.798259 0.802819v0.774533 -1.19006 0.880299v0.893884 -1.115737 0.766316v0.870485 -1.139255 0.725045v0.694481 -1.04971 0.862944v0.768237 -1.202278 0.722659v0.697016 -1.171588 0.747182v0.922609 -0.901268 0.770313v0.780068 -1.014197 0.910646v0.865759 -0.868248 0.877443v0.668243 -0.952369 0.820325v0.734137 -0.88361 0.876698v0.882041 -0.943304 0.67157v0.691503 -0.843993 0.709198v0.750103 -0.992924 0.638298v0.824653 -0.676652 0.724162v0.822803 -0.706299 0.825649v0.731815 -0.672827 0.815651v0.731845 -0.712954 0.737529n0.5568 -0.8296 0.0421n-0.369 -0.9254 0.0865n-0.9456 -0.123 0.3011n0.8873 0.0363 0.4597n-0.3823 0.8219 -0.4223n-0.9886 0.1215 -0.0884n-0.1722 -0.0707 0.9825n0.4119 -0.1087 0.9047n0.2161 0.078 -0.9733n-0.4751 -0.239 0.8469n-0.711 0.1123 0.6942n0.458 0.2659 -0.8483n-0.4373 -0.1395 0.8884n0.5123 -0.8382 0.1872n-0.395 0.3263 -0.8588n0.2474 0.0745 0.966n-0.9885 0.0827 -0.1262n0.2344 -0.3458 -0.9086n0.7367 -0.5199 0.4324n0.7793 0.5976 0.1888n-0.2802 0.3044 -0.9104n0.3057 0.9124 0.2721n-0.9364 0.3158 -0.1532n-0.4406 -0.3681 -0.8188n-0.5015 0.0482 0.8638n-0.0073 0.5113 0.8594n0.9236 -0.134 -0.3592n0.8579 0.2865 -0.4265n-0.849 -0.373 0.3742n-0.8312 -0.0778 -0.5505n0.9699 -0.1337 0.2036n-0.4049 0.094 0.9095n0.5747 0.3836 0.7229n0.8894 0.0622 0.4528n0.3288 -0.2666 -0.906mStone t245 218 242 218 241 218t245 219 241 219 246 219t236 220 244 220 250 220t235 221 247 221 249 221t258 222 257 222 255 222t250 223 238 223 253 223t251 224 237 224 238 224q235 225 249 225 248 225 241 225t252 226 254 226 239 226t250 227 251 227 238 227t250 228 244 228 251 228t239 229 255 229 252 229t241 230 248 230 244 230t245 231 243 231 242 231t254 232 255 232 239 232t248 233 249 233 237 233t253 234 236 234 250 234t243 235 245 235 254 235t241 236 242 236 235 236t256 237 240 237 255 237q254 238 253 238 258 238 255 238t255 239 257 239 256 239q253 240 238 240 257 240 258 240t246 241 254 241 245 241t251 242 244 242 248 242q237 243 256 243 257 243 238 243q252 244 247 244 242 244 243 244q247 245 252 245 255 245 240 245q246 246 241 246 244 246 236 246q254 247 246 247 236 247 253 247t247 248 235 248 242 248t251 249 248 249 237 249q249 250 240 250 256 250 237 250t240 251 249 251 247 251t254 252 252 252 243 252v-0.736873 -0.740306 -0.638371v-0.559871 -0.728862 -0.708428v-0.64259 -0.940649 -0.611296v-0.556528 -0.941929 -0.625711v-0.666315 -0.902509 -0.798002v-0.732722 -0.949957 -0.684323v-0.657654 -0.62231 -0.620965v-0.749944 -0.69088 -0.714174v-0.732449 -0.670146 -0.747923v-0.583007 -0.731331 -0.635156v-0.65334 -0.61193 -0.749874v-0.593239 -0.632171 -0.729821v-0.758984 -0.867596 -0.710905v-0.650381 -0.766009 -0.596149v-0.710439 -0.890698 -0.6233v-0.555101 -0.808905 -0.670008v-0.604197 -0.869359 -0.623909v-0.728738 -0.83062 -0.791652v-0.566796 -0.89879 -0.760882v-0.624534 -0.781338 -0.81886v-0.6641 -1.044094 -0.748645v-0.664579 -1.019808 -0.665654v-0.588181 -1.040991 -0.673831v-0.590893 -1.00829 -0.737714n-0.6229 0.7812 0.0421n0.2919 0.9525 0.0865n0.9324 0.2001 0.3011n-0.8814 -0.1089 0.4597n0.4484 -0.7878 -0.4223n0.9953 -0.0401 -0.0884n0.1658 0.0845 0.9825n-0.4195 0.0746 0.9047n-0.209 -0.0955 -0.9733n0.4539 0.2771 0.8469n0.7178 -0.0536 0.6941n-0.4347 -0.3025 -0.8483n0.4244 0.1749 0.8884n-0.5792 0.7934 0.1872n0.4204 -0.2928 -0.8588n-0.2405 -0.0945 0.966n0.992 -0.0015 -0.1262n-0.2619 0.3254 -0.9086n-0.7768 0.4578 0.4324n-0.7277 -0.6594 0.1888n0.3042 -0.2804 -0.9104n-0.23 -0.9344 0.2721n0.9591 -0.238 -0.1532n0.4089 0.403 -0.8188n0.5037 -0.0069 0.8638n0.0491 -0.5089 0.8594n-0.9315 0.0578 -0.3592n-0.8315 -0.3558 -0.4265n0.8156 0.4414 0.3742n0.822 0.1457 -0.5505n-0.9776 0.0538 0.2036n0.4112 -0.0605 0.9095n-0.5413 -0.4294 0.7229n-0.8813 -0.1349 0.4528n-0.3495 0.2388 -0.906mStone t269 253 266 253 265 253t269 254 265 254 270 254t260 255 268 255 274 255t259 256 271 256 273 256t282 257 281 257 279 257t274 258 262 258 277 258t275 259 261 259 262 259q259 260 273 260 272 260 265 260t276 261 278 261 263 261t274 262 275 262 262 262t274 263 268 263 275 263t263 264 279 264 276 264t265 265 272 265 268 265t269 266 267 266 266 266t278 267 279 267 263 267t272 268 273 268 261 268t277 269 260 269 274 269t267 270 269 270 278 270t265 271 266 271 259 271t280 272 264 272 279 272q278 273 277 273 282 273 279 273t279 274 281 274 280 274q277 275 262 275 281 275 282 275t270 276 278 276 269 276t275 277 268 277 272 277q261 278 280 278 281 278 262 278q276 279 271 279 266 279 267 279q271 280 276 280 279 280 264 280q270 281 265 281 268 281 260 281q278 282 270 282 260 282 277 282t271 283 259 283 266 283t275 284 272 284 261 284q273 285 264 285 280 285 261 285t264 286 273 286 271 286t278 287 276 287 267 287v-0.041704 -1.784495 0.093536v0.250675 -1.738581 0.015429v-0.021448 -1.457375 -0.0506v0.100212 -1.430211 -0.11449v0.133346 -1.467204 0.215755v-0.072255 -1.443089 0.12858v0.086474 -1.954336 0.006692v0.029387 -1.842221 0.20821v0.090083 -1.860281 0.236851v0.153488 -1.762081 -0.056877v0.213628 -1.931233 0.16928v0.263873 -1.891042 0.08409v-0.050635 -1.569951 0.195746v0.019662 -1.735958 -0.045913v-0.077833 -1.548141 0.034493v0.191885 -1.62406 -0.046181v0.065149 -1.555427 -0.064279v0.075195 -1.596292 0.274164v0.226788 -1.459849 0.073223v0.250283 -1.639734 0.214208v0.038482 -1.260627 0.136639v-0.028976 -1.323211 0.032733v0.067358 -1.269223 -0.03184v0.134459 -1.301902 0.056008n-0.3346 -0.8606 0.384n0.4013 -0.8968 -0.1864n0.6102 -0.1089 -0.7847n-0.9822 -0.1126 0.1504n0.412 0.9109 0.0241n0.8261 0.2058 -0.5246n-0.4092 -0.2386 -0.8807n-0.8289 -0.3031 -0.4702n0.3674 0.241 0.8983n-0.0602 -0.3569 -0.9322n0.1585 0.0324 -0.9868n0.0703 0.3848 0.9203n-0.1308 -0.2698 -0.954n-0.38 -0.8926 0.2425n0.753 0.5066 0.4199n-0.7617 -0.1231 -0.6361n0.854 0.1748 -0.49n0.3861 -0.1878 0.9031n-0.7532 -0.6419 0.1438n-0.834 0.4954 0.243n0.6936 0.4865 0.5312n-0.5524 0.8223 -0.1366n0.7887 0.4045 -0.4629n0.882 -0.1781 0.4362n-0.0963 -0.0767 -0.9924n-0.5684 0.3428 -0.7479n-0.5167 -0.1307 0.8461n-0.4953 0.2986 0.8158n0.5323 -0.3744 -0.7593n0.9956 0.0846 -0.0401n-0.8746 -0.2377 0.4225n-0.2076 -0.0471 -0.9771n-0.938 0.2015 -0.282n-0.9843 -0.086 0.1544n0.2955 -0.1173 0.9481mStone t293 288 290 288 289 288t293 289 289 289 294 289t284 290 292 290 298 290t283 291 295 291 297 291t306 292 305 292 303 292t298 293 286 293 301 293t299 294 285 294 286 294q283 295 297 295 296 295 289 295t300 296 302 296 287 296t298 297 299 297 286 297t298 298 292 298 299 298t287 299 303 299 300 299t289 300 296 300 292 300t293 301 291 301 290 301t302 302 303 302 287 302t296 303 297 303 285 303t301 304 284 304 298 304t291 305 293 305 302 305t289 306 290 306 283 306t304 307 288 307 303 307q302 308 301 308 306 308 303 308t303 309 305 309 304 309q301 310 286 310 305 310 306 310t294 311 302 311 293 311t299 312 292 312 296 312q285 313 304 313 305 313 286 313q300 314 295 314 290 314 291 314q295 315 300 315 303 315 288 315q294 316 289 316 292 316 284 316q302 317 294 317 284 317 301 317t295 318 283 318 290 318t299 319 296 319 285 319q297 320 288 320 304 320 285 320t288 321 297 321 295 321t302 322 300 322 291 322

执行 Load Obj. File Name: spaceship Data: »v0.513531 0.03316 -1.235458v-0.51354 0.03316 -1.235458v0.033499 -0.28953 -0.231547v-0.000085 -0.329031 -1.163254v0.451976 -0.073479 -0.181736v0.565535 -0.073479 -0.181736v0.528484 0.086295 -0.181736v0.533966 0.004716 -0.471801v0.451976 -0.095237 -0.488884v0.451976 -0.116338 -0.183132v0.565535 -0.116338 -0.183132v0.451976 0.144566 -0.510881v0.590262 -0.05086 -0.510881v0.563453 0.144566 -0.510881v0.531255 0.061605 -0.471801v0.43916 -0.073479 0.065492v0.438561 0.052754 0.065491v0.452577 -0.073479 0.065492v0.494451 0.004716 -0.471801v-0.451986 -0.073479 -0.181736v-0.451986 0.086295 -0.181736v-0.49446 0.004716 -0.471801v-0.49446 0.061605 -0.471801v-0.565544 -0.073479 -0.181736v-0.451986 -0.116338 -0.183132v-0.451986 0.144566 -0.510881v-0.563463 0.144566 -0.510881v-0.452586 -0.073479 0.065492v0.063452 -0.321739 0.680524v-0.034074 -0.289879 -0.231547v0.318722 0.004096 0.80771v0.452411 -0.122476 0.868773v0.055717 -0.170231 1.941422v-0.395977 0.004096 0.363167v-0.318732 0.004096 0.80771v0.395967 0.004096 0.363167v-0.171175 0.268309 0.163167v0.171166 0.268309 0.163167v0.074728 -0.244864 1.506145v0.50482 -0.244864 -0.385641v0.562056 -0.122476 -0.450933v-0.562066 -0.122476 -0.450933v-0.068754 0.314443 -0.543948v0.582749 0.266825 -0.060796v-0.582759 0.266825 -0.060796v0.640172 0.348347 -0.595672v0.842313 0.028411 0.127445v0.566519 0.086426 0.571528v0.564523 -0.023371 0.82436v0.675536 -0.289477 -0.060796v-0.675546 -0.289477 -0.060796v-0.921733 0.043213 -0.310149v0.75587 -0.34532 -0.595672v0.725642 -0.280137 -0.048322v0.601921 -0.125825 0.571528v-0.652037 -0.116485 0.584003v0.652027 -0.116485 0.584003v0.046988 0.351079 -0.174973v-0.046997 0.351079 -0.174973v0.036803 0.409266 -0.292112v0.016829 0.441231 -0.589189v-0.036813 0.409266 -0.292112v-0.016839 0.441231 -0.589189v-0.022081 -0.368473 -0.158079v0.073942 0.213573 -0.359271v-0.000005 0.124517 -1.841058v-0.533976 0.004716 -0.471801v0.451976 0.086295 -0.181736v0.451976 -0.05086 -0.510881v0.43916 -0.097149 0.065492v0.590262 -0.095237 -0.488884v0.494451 0.061605 -0.471801v0.452577 -0.097149 0.065492v-0.451986 -0.05086 -0.510881v-0.590271 -0.05086 -0.510881v-0.528493 0.086295 -0.181736v-0.43917 -0.097149 0.065492v-0.451986 -0.095237 -0.488884v-0.590271 -0.095237 -0.488884v-0.565544 -0.116338 -0.183132v-0.531265 0.061605 -0.471801v-0.43917 -0.073479 0.065492v-0.43917 0.052754 0.065491v-0.452586 -0.097149 0.065492v-0.088675 -0.245319 -0.311217v-0.140569 -0.24631 0.680524v0.139538 -0.244864 0.680524v0.087643 -0.244409 -0.311217v-0.026046 -0.501567 0.090881v-0.063694 -0.322396 0.680524v0.027657 -0.50129 0.090881v-0.000413 -0.242237 1.406331v0.000156 -0.375694 0.769879v0.000922 -0.524079 0.128622v-0.063227 -0.412804 -0.155333v0.063919 -0.412147 -0.155333v0.000844 -0.508979 -0.246442v0.022318 -0.368243 -0.158079v-0.11658 0.004096 1.359211v-0.084478 0.143057 1.051067v0.562056 -0.122476 0.32159v-0.562066 -0.122476 0.32159v-0.45242 -0.122476 0.868773v0.084548 0.143078 1.051048v0.11657 0.004096 1.359211v-0.055727 -0.170231 1.941422v0.242962 0.317779 0.055669v0.111114 0.396264 -0.549063v-0.129604 0.254761 0.501541v0.129516 0.254794 0.501511v-0.242972 0.317779 0.055669v-0.074738 -0.244864 1.506145v-0.111124 0.396264 -0.549063v0.403435 -0.051715 -0.492329v-0.403444 -0.051715 -0.492329v0.068745 0.314443 -0.543948v0.208016 0.035461 -0.343573v0.921724 0.043213 -0.310149v-0.640181 0.348347 -0.595672v0.792207 0.019071 0.11497v0.632855 0.276166 -0.048322v-0.632865 0.276166 -0.048322v-0.566529 0.086426 0.571528v-0.53948 -0.028041 0.818122v0.616625 0.095766 0.584003v-0.616635 0.095766 0.584003v-0.792216 0.01907 0.11497v-0.842322 0.028411 0.127445v-0.755879 -0.34532 -0.595672v-0.725652 -0.280137 -0.048322v0.53947 -0.028041 0.818122v-0.564533 -0.023371 0.82436v-0.601931 -0.125825 0.571528v0.396669 -0.244864 0.855061v0.50482 -0.244864 0.183586v-0.50483 -0.244864 0.183586v-0.396679 -0.244864 0.855061v-0.50483 -0.244864 -0.385641v0.048559 0.39854 -0.533915v-0.048569 0.39854 -0.533915v-0.000005 0.306593 0.124382v-0.000005 0.338765 0.065738v-0.000005 0.500326 -0.451382v-0.073952 0.213573 -0.359271v-0.208025 0.035461 -0.343573v-0.000005 0.532386 -0.769221n-1 0 0n0.9782 0.1759 0.1103n0.9098 -0.0087 0.4149n0.9967 0.0186 0.0789n0 0.9847 0.1743n0 -0.9976 -0.0689n0 -0.4441 -0.896n0 0 1n-0.9987 0 -0.0518n0 -0.997 0.077n0 0.9909 0.1344n0.909 0.1623 0.384n1 0 0n-0.9782 0.1759 0.1103n-0.9098 -0.0087 0.4149n-0.9967 0.0186 0.0789n0.9987 0 -0.0518n-0.909 0.1623 0.384n-0.909 0.1622 0.3839n0.6222 -0.7822 -0.0316n0.7039 -0.6967 0.1383n0.7475 -0.65 0.137n-0.7409 -0.6575 0.1372n-0.7014 -0.7087 0.0763n0.7547 -0.639 0.1488n0.9811 -0.1866 -0.0514n-0.7481 -0.6467 0.1488n-0.6141 -0.7886 -0.0316n-0.6314 0.7664 0.118n-0.4884 0.7031 0.5168n0.6647 0.6991 0.2636n0 0.959 0.2835n0 0.8942 0.4476n0.4884 0.7031 0.5168n-0.6647 0.6991 0.2636n0.6314 0.7664 0.118n0 0.9917 0.1287n0 -0.0878 -0.9961n0 -0.4707 -0.8823n-0.7598 0.645 -0.0819n0.8097 0.5869 0n0 -0.505 -0.8631n0 -0.0624 -0.9981n-0.1781 -0.0084 -0.984n0.1781 -0.0084 -0.984n-0.6885 0.7146 0.1237n0.6885 0.7146 0.1237n-0.2118 0.9693 0.125n0.2118 0.9693 0.125n-0.2393 0.9353 0.2607n0.2605 0.8863 0.3828n-0.2605 0.8863 0.3828n0.2393 0.9353 0.2607n0.6616 0.7164 0.2214n-0.6616 0.7164 0.2214n-0.8893 -0.4409 0.1215n0.8893 -0.4409 0.1215n0.1516 -0.9805 0.1251n-0.1516 -0.9805 0.1251n0.1136 -0.9585 0.2613n-0.9141 0.1525 0.3757n-0.0759 -0.9202 0.3841n0.0759 -0.9202 0.3841n-0.1136 -0.9585 0.2613n0.8655 -0.4512 0.2175n0.9141 0.1525 0.3757n-0.8655 -0.4512 0.2175n-0.6967 -0.7039 0.1385n-0.907 0.4204 0.0255n-0.861 0.4709 0.1922n0 -0.7914 -0.6113n0.907 0.4204 0.0255n-0.7309 0.6514 0.2035n0.9604 0.2787 -0.0022n-0.9604 0.2787 -0.0022n0.7309 0.6514 0.2035n-0.9791 -0.1966 -0.0514n0.7087 -0.7014 0.0763n0.861 0.4709 0.1922n0.7598 0.645 -0.0819n-0.8097 0.5869 0n0 -0.8922 -0.4517n-0.9997 0 -0.025n0 -0.9993 -0.0372n0 0.9993 -0.0372n0.9986 0.0476 -0.0249n0.9997 0 -0.025n-0.9986 0.0476 -0.0249n-0.9838 -0.1767 -0.0285n-0.0052 0.9991 -0.0422n0.0052 -0.9992 -0.0391n0.9856 -0.1666 -0.0285n0 -0.9982 -0.0594n0 0.9982 -0.06n-0.7998 0.5954 -0.0757n0.7998 0.5954 -0.0757n-0.6807 0.7139 0.164n0.6708 0.6997 0.2459n0 0.9116 0.4111n-0.0001 0.9992 0.04n-0.0001 0.98 0.1992n0.6807 0.714 0.1639n-0.6706 0.7 0.2458n-0.7118 0.6928 0.1152n0.7118 0.6929 0.1153n0.5626 -0.0112 -0.8266n0.5628 0.0135 -0.8265n0.5624 0.006 -0.8269n0.5624 -0.0052 -0.8269n0.0072 0.48 -0.8772n-0.0072 0.48 -0.8772n-0.0031 0.4798 -0.8773n0.003 0.4798 -0.8773n-0.0019 -0.3567 -0.9342n0.0022 -0.3568 -0.9342n0.0009 -0.3567 -0.9342n-0.0007 -0.3567 -0.9342n-0.5374 -0.0519 -0.8417n-0.5391 -0.0733 -0.8391n-0.5362 -0.0683 -0.8413n-0.5396 -0.0591 -0.8399n-0.5627 -0.0112 -0.8266n-0.5624 -0.0051 -0.8269n-0.5624 0.006 -0.8269n-0.5628 0.0135 -0.8265n-0.003 0.4798 -0.8773n0.0031 0.4798 -0.8773n0.0019 -0.3567 -0.9342n0.0007 -0.3567 -0.9342n-0.0009 -0.3567 -0.9342n-0.0022 -0.3568 -0.9342n0.5374 -0.0519 -0.8417n0.5396 -0.0591 -0.8398n0.5363 -0.0683 -0.8413n0.5391 -0.0733 -0.8391n0.0051 -0.9942 0.1075n-0.0049 0.9567 -0.291n-0.0052 0.9997 -0.0224n-0.0035 -0.835 -0.5502n0.0122 -0.8349 -0.5502n0.0076 -0.8348 -0.5506n0.001 -0.8348 -0.5506n-0.0056 -0.1345 -0.9909n0.007 -0.1345 -0.9909n0.0033 -0.1347 -0.9909n-0.0019 -0.1347 -0.9909n-0.4449 -0.5612 -0.6979n-0.4449 -0.5725 -0.6887n-0.445 -0.5742 -0.6872n-0.4447 -0.5695 -0.6913n0.4508 -0.5679 -0.6887n0.4507 -0.5565 -0.6979n0.4506 -0.5648 -0.6913n0.451 -0.5696 -0.6872n-0.6604 -0.706 0.2558n0.6604 -0.706 0.2558n0 -1 0n-0.8576 -0.4909 0.1533n0.8576 -0.4909 0.1533n0 -0.9856 0.169n-0.9058 -0.4236 0n0.9058 -0.4236 0n0 0.8628 -0.5056n0 -0.8776 -0.4794n0.667 -0.6247 -0.4062n-0.667 -0.6247 -0.4062n0.6884 -0.7147 -0.1237n0.6885 -0.7146 -0.1237n-0.6884 -0.7147 -0.1237n-0.6885 -0.7146 -0.1237n0.6616 -0.7164 -0.2214n-0.8015 -0.504 -0.3219n0.8015 -0.504 -0.3219n-0.6616 -0.7164 -0.2214n0.8893 0.4409 -0.1216n0.8893 0.4408 -0.1215n0.8893 0.4409 -0.1215n-0.8893 0.4409 -0.1216n-0.8893 0.4409 -0.1215n-0.8893 0.4408 -0.1215n0.8655 0.4512 -0.2175n-0.9242 0.2117 -0.318n0.9242 0.2117 -0.318n-0.8655 0.4512 -0.2175mhull q5 1 68 1 12 1 69 1q13 2 14 2 7 2 6 2q11 3 6 3 18 3 73 3q13 4 6 4 11 4 71 4q14 5 12 5 68 5 7 5q9 6 71 6 11 6 10 6q69 7 13 7 71 7 9 7t18 8 17 8 16 8q18 8 16 8 70 8 73 8t68 9 5 9 16 9q10 10 11 10 73 10 70 10t7 11 68 11 17 11q6 12 7 12 17 12 18 12t17 9 68 9 16 9q20 13 74 13 26 13 21 13q75 14 24 14 76 14 27 14q80 15 84 15 28 15 24 15q75 16 79 16 80 16 24 16q27 5 76 5 21 5 26 5q78 6 25 6 80 6 79 6q74 7 78 7 79 7 75 7t28 8 82 8 83 8q28 8 84 8 77 8 82 8t21 17 82 17 20 17q25 10 77 10 84 10 80 10t76 11 83 11 21 11q24 18 28 19 83 18 76 18t83 17 82 17 21 17t91 20 94 20 97 20t29 21 87 21 92 21t93 22 29 22 92 22t90 23 93 23 92 23t95 24 90 24 86 24q29 25 93 25 94 25 91 25t96 26 88 26 87 26q93 27 90 27 89 27 94 27t94 28 89 28 97 28q35 29 34 29 102 29 103 29q34 30 37 30 111 30 102 30q31 31 105 31 33 31 32 31q105 32 99 32 106 32 33 32q37 33 38 33 107 33 111 33q38 34 36 34 101 34 107 34q99 35 35 35 103 35 106 35q36 36 31 36 32 36 101 36q111 37 107 37 108 37 113 37q117 38 145 38 144 38 65 38q42 39 41 39 40 39 138 39t111 40 113 40 42 40t107 41 101 41 41 41q115 42 114 42 41 42 42 42q116 43 43 43 113 43 108 43q43 44 115 44 42 44 113 44q114 45 116 45 108 45 41 45q128 46 122 46 119 46 52 46q121 47 47 47 118 47 46 47t46 48 44 48 121 48t45 49 119 49 122 49q121 50 44 50 48 50 125 50q124 51 123 51 126 51 132 51q48 52 131 52 49 52 125 52q45 53 122 53 126 53 123 53t47 54 121 54 125 54t122 55 128 55 126 55q128 56 52 56 129 56 130 56q54 57 53 57 118 57 47 57t53 58 54 58 50 58t51 59 130 59 129 59q54 60 57 60 55 60 50 60q126 61 128 61 56 61 132 61q124 62 132 62 56 62 133 62q55 63 57 63 49 63 131 63q51 64 133 64 56 64 130 64t47 65 57 65 54 65q49 66 57 66 47 66 125 66t130 67 56 67 128 67t86 68 90 68 92 68q140 69 59 69 62 69 63 69q59 70 141 70 142 70 62 70q139 71 140 71 63 71 61 71q58 72 139 72 61 72 60 72t62 73 142 73 143 73q60 74 61 74 146 74 143 74q63 75 62 75 143 75 146 75t142 76 60 76 143 76t85 77 95 77 86 77t29 78 96 78 87 78q142 79 141 79 58 79 60 79t108 80 107 80 41 80t102 81 111 81 42 81t61 82 63 82 146 82mthrusters t19 83 72 83 1 83t8 84 19 84 1 84t72 85 15 85 1 85t15 86 8 86 1 86t22 87 2 87 23 87t67 84 2 84 22 84t23 85 2 85 81 85t81 88 2 88 67 88t64 89 30 89 4 89t30 90 3 90 4 90t98 91 64 91 4 91t3 92 98 92 4 92t117 93 145 93 66 93t144 94 65 94 66 94t145 95 144 95 66 95t65 96 117 96 66 96mglass q35 97 100 97 109 97 34 97t31 98 104 98 105 98q105 99 104 99 100 99 99 99q37 100 109 100 110 100 38 100q110 101 109 101 100 101 104 101q36 102 110 102 104 102 31 102t99 103 100 103 35 103t34 104 109 104 37 104t110 105 36 105 38 105mdark_gray q72 106 19 107 69 108 12 109q19 110 8 111 13 112 69 113q15 114 72 115 12 116 14 117q8 118 15 119 14 120 13 121q23 122 26 123 74 124 22 125q22 111 74 126 75 127 67 110q81 128 27 129 26 130 23 131q67 132 75 133 27 134 81 135q96 136 29 136 90 136 95 136q90 137 29 137 91 137 89 137t89 138 91 138 97 138q3 139 30 140 85 141 88 142q64 143 98 144 96 145 95 146q98 147 3 148 88 149 96 150q30 151 64 152 95 153 85 154q106 155 103 155 137 155 112 155q32 156 33 156 39 156 134 156q135 157 136 157 138 157 40 157q137 157 134 157 39 157 112 157q136 157 135 157 134 157 137 157q103 158 102 158 136 158 137 158q101 159 32 159 134 159 135 159q33 160 106 160 112 160 39 160q136 161 102 161 42 161 138 161q101 162 135 162 40 162 41 162q145 163 117 163 114 163 115 163q65 164 144 164 43 164 116 164q144 165 145 165 115 165 43 165q117 166 65 166 116 166 114 166q127 167 52 168 119 168 45 168q44 169 46 170 118 170 120 169t127 171 45 171 123 171t120 172 131 172 48 172t124 173 127 173 123 173t44 174 120 174 48 174q127 175 51 175 129 176 52 177q50 178 120 178 118 179 53 180t127 181 133 181 51 181t120 182 55 182 131 182t124 183 133 183 127 183t50 184 55 184 120 184

执行 Load Obj. File Name: cube Data: »v1 1 -1v1 -1 -1v1 1 1v1 -1 1v-1 1 -1v-1 -1 -1v-1 1 1v-1 -1 1n0 1 0n0 0 1n-1 0 0n0 -1 0n1 0 0n0 0 -1mMaterial q1 1 5 1 7 1 3 1q4 2 3 2 7 2 8 2q8 3 7 3 5 3 6 3q6 4 2 4 4 4 8 4q2 5 1 5 3 5 4 5q6 6 5 6 1 6 2 6

 

定义 Reset

将 {~temp} 设为 9999999999

将 {~stats} 设为 0

隐藏列表 {stats}

隐藏列表 {ERROR}

隐藏列表 {Your File}

隐藏列表 {OBJ. File}

删除 {ERROR} 的全部项目

删除 {meshes} 的全部项目

删除 {meshData} 的全部项目

删除 {triColor} 的全部项目

删除 {quadColor} 的全部项目

删除 {objectVertID} 的全部项目

删除 {objectVertX} 的全部项目

删除 {objectVertY} 的全部项目

删除 {objectVertZ} 的全部项目

删除 {vertX} 的全部项目

删除 {vertY} 的全部项目

删除 {vertZ} 的全部项目

删除 {objectData} 的全部项目

删除 {objectName} 的全部项目

删除 {vertNormX} 的全部项目

删除 {vertNormY} 的全部项目

删除 {vertNormZ} 的全部项目

删除 {materials} 的全部项目

删除 {materialColor} 的全部项目

删除 {textureCostume} 的全部项目

删除 {materialCull} 的全部项目

删除 {STTFConstants1} 的全部项目

删除 {STTFConstants2} 的全部项目

删除 {STTFConstants3} 的全部项目

删除 {STTFConstants4} 的全部项目

删除 {STTFConstants5} 的全部项目

删除 {triVertIndexA} 的全部项目

删除 {triVertIndexB} 的全部项目

删除 {triVertIndexC} 的全部项目

删除 {triNormIndexA} 的全部项目

删除 {triNormIndexB} 的全部项目

删除 {triNormIndexC} 的全部项目

删除 {quadNormIndexA} 的全部项目

删除 {quadNormIndexB} 的全部项目

删除 {quadNormIndexC} 的全部项目

删除 {quadNormIndexD} 的全部项目

删除 {quadVertIndexA} 的全部项目

删除 {quadVertIndexB} 的全部项目

删除 {quadVertIndexC} 的全部项目

删除 {quadVertIndexD} 的全部项目

删除 {OBJ. File} 的全部项目

将 Right click this list and select import 加入 {OBJ. File}

将 In your file explorer make SURE to select "All Files" in the bottom right corner 加入 {OBJ. File}

将 Do NOT select "Custom Files" in the bottom right corner 加入 {OBJ. File}

将 Select your desired file 加入 {OBJ. File}

显示列表 {OBJ. File}

隐藏列表 {OBJ. File}

将 {~last} 设为 OBJ. File

 

定义 Load Obj. File Name: {name} Data: {obj}

如果 ({obj} 的第 1 个字符 = ») 那么

将 {~material} 设为 None

将 {~file} 设为 {obj}

将 {name} 加入 {meshes}

将 {~i2} 设为 2

重复执行直到 ({~file} 的字符数 < {~i2})

如果 {~items} 包含 {~file} 的第 {~i2} 个字符 ? 那么

将 {~ID} 设为 {~items} 中第一个 {~file} 的第 {~i2} 个字符 的编号

如果 ({~ID} < 3) 那么

如果 ({~ID} = 1) 那么

执行 obj. read

将 ({~text} * -100) 加入 {vertX}

执行 obj. read

将 ({~text} * 100) 加入 {vertY}

执行 obj. read

将 ({~text} * 100) 加入 {vertZ}

否则

执行 obj. read

将 {~text} 加入 {triVertIndexA}

执行 obj. read

将 {~text} 加入 {triNormIndexA}

执行 obj. read

将 {~text} 加入 {triVertIndexB}

执行 obj. read

将 {~text} 加入 {triNormIndexB}

执行 obj. read

将 {~text} 加入 {triVertIndexC}

执行 obj. read

将 {~text} 加入 {triNormIndexC}

将 {~material} 加入 {triColor}

否则

如果 ({~ID} < 5) 那么

如果 ({~ID} = 3) 那么

执行 obj. read

将 {~text} 加入 {quadVertIndexA}

执行 obj. read

将 {~text} 加入 {quadNormIndexA}

执行 obj. read

将 {~text} 加入 {quadVertIndexB}

执行 obj. read

将 {~text} 加入 {quadNormIndexB}

执行 obj. read

将 {~text} 加入 {quadVertIndexC}

执行 obj. read

将 {~text} 加入 {quadNormIndexC}

执行 obj. read

将 {~text} 加入 {quadVertIndexD}

执行 obj. read

将 {~text} 加入 {quadNormIndexD}

将 {~material} 加入 {quadColor}

否则

如果 ({~ID} = 4) 那么

执行 obj. read

将 ( - {~text}) 加入 {vertNormX}

执行 obj. read

将 {~text} 加入 {vertNormY}

执行 obj. read

将 {~text} 加入 {vertNormZ}

否则

如果 ({~ID} = 5) 那么

将 {~i2} 增加 1

将 {~text} 设为

重复执行直到 ({~file} 的第 {~i2} 个字符 = )

将 {~text} 设为 连接 {~text} 和 {~file} 的第 {~i2} 个字符

将 {~i2} 增加 1

如果 {materials} 包含 {~text} ? 那么

将 {~material} 设为 {materials} 中第一个 {~text} 的编号

否则

将 {~text} 加入 {materials}

将 (16711900 * {materials} 的项目数 除以 2 的余数) 加入 {materialColor}

将 error_br_a 加入 {textureCostume}

将 10.392304845413262 加入 {STTFConstants1}

将 0.24605149764209297 加入 {STTFConstants2}

将 -17.633489373763908 加入 {STTFConstants3}

将 -28.65260025725912 加入 {STTFConstants4}

将 -37.46934494414107 加入 {STTFConstants5}

将 1 加入 {materialCull}

将 {~material} 设为 {materials} 中第一个 {~text} 的编号

否则

将 {~i2} 增加 1

将 {vertX} 的项目数 加入 {meshData}

将 {vertNormX} 的项目数 加入 {meshData}

将 {quadVertIndexA} 的项目数 加入 {meshData}

将 {triVertIndexA} 的项目数 加入 {meshData}

否则

将 ERROR: 加入 {ERROR}

Your OBJ. File is not formatted correctly 加入 {ERROR}

To format your file, select the Meshes sprite and click Import OBJ. File 加入 {ERROR}

将 连接 File: " 和 连接 {name} 和 " 加入 {ERROR}

显示列表 {ERROR}

 

定义 Import OBJ. File

显示列表 {OBJ. File}

隐藏列表 {Your File}

隐藏列表 {ERROR}

将 {~last} 设为 OBJ. File

将 {~temp} 设为 -999

 

将 ERROR: 加入 {ERROR}

Failed to load OBJ file 加入 {ERROR}

Please use a valid OBJ file 加入 {ERROR}

显示列表 {ERROR}

 

定义 Import OBJ. File

显示列表 {OBJ. File}

隐藏列表 {Your File}

隐藏列表 {ERROR}

将 {~last} 设为 OBJ. File

将 {~temp} 设为 -999

 

定义 load file

将 ERROR: 加入 {ERROR}

Failed to load OBJ file 加入 {ERROR}

Please use a valid OBJ file 加入 {ERROR}

显示列表 {ERROR}

 

Textures

代码

当接收到 Load

执行 Materials

执行 Textures

 

定义 Set material: {name} to STTF texture costume: {texture} (_br_a)

如果 {materials} 包含 {name} ? 那么

将 {textureCostume} 的第 {materials} 中第一个 {name} 的编号 项替换为 {texture}

否则

将 {name} 加入 {materials}

将 {texture} 加入 {textureCostume}

 

定义 Materials

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: material to color: 255 255 (rgba)

 

定义 Enable textures for object: {name}

将 {objectData} 的第 (({objectName} 中第一个 {name} 的编号 * 11) - 10) 项替换为 0

 

定义 Set material: {name} to color: {color} (hex)

如果 {materials} 包含 {name} ? 那么

将 {materialColor} 的第 {materials} 中第一个 {name} 的编号 项替换为 {color}

否则

将 {name} 加入 {materials}

将 {color} 加入 {materialColor}

 

定义 Set material: {name} to color: {r} {g} {b} {a} (rgba)

如果 {materials} 包含 {name} ? 那么

将 {materialColor} 的第 {materials} 中第一个 {name} 的编号 项替换为 ((((256 - {a}) * 16777216) + ({r} * 65536)) + (({g} * 256) + {b}))

否则

将 {name} 加入 {materials}

将 ((((256 - {a}) * 16777216) + ({r} * 65536)) + (({g} * 256) + {b})) 加入 {materialColor}

 

定义 Toggle backface culling (0-1): {toggle} for material: {mat}

将 {materialCull} 的第 {materials} 中第一个 {mat} 的编号 项替换为 {toggle}

 

当接收到 Load

执行 Materials

执行 Textures

 

定义 Textures

执行 Enable textures for object: cube

执行 Enable textures for object: spaceship

执行 Set material: hull to STTF texture costume: metal_br_a (_br_a)

执行 Set material: dark_gray to STTF texture costume: metal_br_a (_br_a)

执行 Set material: thrusters to STTF texture costume: thruster_br_a (_br_a)

执行 Set material: glass to STTF texture costume: glass_br_a (_br_a)

执行 Set custom constants for texture material: hull SRH: 4 32 32

执行 Set custom constants for texture material: dark_gray SRH: 4 32 32

执行 Set custom constants for texture material: thrusters SRH: 4 32 32

执行 Set custom constants for texture material: glass SRH: 4 32 32

执行 Toggle backface culling (0-1): 0 for material: water

执行 Toggle backface culling (0-1): 0 for material: white

 

定义 Set custom constants for texture material: {mat} SRH: {S} {R} {H}

将 {~constTemp1} 设为 ((1 / 平方根(3)) / {R})

将 {~constTemp2} 设为 (-0.5 + ({S} / {R}))

将 {~constTemp3} 设为 平方根((({~constTemp1} * {~constTemp1}) + ({~constTemp2} * {~constTemp2})))

将 {~constTemp4} 设为 ((-1 * {~constTemp2}) - (1 / {R}))

将 {STTFConstants1} 的第 {materials} 中第一个 {mat} 的编号 项替换为 ({~constTemp2} / (-2 * {~constTemp1}))

将 {STTFConstants2} 的第 {materials} 中第一个 {mat} 的编号 项替换为 ((((({H} / 4) * {R}) * {~constTemp1}) / {~constTemp3}) / 100)

将 {STTFConstants3} 的第 {materials} 中第一个 {mat} 的编号 项替换为 (200 * ln(({~constTemp4} / {~constTemp3})))

将 {STTFConstants4} 的第 {materials} 中第一个 {mat} 的编号 项替换为 (ln((2 * {~constTemp3})) * 100)

将 {STTFConstants5} 的第 {materials} 中第一个 {mat} 的编号 项替换为 (ln((2 * {~constTemp4})) * 100)

 

定义 Toggle backface culling (0-1): {toggle} for material: {mat}

将 {materialCull} 的第 {materials} 中第一个 {mat} 的编号 项替换为 {toggle}

 

定义 Enable textures for object: {name}

将 {objectData} 的第 (({objectName} 中第一个 {name} 的编号 * 11) - 10) 项替换为 0

 

定义 Set material: {name} to STTF texture costume: {texture} (_br_a)

如果 {materials} 包含 {name} ? 那么

将 {textureCostume} 的第 {materials} 中第一个 {name} 的编号 项替换为 {texture}

否则

将 {name} 加入 {materials}

将 {texture} 加入 {textureCostume}

 

定义 Textures

执行 Enable textures for object: cube

执行 Enable textures for object: spaceship

执行 Set material: hull to STTF texture costume: metal_br_a (_br_a)

执行 Set material: dark_gray to STTF texture costume: metal_br_a (_br_a)

执行 Set material: thrusters to STTF texture costume: thruster_br_a (_br_a)

执行 Set material: glass to STTF texture costume: glass_br_a (_br_a)

执行 Set custom constants for texture material: hull SRH: 4 32 32

执行 Set custom constants for texture material: dark_gray SRH: 4 32 32

执行 Set custom constants for texture material: thrusters SRH: 4 32 32

执行 Set custom constants for texture material: glass SRH: 4 32 32

执行 Toggle backface culling (0-1): 0 for material: water

执行 Toggle backface culling (0-1): 0 for material: white

定义 Materials

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: to color: (hex)

执行 Set material: material to color: 255 255 (rgba)

 

定义 Set custom constants for texture material: {mat} SRH: {S} {R} {H}

将 {~constTemp1} 设为 ((1 / 平方根(3)) / {R})

将 {~constTemp2} 设为 (-0.5 + ({S} / {R}))

将 {~constTemp3} 设为 平方根((({~constTemp1} * {~constTemp1}) + ({~constTemp2} * {~constTemp2})))

将 {~constTemp4} 设为 ((-1 * {~constTemp2}) - (1 / {R}))

将 {STTFConstants1} 的第 {materials} 中第一个 {mat} 的编号 项替换为 ({~constTemp2} / (-2 * {~constTemp1}))

将 {STTFConstants2} 的第 {materials} 中第一个 {mat} 的编号 项替换为 ((((({H} / 4) * {R}) * {~constTemp1}) / {~constTemp3}) / 100)

将 {STTFConstants3} 的第 {materials} 中第一个 {mat} 的编号 项替换为 (200 * ln(({~constTemp4} / {~constTemp3})))

将 {STTFConstants4} 的第 {materials} 中第一个 {mat} 的编号 项替换为 (ln((2 * {~constTemp3})) * 100)

将 {STTFConstants5} 的第 {materials} 中第一个 {mat} 的编号 项替换为 (ln((2 * {~constTemp4})) * 100)

 

定义 Set material: {name} to color: {color} (hex)

如果 {materials} 包含 {name} ? 那么

将 {materialColor} 的第 {materials} 中第一个 {name} 的编号 项替换为 {color}

否则

将 {name} 加入 {materials}

将 {color} 加入 {materialColor}

 

定义 Set material: {name} to color: {r} {g} {b} {a} (rgba)

如果 {materials} 包含 {name} ? 那么

将 {materialColor} 的第 {materials} 中第一个 {name} 的编号 项替换为 ((((256 - {a}) * 16777216) + ({r} * 65536)) + (({g} * 256) + {b}))

否则

将 {name} 加入 {materials}

将 ((((256 - {a}) * 16777216) + ({r} * 65536)) + (({g} * 256) + {b})) 加入 {materialColor}

 

Audio

代码

当接收到 Load

执行 Play 3D sound: rocket with volume: 100 loop? 1 pitch: at object: spaceship

 

当作为克隆体启动时

重复执行

执行 Get Volume and Pitch

 

当作为克隆体启动时

将 {~sound} 设为 {~sound}

将 {~object} 设为 {~object}

将 {~loop} 设为 {~loop}

将 {~volume} 设为 {~volume}

将 {~mode} 设为 {~mode}

将 {~pitch} 设为 {~pitch}

如果 ({~mode} = 0) 那么

将 {~vX} 设为 {~vX}

将 {~vY} 设为 {~vY}

将 {~vZ} 设为 {~vZ}

将 音调 音效设为 (-1 / 0)

如果 ({~loop} = 1) 那么

重复执行

播放声音 {~sound} 等待播完

否则

播放声音 {~sound} 等待播完

删除此克隆体

 

定义 Get Volume and Pitch

如果 ({~mode} = 1) 那么

将 {~vX} 设为 {objectData} 的第 (({objectName} 中第一个 {~object} 的编号 * 11) - 8) 项

将 {~vY} 设为 {objectData} 的第 (({objectName} 中第一个 {~object} 的编号 * 11) - 7) 项

将 {~vZ} 设为 {objectData} 的第 (({objectName} 中第一个 {~object} 的编号 * 11) - 6) 项

将 {~distance} 设为 平方根((((({~vX} - {playerX}) * ({~vX} - {playerX})) + (({~vY} - {playerY}) * ({~vY} - {playerY}))) + (({~vZ} - {playerZ}) * ({~vZ} - {playerZ}))))

将 {~mag} 设为 (({~volume} * 1000000) / ({~distance} * {~distance}))

将 音调 音效设为 {~pitch}

如果 (1 < {~mag}) 那么

将音量设为 {~mag}%

否则

将音量设为 0%

将 左右平衡 音效设为 (((({~vX} - {playerX}) * cos({camRotX})) - (({~vZ} - {playerZ}) * sin({camRotX}))) / ({~distance} * .01))

 

定义 Play 3D sound: {sound} with volume: {volume} loop? {loop} pitch: {pitch} at object: {name}

将 {~sound} 设为 {sound}

将 {~volume} 设为 {volume}

将 {~loop} 设为 {loop}

将 {~object} 设为 {name}

将 {~pitch} 设为 {pitch}

将 {~mode} 设为 1

克隆 自己

 

定义 Play 3D sound: {sound} with volume: {volume} loop? {loop} pitch: {pitch} at position x: {X} y: {Y} z: {z}

将 {~sound} 设为 {sound}

将 {~volume} 设为 {volume}

将 {~loop} 设为 {loop}

将 {~vX} 设为 {X}

将 {~vY} 设为 {Y}

将 {~vZ} 设为 {Z}

将 {~pitch} 设为 {pitch}

将 {~mode} 设为 0

克隆 自己

 

当接收到 Load

执行 Play 3D sound: rocket with volume: 100 loop? 1 pitch: at object: spaceship

 

当作为克隆体启动时

重复执行

执行 Get Volume and Pitch

 

当作为克隆体启动时

将 {~sound} 设为 {~sound}

将 {~object} 设为 {~object}

将 {~loop} 设为 {~loop}

将 {~volume} 设为 {~volume}

将 {~mode} 设为 {~mode}

将 {~pitch} 设为 {~pitch}

如果 ({~mode} = 0) 那么

将 {~vX} 设为 {~vX}

将 {~vY} 设为 {~vY}

将 {~vZ} 设为 {~vZ}

将 音调 音效设为 (-1 / 0)

如果 ({~loop} = 1) 那么

重复执行

播放声音 {~sound} 等待播完

否则

播放声音 {~sound} 等待播完

删除此克隆体

 

定义 Play 3D sound: {sound} with volume: {volume} loop? {loop} pitch: {pitch} at object: {name}

将 {~sound} 设为 {sound}

将 {~volume} 设为 {volume}

将 {~loop} 设为 {loop}

将 {~object} 设为 {name}

将 {~pitch} 设为 {pitch}

将 {~mode} 设为 1

克隆 自己

 

定义 Play 3D sound: {sound} with volume: {volume} loop? {loop} pitch: {pitch} at position x: {X} y: {Y} z: {z}

将 {~sound} 设为 {sound}

将 {~volume} 设为 {volume}

将 {~loop} 设为 {loop}

将 {~vX} 设为 {X}

将 {~vY} 设为 {Y}

将 {~vZ} 设为 {Z}

将 {~pitch} 设为 {pitch}

将 {~mode} 设为 0

克隆 自己

 

定义 Get Volume and Pitch

如果 ({~mode} = 1) 那么

将 {~vX} 设为 {objectData} 的第 (({objectName} 中第一个 {~object} 的编号 * 11) - 8) 项

将 {~vY} 设为 {objectData} 的第 (({objectName} 中第一个 {~object} 的编号 * 11) - 7) 项

将 {~vZ} 设为 {objectData} 的第 (({objectName} 中第一个 {~object} 的编号 * 11) - 6) 项

将 {~distance} 设为 平方根((((({~vX} - {playerX}) * ({~vX} - {playerX})) + (({~vY} - {playerY}) * ({~vY} - {playerY}))) + (({~vZ} - {playerZ}) * ({~vZ} - {playerZ}))))

将 {~mag} 设为 (({~volume} * 1000000) / ({~distance} * {~distance}))

将 音调 音效设为 {~pitch}

如果 (1 < {~mag}) 那么

将音量设为 {~mag}%

否则

将音量设为 0%

将 左右平衡 音效设为 (((({~vX} - {playerX}) * cos({camRotX})) - (({~vZ} - {playerZ}) * sin({camRotX}))) / ({~distance} * .01))

 

Skybox

代码

当接收到 Frame

全部擦除

面向 90 方向

将 {~height} 设为 (tan({camRotY}) * ( - {fov}))

将 {~skyboxWidth} 设为 363

执行 Skybox ({camRotX} * ({fov} * -.018611)) ({~skyboxWidth} * 1.675)

如果 (0 < {camRotY}) 那么

换成 (({skybox} * 2) - 1) 背景

否则

换成 (({skybox} * 2) - 0) 背景

换成 Icon 造型

如果 (0 < {camRotY}) 那么

将大小设为 200

换成 ({skybox} * 2) 造型

移到 x: y:(tan(({camRotY} + 90)) * ( - {fov}))

面向 {camRotX} 方向

图章

换成 skybox_icon 造型

 

定义 Skybox Part 2 {X}

换成 0x0 造型

将大小设为 (1 / 0)

移到 x:{X} y:{~height}

将大小设为 168

换成 (({skybox} * 2) - 1) 造型

图章

 

定义 Skybox {A} {B}

执行 Skybox Part 2

执行 Skybox Part 2

 

当接收到 Frame

执行 Render Skybox: skybox_day Skybox Width: 363

 

定义 Skybox Part 2 {X}

换成 0x0 造型

将大小设为 (1 / 0)

移到 x:{X} y:{~height}

将大小设为 168

换成 (({~skybox} * 2) - 1) 造型

图章

 

定义 Skybox {A} {B}

执行 Skybox Part 2

执行 Skybox Part 2

 

定义 Render Skybox: {costume} Skybox Width: {width}

全部擦除

面向 90 方向

换成 {costume} 造型

将 {~skybox} 设为 向上取整((造型编号 / 2))

将 {~height} 设为 (tan({camRotY}) * ( - {fov}))

执行 Skybox ({camRotX} * ({fov} * -.018611)) ({width} * 1.675)

如果 (0 < {camRotY}) 那么

换成 (({~skybox} * 2) - 1) 背景

否则

换成 (({~skybox} * 2) - 0) 背景

换成 Icon 造型

如果 (0 < {camRotY}) 那么

将大小设为 200

换成 ({~skybox} * 2) 造型

移到 x: y:(tan(({camRotY} + 90)) * ( - {fov}))

面向 {camRotX} 方向

图章

换成 skybox_icon 造型

 

Globals

代码

当 绿旗 被点击

执行 Globals

 

定义 Globals

将 {fov} 设为 300

将 {movementSpeed} 设为 6000

将 {turnSpeed} 设为 100

将 {firstPerson?} 设为 1

将 {skybox} 设为 1

将 {camRotX} 设为 -302

将 {camRotY} 设为 6.7

将 {camRotZ} 设为 0

将 {playerX} 设为 -2960

将 {playerY} 设为 -755

将 {playerZ} 设为 -820

将 {xAcc} 设为 0

将 {yAcc} 设为 0

将 {zAcc} 设为 0

 

当 绿旗 被点击

执行 Globals

 

定义 Globals

将 {fov} 设为 300

将 {movementSpeed} 设为 6000

将 {turnSpeed} 设为 100

将 {firstPerson?} 设为 1

将 {camRotX} 设为 -302

将 {camRotY} 设为 6.7

将 {camRotZ} 设为 0

将 {playerX} 设为 -2960

将 {playerY} 设为 -755

将 {playerZ} 设为 -820

将 {xAcc} 设为 0

将 {yAcc} 设为 0

将 {zAcc} 设为 0

 

Logic

代码

当接收到 Frame

执行 camera

执行 Collision (INDEV)

 

定义 Collisions: Detect Collision With Sphere r: {r} At x: {x} y: {y} z: {z} And Triangle x1: {x1} y1: {y1} z1: {z1} x2: {x2} y2: {y2} z2: {z2} x3: {x3} y3: {y3} z3: {z3} nx: {nx} ny: {ny} nz: {nz}

将 {Collision: Intersects?} 设为 0

将 {#Distance} 设为 ((({x} - {x1}) * {nx}) + ((({y} - {y1}) * {ny}) + (({z} - {z1}) * {nz})))

如果 (绝对值({#Distance}) < {r}) 那么

将 {Collision: Projected Plane X} 设为 ({x} - ({nx} * {#Distance}))

将 {Collision: Projected Plane Y} 设为 ({y} - ({ny} * {#Distance}))

将 {Collision: Projected Plane Z} 设为 ({z} - ({nz} * {#Distance}))

如果 (((((({y2} - {y1}) * ({Collision: Projected Plane Z} - {z1})) - (({z2} - {z1}) * ({Collision: Projected Plane Y} - {y1}))) * {nx}) + ((((({z2} - {z1}) * ({Collision: Projected Plane X} - {x1})) - (({x2} - {x1}) * ({Collision: Projected Plane Z} - {z1}))) * {ny}) + (((({x2} - {x1}) * ({Collision: Projected Plane Y} - {y1})) - (({y2} - {y1}) * ({Collision: Projected Plane X} - {x1}))) * {nz}))) > 0) 那么

如果 (((((({y3} - {y2}) * ({Collision: Projected Plane Z} - {z2})) - (({z3} - {z2}) * ({Collision: Projected Plane Y} - {y2}))) * {nx}) + ((((({z3} - {z2}) * ({Collision: Projected Plane X} - {x2})) - (({x3} - {x2}) * ({Collision: Projected Plane Z} - {z2}))) * {ny}) + (((({x3} - {x2}) * ({Collision: Projected Plane Y} - {y2})) - (({y3} - {y2}) * ({Collision: Projected Plane X} - {x2}))) * {nz}))) > 0) 那么

如果 (((((({y1} - {y3}) * ({Collision: Projected Plane Z} - {z3})) - (({z1} - {z3}) * ({Collision: Projected Plane Y} - {y3}))) * {nx}) + ((((({z1} - {z3}) * ({Collision: Projected Plane X} - {x3})) - (({x1} - {x3}) * ({Collision: Projected Plane Z} - {z3}))) * {ny}) + (((({x1} - {x3}) * ({Collision: Projected Plane Y} - {y3})) - (({y1} - {y3}) * ({Collision: Projected Plane X} - {x3}))) * {nz}))) > 0) 那么

将 {Operations: Projected X} 设为 {Collision: Projected Plane X}

将 {Operations: Projected Y} 设为 {Collision: Projected Plane Y}

将 {Operations: Projected Z} 设为 {Collision: Projected Plane Z}

否则

将 {Operations: Interpolation Value} 设为 (((({x} - {x1}) * ({x1} - {x3})) + ((({y} - {y1}) * ({y1} - {y3})) + (({z} - {z1}) * ({z1} - {z3})))) / ((({x1} - {x3}) * ({x1} - {x3})) + ((({y1} - {y3}) * ({y1} - {y3})) + (({z1} - {z3}) * ({z1} - {z3})))))

将 {Operations: Interpolation Value} 设为 (({Operations: Interpolation Value} > 1) + ((({Operations: Interpolation Value} > 0) 与 ({Operations: Interpolation Value} < 1)) * {Operations: Interpolation Value}))

将 {Operations: Projected X} 设为 ({x1} + (({x1} - {x3}) * {Operations: Interpolation Value}))

将 {Operations: Projected Y} 设为 ({y1} + (({y1} - {y3}) * {Operations: Interpolation Value}))

将 {Operations: Projected Z} 设为 ({z1} + (({z1} - {z3}) * {Operations: Interpolation Value}))

否则

将 {Operations: Interpolation Value} 设为 (((({x} - {x1}) * ({x3} - {x2})) + ((({y} - {y1}) * ({y3} - {y2})) + (({z} - {z1}) * ({z3} - {z2})))) / ((({x3} - {x2}) * ({x3} - {x2})) + ((({y3} - {y2}) * ({y3} - {y2})) + (({z3} - {z2}) * ({z3} - {z2})))))

将 {Operations: Interpolation Value} 设为 (({Operations: Interpolation Value} > 1) + ((({Operations: Interpolation Value} > 0) 与 ({Operations: Interpolation Value} < 1)) * {Operations: Interpolation Value}))

将 {Operations: Projected X} 设为 ({x1} + (({x3} - {x2}) * {Operations: Interpolation Value}))

将 {Operations: Projected Y} 设为 ({y1} + (({y3} - {y2}) * {Operations: Interpolation Value}))

将 {Operations: Projected Z} 设为 ({z1} + (({z3} - {z2}) * {Operations: Interpolation Value}))

否则

将 {Operations: Interpolation Value} 设为 (((({x} - {x1}) * ({x2} - {x1})) + ((({y} - {y1}) * ({y2} - {y1})) + (({z} - {z1}) * ({z2} - {z1})))) / ((({x2} - {x1}) * ({x2} - {x1})) + ((({y2} - {y1}) * ({y2} - {y1})) + (({z2} - {z1}) * ({z2} - {z1})))))

将 {Operations: Interpolation Value} 设为 (({Operations: Interpolation Value} > 1) + ((({Operations: Interpolation Value} > 0) 与 ({Operations: Interpolation Value} < 1)) * {Operations: Interpolation Value}))

将 {Operations: Projected X} 设为 ({x1} + (({x2} - {x1}) * {Operations: Interpolation Value}))

将 {Operations: Projected Y} 设为 ({y1} + (({y2} - {y1}) * {Operations: Interpolation Value}))

将 {Operations: Projected Z} 设为 ({z1} + (({z2} - {z1}) * {Operations: Interpolation Value}))

将 {#Magnitude} 设为 平方根(((({x} - {Operations: Projected X}) * ({x} - {Operations: Projected X})) + ((({y} - {Operations: Projected Y}) * ({y} - {Operations: Projected Y})) + (({z} - {Operations: Projected Z}) * ({z} - {Operations: Projected Z})))))

如果 ({#Magnitude} < {r}) 那么

将 {Collision: Intersects?} 设为 1

将 {Collision: Force Length} 设为 ({r} - {#Magnitude})

将 {Collision: Force X} 设为 (({x} - {Operations: Projected X}) / {#Magnitude})

将 {Collision: Force Y} 设为 (({y} - {Operations: Projected Y}) / {#Magnitude})

将 {Collision: Force Z} 设为 (({z} - {Operations: Projected Z}) / {#Magnitude})

 

定义 camera

将 {~tempX} 设为 (按下 d 键? - 按下 a 键?)

将 {~tempY} 设为 (按下 w 键? - 按下 s 键?)

将 {~movementRatio} 设为 (1 / 平方根((绝对值({~tempX}) + 绝对值({~tempY}))))

将 {xAcc} 设为 ({xAcc} * 10 ^((log(.7) * ({Deltatime} * 30))))

将 {yAcc} 设为 ({yAcc} * 10 ^((log(.7) * ({Deltatime} * 30))))

将 {zAcc} 设为 ({zAcc} * 10 ^((log(.7) * ({Deltatime} * 30))))

将 {xAcc} 增加 (({movementSpeed} * ({Deltatime} * {Deltatime})) * (({~tempX} * cos({camRotX})) + ({~tempY} * sin({camRotX}))))

将 {zAcc} 增加 (({movementSpeed} * ({Deltatime} * {Deltatime})) * (({~tempY} * cos({camRotX})) - ({~tempX} * sin({camRotX}))))

执行 move x dist {xAcc}

执行 move z dist {zAcc}

如果 那么

将 {yAcc} 增加 ({Deltatime} * -20)

执行 move y dist ({yAcc} * ({Deltatime} * 20))

否则

将 {yAcc} 增加 (({movementSpeed} * ({Deltatime} * {Deltatime})) * (按下 e 键? - 按下 q 键?))

执行 move y dist {yAcc}

将 {camRotX} 增加 (({turnSpeed} * {Deltatime}) * (按下 → 键? - 按下 ← 键?))

将 {camRotY} 增加 (({turnSpeed} * {Deltatime}) * (按下 ↑ 键? - 按下 ↓ 键?))

如果 (90 < {camRotY}) 那么

将 {camRotY} 设为 90

如果 ({camRotY} < -90) 那么

将 {camRotY} 设为 -90

如果 ({firstPerson?} = 1) 那么

将 {camX} 设为 {playerX}

将 {camY} 设为 {playerY}

将 {camZ} 设为 {playerZ}

否则

将 {camX} 设为 ({playerX} - ((sin({camRotX}) * cos({camRotY})) * 500))

将 {camY} 设为 ({playerY} - (sin({camRotY}) * 500))

将 {camZ} 设为 ({playerZ} - ((cos({camRotX}) * cos({camRotY})) * 500))

 

定义 Collision (INDEV)

将 {Collision: Intersects?} 设为 0

如果 那么

 

定义 move {XYZ} dist {dist}

如果 ({XYZ} = X) 那么

将 {playerX} 增加 {dist}

执行 Collision (INDEV)

如果 ({Collision: Intersects?} = 1) 那么

将 {playerX} 增加 ( - {dist})

否则

如果 ({XYZ} = y) 那么

将 {playerY} 增加 {dist}

执行 Collision (INDEV)

如果 ({Collision: Intersects?} = 1) 那么

将 {playerY} 增加 ( - {dist})

如果 (按下 空格 键? 与 ({yAcc} > 0) 不成立) 那么

将 {yAcc} 设为 25

否则

将 {yAcc} 设为 0

否则

将 {playerZ} 增加 {dist}

执行 Collision (INDEV)

如果 ({Collision: Intersects?} = 1) 那么

将 {playerZ} 增加 ( - {dist})

 

当接收到 Frame

执行 camera

执行 Collision (INDEV)

 

定义 camera

将 {~tempX} 设为 (按下 d 键? - 按下 a 键?)

将 {~tempY} 设为 (按下 w 键? - 按下 s 键?)

将 {~movementRatio} 设为 (1 / 平方根((绝对值({~tempX}) + 绝对值({~tempY}))))

将 {xAcc} 设为 ({xAcc} * 10 ^((log(.7) * ({Deltatime} * 30))))

将 {yAcc} 设为 ({yAcc} * 10 ^((log(.7) * ({Deltatime} * 30))))

将 {zAcc} 设为 ({zAcc} * 10 ^((log(.7) * ({Deltatime} * 30))))

将 {xAcc} 增加 (({movementSpeed} * ({Deltatime} * {Deltatime})) * (({~tempX} * cos({camRotX})) + ({~tempY} * sin({camRotX}))))

将 {zAcc} 增加 (({movementSpeed} * ({Deltatime} * {Deltatime})) * (({~tempY} * cos({camRotX})) - ({~tempX} * sin({camRotX}))))

执行 move x dist {xAcc}

执行 move z dist {zAcc}

如果 那么

将 {yAcc} 增加 ({Deltatime} * -20)

执行 move y dist ({yAcc} * ({Deltatime} * 20))

否则

将 {yAcc} 增加 (({movementSpeed} * ({Deltatime} * {Deltatime})) * (按下 e 键? - 按下 q 键?))

执行 move y dist {yAcc}

将 {camRotX} 增加 (({turnSpeed} * {Deltatime}) * (按下 → 键? - 按下 ← 键?))

将 {camRotY} 增加 (({turnSpeed} * {Deltatime}) * (按下 ↑ 键? - 按下 ↓ 键?))

如果 (90 < {camRotY}) 那么

将 {camRotY} 设为 90

如果 ({camRotY} < -90) 那么

将 {camRotY} 设为 -90

如果 ({firstPerson?} = 1) 那么

将 {camX} 设为 {playerX}

将 {camY} 设为 {playerY}

将 {camZ} 设为 {playerZ}

否则

将 {camX} 设为 ({playerX} - ((sin({camRotX}) * cos({camRotY})) * 500))

将 {camY} 设为 ({playerY} - (sin({camRotY}) * 500))

将 {camZ} 设为 ({playerZ} - ((cos({camRotX}) * cos({camRotY})) * 500))

 

定义 Collisions: Detect Collision With Sphere r: {r} At x: {x} y: {y} z: {z} And Triangle x1: {x1} y1: {y1} z1: {z1} x2: {x2} y2: {y2} z2: {z2} x3: {x3} y3: {y3} z3: {z3} nx: {nx} ny: {ny} nz: {nz}

将 {Collision: Intersects?} 设为 0

将 {#Distance} 设为 ((({x} - {x1}) * {nx}) + ((({y} - {y1}) * {ny}) + (({z} - {z1}) * {nz})))

如果 (绝对值({#Distance}) < {r}) 那么

将 {Collision: Projected Plane X} 设为 ({x} - ({nx} * {#Distance}))

将 {Collision: Projected Plane Y} 设为 ({y} - ({ny} * {#Distance}))

将 {Collision: Projected Plane Z} 设为 ({z} - ({nz} * {#Distance}))

如果 (((((({y2} - {y1}) * ({Collision: Projected Plane Z} - {z1})) - (({z2} - {z1}) * ({Collision: Projected Plane Y} - {y1}))) * {nx}) + ((((({z2} - {z1}) * ({Collision: Projected Plane X} - {x1})) - (({x2} - {x1}) * ({Collision: Projected Plane Z} - {z1}))) * {ny}) + (((({x2} - {x1}) * ({Collision: Projected Plane Y} - {y1})) - (({y2} - {y1}) * ({Collision: Projected Plane X} - {x1}))) * {nz}))) > 0) 那么

如果 (((((({y3} - {y2}) * ({Collision: Projected Plane Z} - {z2})) - (({z3} - {z2}) * ({Collision: Projected Plane Y} - {y2}))) * {nx}) + ((((({z3} - {z2}) * ({Collision: Projected Plane X} - {x2})) - (({x3} - {x2}) * ({Collision: Projected Plane Z} - {z2}))) * {ny}) + (((({x3} - {x2}) * ({Collision: Projected Plane Y} - {y2})) - (({y3} - {y2}) * ({Collision: Projected Plane X} - {x2}))) * {nz}))) > 0) 那么

如果 (((((({y1} - {y3}) * ({Collision: Projected Plane Z} - {z3})) - (({z1} - {z3}) * ({Collision: Projected Plane Y} - {y3}))) * {nx}) + ((((({z1} - {z3}) * ({Collision: Projected Plane X} - {x3})) - (({x1} - {x3}) * ({Collision: Projected Plane Z} - {z3}))) * {ny}) + (((({x1} - {x3}) * ({Collision: Projected Plane Y} - {y3})) - (({y1} - {y3}) * ({Collision: Projected Plane X} - {x3}))) * {nz}))) > 0) 那么

将 {Operations: Projected X} 设为 {Collision: Projected Plane X}

将 {Operations: Projected Y} 设为 {Collision: Projected Plane Y}

将 {Operations: Projected Z} 设为 {Collision: Projected Plane Z}

否则

将 {Operations: Interpolation Value} 设为 (((({x} - {x1}) * ({x1} - {x3})) + ((({y} - {y1}) * ({y1} - {y3})) + (({z} - {z1}) * ({z1} - {z3})))) / ((({x1} - {x3}) * ({x1} - {x3})) + ((({y1} - {y3}) * ({y1} - {y3})) + (({z1} - {z3}) * ({z1} - {z3})))))

将 {Operations: Interpolation Value} 设为 (({Operations: Interpolation Value} > 1) + ((({Operations: Interpolation Value} > 0) 与 ({Operations: Interpolation Value} < 1)) * {Operations: Interpolation Value}))

将 {Operations: Projected X} 设为 ({x1} + (({x1} - {x3}) * {Operations: Interpolation Value}))

将 {Operations: Projected Y} 设为 ({y1} + (({y1} - {y3}) * {Operations: Interpolation Value}))

将 {Operations: Projected Z} 设为 ({z1} + (({z1} - {z3}) * {Operations: Interpolation Value}))

否则

将 {Operations: Interpolation Value} 设为 (((({x} - {x1}) * ({x3} - {x2})) + ((({y} - {y1}) * ({y3} - {y2})) + (({z} - {z1}) * ({z3} - {z2})))) / ((({x3} - {x2}) * ({x3} - {x2})) + ((({y3} - {y2}) * ({y3} - {y2})) + (({z3} - {z2}) * ({z3} - {z2})))))

将 {Operations: Interpolation Value} 设为 (({Operations: Interpolation Value} > 1) + ((({Operations: Interpolation Value} > 0) 与 ({Operations: Interpolation Value} < 1)) * {Operations: Interpolation Value}))

将 {Operations: Projected X} 设为 ({x1} + (({x3} - {x2}) * {Operations: Interpolation Value}))

将 {Operations: Projected Y} 设为 ({y1} + (({y3} - {y2}) * {Operations: Interpolation Value}))

将 {Operations: Projected Z} 设为 ({z1} + (({z3} - {z2}) * {Operations: Interpolation Value}))

否则

将 {Operations: Interpolation Value} 设为 (((({x} - {x1}) * ({x2} - {x1})) + ((({y} - {y1}) * ({y2} - {y1})) + (({z} - {z1}) * ({z2} - {z1})))) / ((({x2} - {x1}) * ({x2} - {x1})) + ((({y2} - {y1}) * ({y2} - {y1})) + (({z2} - {z1}) * ({z2} - {z1})))))

将 {Operations: Interpolation Value} 设为 (({Operations: Interpolation Value} > 1) + ((({Operations: Interpolation Value} > 0) 与 ({Operations: Interpolation Value} < 1)) * {Operations: Interpolation Value}))

将 {Operations: Projected X} 设为 ({x1} + (({x2} - {x1}) * {Operations: Interpolation Value}))

将 {Operations: Projected Y} 设为 ({y1} + (({y2} - {y1}) * {Operations: Interpolation Value}))

将 {Operations: Projected Z} 设为 ({z1} + (({z2} - {z1}) * {Operations: Interpolation Value}))

将 {#Magnitude} 设为 平方根(((({x} - {Operations: Projected X}) * ({x} - {Operations: Projected X})) + ((({y} - {Operations: Projected Y}) * ({y} - {Operations: Projected Y})) + (({z} - {Operations: Projected Z}) * ({z} - {Operations: Projected Z})))))

如果 ({#Magnitude} < {r}) 那么

将 {Collision: Intersects?} 设为 1

将 {Collision: Force Length} 设为 ({r} - {#Magnitude})

将 {Collision: Force X} 设为 (({x} - {Operations: Projected X}) / {#Magnitude})

将 {Collision: Force Y} 设为 (({y} - {Operations: Projected Y}) / {#Magnitude})

将 {Collision: Force Z} 设为 (({z} - {Operations: Projected Z}) / {#Magnitude})

 

定义 move {XYZ} dist {dist}

如果 ({XYZ} = X) 那么

将 {playerX} 增加 {dist}

执行 Collision (INDEV)

如果 ({Collision: Intersects?} = 1) 那么

将 {playerX} 增加 ( - {dist})

否则

如果 ({XYZ} = y) 那么

将 {playerY} 增加 {dist}

执行 Collision (INDEV)

如果 ({Collision: Intersects?} = 1) 那么

将 {playerY} 增加 ( - {dist})

如果 (按下 空格 键? 与 ({yAcc} > 0) 不成立) 那么

将 {yAcc} 设为 25

否则

将 {yAcc} 设为 0

否则

将 {playerZ} 增加 {dist}

执行 Collision (INDEV)

如果 ({Collision: Intersects?} = 1) 那么

将 {playerZ} 增加 ( - {dist})

 

定义 Collision (INDEV)

将 {Collision: Intersects?} 设为 0

如果 那么

 

Render

代码

当接收到 Frame

换成 0x0 造型

将大小设为 (1 / 0)

将 {~lightX} 设为 (cos({SunAngle}) * -.75)

将 {~lightY} 设为 .8

将 {~lightZ} 设为 (sin({SunAngle}) * -.75)

将 {~tris} 设为 0

将 {~quads} 设为 0

将 {~faces} 设为 0

将 {~vertices} 设为 0

将 {stats} 的第 7 项替换为 0

将 {stats} 的第 8 项替换为 0

将 {stats} 的第 9 项替换为 0

将 {stats} 的第 10 项替换为 0

将 {~renderTime} 设为 2000年至今的天数

执行 Render

将 {stats} 的第 1 项替换为 连接 Frametime: 和 四舍五入((((2000年至今的天数 - {~renderTime}) * 86400) * 1000))

将 {stats} 的第 2 项替换为 连接 FPS: 和 (四舍五入(((1 / {Deltatime}) * 100)) / 100)

将 {stats} 的第 3 项替换为 连接 Vertices: 和 {~vertices}

将 {stats} 的第 4 项替换为 连接 Faces: 和 {~faces}

将 {stats} 的第 5 项替换为 连接 Quads: 和 {~quads}

将 {stats} 的第 6 项替换为 连接 Tris: 和 {~tris}

将 {stats} 的第 7 项替换为 连接 Vert Transform ms: 和 四舍五入({stats} 的第 7 项)

将 {stats} 的第 8 项替换为 连接 Culling ms: 和 四舍五入({stats} 的第 8 项)

将 {stats} 的第 9 项替换为 连接 Sorting ms: 和 四舍五入({stats} 的第 9 项)

将 {stats} 的第 10 项替换为 连接 Rasterizer ms: 和 四舍五入({stats} 的第 10 项)

将 {stats} 的第 11 项替换为 连接 Objects: 和 {objectName} 的项目数

将 {stats} 的第 12 项替换为 连接 Meshes: 和 {meshes} 的项目数

换成 render_icon 造型

 

定义 frustrum quad {ax} {ay} . {bx} {by} . {cx} {cy} . {dx} {dy}

如果 ((((({ax} > 240) - ({ax} < -240)) + ((({bx} > 240) - ({bx} < -240)) + (({cx} > 240) - ({cx} < -240)))) / (({dx} > 240) - ({dx} < -240))) = 3) 不成立 那么

如果 ((((({ay} > 180) - ({ay} < -180)) + ((({by} > 180) - ({by} < -180)) + (({cy} > 180) - ({cy} < -180)))) / (({dy} > 180) - ({dy} < -180))) = 3) 不成立 那么

将 (-.75 * ((({~meshVertZ} 的第 {~ID} 项 + {~meshVertZ} 的第 {quadVertIndexB} 的第 {~i} 项 项) + {~meshVertZ} 的第 {quadVertIndexC} 的第 {~i} 项 项) + {~meshVertZ} 的第 {quadVertIndexD} 的第 {~i} 项 项)) 加入 {~sortDepths}

将 连接 0 和 {~i} 加入 {~sortID}

 

定义 frustrum tri {ax} {ay} . {bx} {by} . {cx} {cy}

如果 ((((({ay} > 180) - ({ay} < -180)) + (({by} > 180) - ({by} < -180))) / (({cy} > 180) - ({cy} < -180))) = 2) 不成立 那么

如果 ((((({ax} > 240) - ({ax} < -240)) + (({bx} > 240) - ({bx} < -240))) / (({cx} > 240) - ({cx} < -240))) = 2) 不成立 那么

将 ( - (({~meshVertZ} 的第 {~ID} 项 + {~meshVertZ} 的第 {triVertIndexB} 的第 {~i} 项 项) + {~meshVertZ} 的第 {triVertIndexC} 的第 {~i} 项 项)) 加入 {~sortDepths}

将 {~i} 加入 {~sortID}

 

定义 Cull Triangles and Quads

删除 {~sortID} 的全部项目

删除 {~sortDepths} 的全部项目

将 {~i} 设为 {meshData} 的第 ((({~meshID} - 1) * 4) - 1) 项

将 {~repeat} 设为 ({meshData} 的第 (({~meshID} * 4) - 1) 项 - {~i})

将 {~quads} 增加 {~repeat}

将 {~faces} 增加 {~repeat}

将 {~NormalAdd} 设为 {meshData} 的第 ((({~meshID} - 1) * 4) - 2) 项

重复执行 {~repeat} 次

将 {~i} 增加 1

将 {~ID} 设为 {quadVertIndexA} 的第 {~i} 项

将 {~zCullQuad} 的第 {~i} 项替换为 ((((15 < {~meshVertZ} 的第 {~ID} 项) + (15 < {~meshVertZ} 的第 {quadVertIndexB} 的第 {~i} 项 项)) + (15 < {~meshVertZ} 的第 {quadVertIndexC} 的第 {~i} 项 项)) + (15 < {~meshVertZ} 的第 {quadVertIndexD} 的第 {~i} 项 项))

如果 (4 = {~zCullQuad} 的第 {~i} 项) 那么

如果 {materialCull} 的第 {quadColor} 的第 {~i} 项 项 那么

如果 ((({~screenX} 的第 {~ID} 项 - {~screenX} 的第 {quadVertIndexB} 的第 {~i} 项 项) * ({~screenY} 的第 {quadVertIndexC} 的第 {~i} 项 项 - {~screenY} 的第 {quadVertIndexB} 的第 {~i} 项 项)) < (({~screenX} 的第 {quadVertIndexC} 的第 {~i} 项 项 - {~screenX} 的第 {quadVertIndexB} 的第 {~i} 项 项) * ({~screenY} 的第 {~ID} 项 - {~screenY} 的第 {quadVertIndexB} 的第 {~i} 项 项))) 那么

执行 frustrum quad . . .

否则

执行 frustrum quad . . .

否则

如果 (0 < {~zCullQuad} 的第 {~i} 项) 那么

将 (-.75 * ((({~meshVertZ} 的第 {~ID} 项 + {~meshVertZ} 的第 {quadVertIndexB} 的第 {~i} 项 项) + {~meshVertZ} 的第 {quadVertIndexC} 的第 {~i} 项 项) + {~meshVertZ} 的第 {quadVertIndexD} 的第 {~i} 项 项)) 加入 {~sortDepths}

将 连接 0 和 {~i} 加入 {~sortID}

将 {~i} 设为 {meshData} 的第 ((({~meshID} - 1) * 4) - 0) 项

将 {~repeat} 设为 ({meshData} 的第 (({~meshID} * 4) - 0) 项 - {~i})

将 {~faces} 增加 {~repeat}

将 {~tris} 增加 {~repeat}

重复执行 {~repeat} 次

将 {~i} 增加 1

将 {~ID} 设为 {triVertIndexA} 的第 {~i} 项

将 {~zCullTri} 的第 {~i} 项替换为 (((15 < {~meshVertZ} 的第 {~ID} 项) + (15 < {~meshVertZ} 的第 {triVertIndexB} 的第 {~i} 项 项)) + (15 < {~meshVertZ} 的第 {triVertIndexC} 的第 {~i} 项 项))

如果 (3 = {~zCullTri} 的第 {~i} 项) 那么

如果 {materialCull} 的第 {triColor} 的第 {~i} 项 项 那么

如果 ((({~screenX} 的第 {~ID} 项 - {~screenX} 的第 {triVertIndexB} 的第 {~i} 项 项) * ({~screenY} 的第 {triVertIndexC} 的第 {~i} 项 项 - {~screenY} 的第 {triVertIndexB} 的第 {~i} 项 项)) < (({~screenX} 的第 {triVertIndexC} 的第 {~i} 项 项 - {~screenX} 的第 {triVertIndexB} 的第 {~i} 项 项) * ({~screenY} 的第 {~ID} 项 - {~screenY} 的第 {triVertIndexB} 的第 {~i} 项 项))) 那么

执行 frustrum tri . .

否则

执行 frustrum tri . .

否则

如果 (0 < {~zCullTri} 的第 {~i} 项) 那么

将 ( - (({~meshVertZ} 的第 {~ID} 项 + {~meshVertZ} 的第 {triVertIndexB} 的第 {~i} 项 项) + {~meshVertZ} 的第 {triVertIndexC} 的第 {~i} 项 项)) 加入 {~sortDepths}

将 {~i} 加入 {~sortID}

 

定义 Quad Part 2 {ina1} {inb1} {inc1} {ind1} {ine1} {inf1} {ina2} {inb2} {inc2} {ind2} {ine2} {inf2} {inr1} {inr2} {a} {b} {c} {d} {e} {f} {g} {h}

如果 (({_A} < {_B}) 与 ({_A} < {_C})) 那么

将 {_Step} 设为 (0.5 - ({inr1} / (4 * 平方根((({ina1} * {ina1}) + ({inb1} * {inb1}))))))

否则

如果 ({_B} < {_C}) 那么

将 {_Step} 设为 (0.5 - ({inr1} / (4 * 平方根((({inc1} * {inc1}) + ({ind1} * {ind1}))))))

否则

将 {_Step} 设为 (0.5 - ({inr1} / (4 * 平方根((({ine1} * {ine1}) + ({inf1} * {inf1}))))))

将笔的粗细设为{inr1}

落笔

将 {_S} 设为 {_Step}

重复执行 (-1 - (ln({inr1}) / ln({_Step}))) 次

将笔的粗细设为(({_Step} * {inr1}) + 2)

移到 x:({a} + ({_Step} * {ina1})) y:({b} + ({_Step} * {inb1}))

移到 x:({c} + ({_Step} * {inc1})) y:({d} + ({_Step} * {ind1}))

移到 x:({e} + ({_Step} * {ine1})) y:({f} + ({_Step} * {inf1}))

移到 x:({a} + ({_Step} * {ina1})) y:({b} + ({_Step} * {inb1}))

将 {_Step} 设为 ({_Step} * {_S})

如果 (({_D} < {_B}) 与 ({_D} < {_E})) 那么

将 {_Step} 设为 (0.5 - ({inr2} / (4 * 平方根((({ina2} * {ina2}) + ({inb2} * {inb2}))))))

否则

如果 ({_B} < {_E}) 那么

将 {_Step} 设为 (0.5 - ({inr2} / (4 * 平方根((({inc2} * {inc2}) + ({ind2} * {ind2}))))))

否则

将 {_Step} 设为 (0.5 - ({inr2} / (4 * 平方根((({ine2} * {ine2}) + ({inf2} * {inf2}))))))

移到 x:{_X} y:{_Y}

将笔的粗细设为{inr2}

落笔

将 {_S} 设为 {_Step}

重复执行 (-1 - (ln({inr2}) / ln({_Step}))) 次

将笔的粗细设为(({_Step} * {inr2}) + 2)

移到 x:({a} + ({_Step} * {ina2})) y:({b} + ({_Step} * {inb2}))

移到 x:({g} + ({_Step} * {inc2})) y:({h} + ({_Step} * {ind2}))

移到 x:({e} + ({_Step} * {ine2})) y:({f} + ({_Step} * {inf2}))

移到 x:({a} + ({_Step} * {ina2})) y:({b} + ({_Step} * {inb2}))

将 {_Step} 设为 ({_Step} * {_S})

将笔的粗细设为2.5

移到 x:{a} y:{b}

移到 x:{c} y:{d}

移到 x:{e} y:{f}

移到 x:{g} y:{h}

移到 x:{a} y:{b}

移到 x:{e} y:{f}

抬笔

 

定义 Draw Mesh {rx} {ry} {rz}

执行 Start Timing

执行 Transform Vertices sin({rx}) cos({rx}) sin({ry}) cos({ry}) cos({rz}) sin({rz})

执行 End Timing

执行 Start Timing

执行 Cull Triangles and Quads

执行 End Timing

执行 Start Timing

执行 Sort Faces

执行 End Timing

执行 Start Timing

执行 Rasterize

执行 End Timing

 

定义 Render

执行 Trig

执行 Sort Objects

执行 Transform Object Vertices ( - {camX}) ( - {camY}) ( - {camZ})

 

定义 z-clip {Ax} {Ay} {Az} {Bx} {By} {Bz} {Cx} {Cy} {Cz} {z}

如果 ((({Az} > {z}) + (({Bz} > {z}) + ({Cz} > {z}))) > 1) 那么

如果 (({Az} > {z}) = ({Bz} > {z})) 那么

如果 ({Cz} > {z}) 那么

执行 Triangle And Cull ({Ax} * ({fov} / {Az})) ({Ay} * ({fov} / {Az})) ({Bx} * ({fov} / {Bz})) ({By} * ({fov} / {Bz})) ({Cx} * ({fov} / {Cz})) ({Cy} * ({fov} / {Cz}))

否则

将 {_t1} 设为 (({z} - {Bz}) / ({Cz} - {Bz}))

将 {_t2} 设为 (({z} - {Az}) / ({Cz} - {Az}))

执行 Triangle And Cull (({Bx} + ({_t1} * ({Cx} - {Bx}))) * ({fov} / {z})) (({By} + ({_t1} * ({Cy} - {By}))) * ({fov} / {z})) ({Ax} * ({fov} / {Az})) ({Ay} * ({fov} / {Az})) ({Bx} * ({fov} / {Bz})) ({By} * ({fov} / {Bz}))

如果 ({~endTri} = 0) 那么

执行 Render Triangle

否则

将 {_t1} 设为 (({z} - {Az}) / ({Bz} - {Az}))

如果 ({Az} > {z}) 那么

将 {_t2} 设为 (({z} - {Cz}) / ({Bz} - {Cz}))

执行 Triangle And Cull (({Ax} + ({_t1} * ({Bx} - {Ax}))) * ({fov} / {z})) (({Ay} + ({_t1} * ({By} - {Ay}))) * ({fov} / {z})) ({Cx} * ({fov} / {Cz})) ({Cy} * ({fov} / {Cz})) ({Ax} * ({fov} / {Az})) ({Ay} * ({fov} / {Az}))

如果 ({~endTri} = 0) 那么

执行 Render Triangle

否则

将 {_t2} 设为 (({z} - {Cz}) / ({Az} - {Cz}))

执行 Triangle And Cull (({Cx} + ({_t2} * ({Ax} - {Cx}))) * ({fov} / {z})) (({Cy} + ({_t2} * ({Ay} - {Cy}))) * ({fov} / {z})) ({Bx} * ({fov} / {Bz})) ({By} * ({fov} / {Bz})) ({Cx} * ({fov} / {Cz})) ({Cy} * ({fov} / {Cz}))

如果 ({~endTri} = 0) 那么

执行 Render Triangle

否则

如果 (({Az} > {z}) = ({Bz} > {z})) 那么

如果 ({Cz} > {z}) 那么

将 {_t1} 设为 (({z} - {Bz}) / ({Cz} - {Bz}))

将 {_t2} 设为 (({z} - {Az}) / ({Cz} - {Az}))

执行 Triangle And Cull (({Ax} + ({_t2} * ({Cx} - {Ax}))) * ({fov} / {z})) (({Ay} + ({_t2} * ({Cy} - {Ay}))) * ({fov} / {z})) (({Bx} + ({_t1} * ({Cx} - {Bx}))) * ({fov} / {z})) (({By} + ({_t1} * ({Cy} - {By}))) * ({fov} / {z})) ({Cx} * ({fov} / {Cz})) ({Cy} * ({fov} / {Cz}))

否则

将 {_t1} 设为 (({z} - {Az}) / ({Bz} - {Az}))

如果 ({Az} > {z}) 那么

将 {_t2} 设为 (({z} - {Az}) / ({Cz} - {Az}))

执行 Triangle And Cull (({Ax} + ({_t1} * ({Bx} - {Ax}))) * ({fov} / {z})) (({Ay} + ({_t1} * ({By} - {Ay}))) * ({fov} / {z})) (({Ax} + ({_t2} * ({Cx} - {Ax}))) * ({fov} / {z})) (({Ay} + ({_t2} * ({Cy} - {Ay}))) * ({fov} / {z})) ({Ax} * ({fov} / {Az})) ({Ay} * ({fov} / {Az}))

否则

将 {_t2} 设为 (({z} - {Bz}) / ({Cz} - {Bz}))

执行 Triangle And Cull (({Bx} + ({_t2} * ({Cx} - {Bx}))) * ({fov} / {z})) (({By} + ({_t2} * ({Cy} - {By}))) * ({fov} / {z})) (({Ax} + ({_t1} * ({Bx} - {Ax}))) * ({fov} / {z})) (({Ay} + ({_t1} * ({By} - {Ay}))) * ({fov} / {z})) ({Bx} * ({fov} / {Bz})) ({By} * ({fov} / {Bz}))

 

定义 Rotate Vertices {m1} {m2} {m3} {m4} {m5} {m6} {m7} {m8} {m9} {x} {y} {z}

删除 {~meshVertZ} 的全部项目

删除 {~screenX} 的全部项目

删除 {~screenY} 的全部项目

将 {~i} 设为 {meshData} 的第 ((({~meshID} - 1) * 4) - 3) 项

将 {~repeat} 设为 ({meshData} 的第 (({~meshID} * 4) - 3) 项 - {~i})

将 {~vertices} 增加 {~repeat}

重复执行 {~repeat} 次

将 {~i} 增加 1

将 ((({vertX} 的第 {~i} 项 * {m7}) + (({vertY} 的第 {~i} 项 * {m8}) + ({vertZ} 的第 {~i} 项 * {m9}))) + {z}) 加入 {~meshVertZ}

将 ((((({vertX} 的第 {~i} 项 * {m1}) + (({vertY} 的第 {~i} 项 * {m2}) + ({vertZ} 的第 {~i} 项 * {m3}))) + {x}) / {~meshVertZ} 的第 last 项) * {fov}) 加入 {~screenX}

将 ((((({vertX} 的第 {~i} 项 * {m4}) + (({vertY} 的第 {~i} 项 * {m5}) + ({vertZ} 的第 {~i} 项 * {m6}))) + {y}) / {~meshVertZ} 的第 last 项) * {fov}) 加入 {~screenY}

 

定义 Transform Vertices {sx} {cx} {sy} {cy} {cz} {sz}

执行 Combine Matrix (({cx} * {cz}) - ({sx} * ({sy} * {sz}))) (0 - ({sz} * {cy})) (({sy} * ({cx} * {sz})) + ({sx} * {cz})) (({sy} * ({sx} * {cz})) + ({cx} * {sz})) ({cy} * {cz}) (({sx} * {sz}) - ({sy} * ({cx} * {cz}))) (0 - ({sx} * {cy})) {sy} ({cy} * {cx}) ({objectData} 的第 ({~objectID} - 8) 项 - {camX}) ({objectData} 的第 ({~objectID} - 7) 项 - {camY}) ({objectData} 的第 ({~objectID} - 6) 项 - {camZ}) {objectData} 的第 ({~objectID} - 5) 项 {objectData} 的第 ({~objectID} - 4) 项 {objectData} 的第 ({~objectID} - 3) 项

 

定义 Combine Matrix {m1} {m2} {m3} {m4} {m5} {m6} {m7} {m8} {m9} {tx} {ty} {tz} {sx} {sy} {sz}

执行 Rotate Vertices ((({~v1} * {m1}) + (({~v2} * {m4}) + ({~v3} * {m7}))) * {sx}) ((({~v1} * {m2}) + (({~v2} * {m5}) + ({~v3} * {m8}))) * {sy}) ((({~v1} * {m3}) + (({~v2} * {m6}) + ({~v3} * {m9}))) * {sz}) ((({~v4} * {m1}) + (({~v5} * {m4}) + ({~v6} * {m7}))) * {sx}) ((({~v4} * {m2}) + (({~v5} * {m5}) + ({~v6} * {m8}))) * {sy}) ((({~v4} * {m3}) + (({~v5} * {m6}) + ({~v6} * {m9}))) * {sz}) ((({~v7} * {m1}) + (({~v8} * {m4}) + ({~v9} * {m7}))) * {sx}) ((({~v7} * {m2}) + (({~v8} * {m5}) + ({~v9} * {m8}))) * {sy}) ((({~v7} * {m3}) + (({~v8} * {m6}) + ({~v9} * {m9}))) * {sz}) (({tx} * {~v1}) + (({ty} * {~v2}) + ({tz} * {~v3}))) (({tx} * {~v4}) + (({ty} * {~v5}) + ({tz} * {~v6}))) (({tx} * {~v7}) + (({ty} * {~v8}) + ({tz} * {~v9})))

将 {~localLightX} 设为 ((({~lightX} * {m1}) + ({~lightY} * {m4})) + ({~lightZ} * {m7}))

将 {~localLightY} 设为 ((({~lightX} * {m2}) + ({~lightY} * {m5})) + ({~lightZ} * {m8}))

将 {~localLightZ} 设为 ((({~lightX} * {m3}) + ({~lightY} * {m6})) + ({~lightZ} * {m9}))

 

执行 Sort Objects 1 {objectName} 的项目数

 

定义 Sort Mesh

执行 Distance ({objectData} 的第 ({~ID} - 8) 项 - {camX}) ({objectData} 的第 ({~ID} - 7) 项 - {camY}) ({objectData} 的第 ({~ID} - 6) 项 - {camZ})

将 {~distance} 加入 {~sortDepths}

将 {~i} 加入 {~objectID}

 

定义 Distance {x} {y} {z}

将 {~distance} 设为 ( - 平方根(((({x} * {x}) + ({y} * {y})) + ({z} * {z}))))

 

执行 Sort Objects {_sort0} {_sort3}

将 {_sort0} 增加 1

将 {_sort3} 设为 {_sort0}

重复执行 ({hi} - {_sort0}) 次

将 {_sort1} 设为 {~sortDepths} 的第 ({_sort0} + 1) 项

将 {_sort6} 设为 {~objectID} 的第 ({_sort0} + 1) 项

将 {_sort2} 设为 {_sort0}

重复执行直到 (({_sort1} < {~sortDepths} 的第 {_sort2} 项) 不成立 或 ({_sort2} < {_sort3}))

将 {~sortDepths} 的第 ({_sort2} + 1) 项替换为 {~sortDepths} 的第 {_sort2} 项

将 {~objectID} 的第 ({_sort2} + 1) 项替换为 {~objectID} 的第 {_sort2} 项

将 {_sort2} 增加 -1

将 {~sortDepths} 的第 ({_sort2} + 1) 项替换为 {_sort1}

将 {~objectID} 的第 ({_sort2} + 1) 项替换为 {_sort6}

将 {_sort0} 增加 1

 

定义 Triangle And Cull {x1} {y1} {x2} {y2} {x3} {y3}

如果 ((({x1} - {x2}) * ({y3} - {y2})) < (({x3} - {x2}) * ({y1} - {y2}))) 那么

将 {_A} 设为 平方根(((({x2} - {x3}) * ({x2} - {x3})) + (({y2} - {y3}) * ({y2} - {y3}))))

将 {_B} 设为 平方根(((({x3} - {x1}) * ({x3} - {x1})) + (({y3} - {y1}) * ({y3} - {y1}))))

将 {_C} 设为 平方根(((({x2} - {x1}) * ({x2} - {x1})) + (({y2} - {y1}) * ({y2} - {y1}))))

将 {_P} 设为 ({_A} + ({_B} + {_C}))

移到 x:(((({_A} * {x1}) + ({_B} * {x2})) + ({_C} * {x3})) / {_P}) y:(((({_A} * {y1}) + ({_B} * {y2})) + ({_C} * {y3})) / {_P})

执行 Azex 2

将 {~endTri} 设为 0

否则

将 {~endTri} 设为 1

 

当接收到 Frame

换成 0x0 造型

将大小设为 (1 / 0)

将 {~lightX} 设为 (cos({SunAngle}) * -.75)

将 {~lightY} 设为 .8

将 {~lightZ} 设为 (sin({SunAngle}) * -.75)

将 {~tris} 设为 0

将 {~quads} 设为 0

将 {~faces} 设为 0

将 {~vertices} 设为 0

将 {stats} 的第 7 项替换为 0

将 {stats} 的第 8 项替换为 0

将 {stats} 的第 9 项替换为 0

将 {stats} 的第 10 项替换为 0

将 {~renderTime} 设为 2000年至今的天数

执行 Render

将 {stats} 的第 1 项替换为 连接 Frametime: 和 四舍五入((((2000年至今的天数 - {~renderTime}) * 86400) * 1000))

将 {stats} 的第 2 项替换为 连接 FPS: 和 (四舍五入(((1 / {Deltatime}) * 100)) / 100)

将 {stats} 的第 3 项替换为 连接 Vertices: 和 {~vertices}

将 {stats} 的第 4 项替换为 连接 Faces: 和 {~faces}

将 {stats} 的第 5 项替换为 连接 Quads: 和 {~quads}

将 {stats} 的第 6 项替换为 连接 Tris: 和 {~tris}

将 {stats} 的第 7 项替换为 连接 Vert Transform ms: 和 四舍五入({stats} 的第 7 项)

将 {stats} 的第 8 项替换为 连接 Culling ms: 和 四舍五入({stats} 的第 8 项)

将 {stats} 的第 9 项替换为 连接 Sorting ms: 和 四舍五入({stats} 的第 9 项)

将 {stats} 的第 10 项替换为 连接 Rasterizer ms: 和 四舍五入({stats} 的第 10 项)

将 {stats} 的第 11 项替换为 连接 Objects: 和 {objectName} 的项目数

将 {stats} 的第 12 项替换为 连接 Meshes: 和 {meshes} 的项目数

换成 render_icon 造型

 

定义 Quad {a} {b} {c} {d} {e} {f} {g} {h}

将 {_A} 设为 平方根(((({c} - {e}) * ({c} - {e})) + (({d} - {f}) * ({d} - {f}))))

将 {_B} 设为 平方根(((({e} - {a}) * ({e} - {a})) + (({f} - {b}) * ({f} - {b}))))

将 {_C} 设为 平方根(((({c} - {a}) * ({c} - {a})) + (({d} - {b}) * ({d} - {b}))))

将 {_D} 设为 平方根(((({g} - {e}) * ({g} - {e})) + (({h} - {f}) * ({h} - {f}))))

将 {_E} 设为 平方根(((({a} - {g}) * ({a} - {g})) + (({b} - {h}) * ({b} - {h}))))

将 {_P2} 设为 ({_D} + ({_B} + {_E}))

将 {_X} 设为 (((({_D} * {a}) + ({_B} * {g})) + ({_E} * {e})) / {_P2})

将 {_Y} 设为 (((({_D} * {b}) + ({_B} * {h})) + ({_E} * {f})) / {_P2})

将 {_P1} 设为 ({_A} + ({_B} + {_C}))

移到 x:(((({_A} * {a}) + ({_B} * {c})) + ({_C} * {e})) / {_P1}) y:(((({_A} * {b}) + ({_B} * {d})) + ({_C} * {f})) / {_P1})

执行 Quad Part 2 (x坐标 - {a}) (y坐标 - {b}) (x坐标 - {c}) (y坐标 - {d}) (x坐标 - {e}) (y坐标 - {f}) ({_X} - {a}) ({_Y} - {b}) ({_X} - {g}) ({_Y} - {h}) ({_X} - {e}) ({_Y} - {f}) 平方根((((({_P1} - ({_A} * 2)) * ({_P1} - ({_B} * 2))) * ({_P1} - ({_C} * 2))) / {_P1})) 平方根((((({_P2} - ({_D} * 2)) * ({_P2} - ({_B} * 2))) * ({_P2} - ({_E} * 2))) / {_P2})) {a} {b} {c} {d} {e} {f} {g} {h}

 

定义 frustrum quad {ax} {ay} . {bx} {by} . {cx} {cy} . {dx} {dy}

如果 ((((({ax} > 240) - ({ax} < -240)) + ((({bx} > 240) - ({bx} < -240)) + (({cx} > 240) - ({cx} < -240)))) / (({dx} > 240) - ({dx} < -240))) = 3) 不成立 那么

如果 ((((({ay} > 180) - ({ay} < -180)) + ((({by} > 180) - ({by} < -180)) + (({cy} > 180) - ({cy} < -180)))) / (({dy} > 180) - ({dy} < -180))) = 3) 不成立 那么

将 (-.75 * ((({~meshVertZ} 的第 {~ID} 项 + {~meshVertZ} 的第 {quadVertIndexB} 的第 {~i} 项 项) + {~meshVertZ} 的第 {quadVertIndexC} 的第 {~i} 项 项) + {~meshVertZ} 的第 {quadVertIndexD} 的第 {~i} 项 项)) 加入 {~sortDepths}

将 连接 0 和 {~i} 加入 {~sortID}

 

定义 Quad Part 2 {ina1} {inb1} {inc1} {ind1} {ine1} {inf1} {ina2} {inb2} {inc2} {ind2} {ine2} {inf2} {inr1} {inr2} {a} {b} {c} {d} {e} {f} {g} {h}

如果 (({_A} < {_B}) 与 ({_A} < {_C})) 那么

将 {_Step} 设为 (0.5 - ({inr1} / (4 * 平方根((({ina1} * {ina1}) + ({inb1} * {inb1}))))))

否则

如果 ({_B} < {_C}) 那么

将 {_Step} 设为 (0.5 - ({inr1} / (4 * 平方根((({inc1} * {inc1}) + ({ind1} * {ind1}))))))

否则

将 {_Step} 设为 (0.5 - ({inr1} / (4 * 平方根((({ine1} * {ine1}) + ({inf1} * {inf1}))))))

将笔的粗细设为{inr1}

落笔

将 {_S} 设为 {_Step}

重复执行 (-1 - (ln({inr1}) / ln({_Step}))) 次

将笔的粗细设为(({_Step} * {inr1}) + 2)

移到 x:({a} + ({_Step} * {ina1})) y:({b} + ({_Step} * {inb1}))

移到 x:({c} + ({_Step} * {inc1})) y:({d} + ({_Step} * {ind1}))

移到 x:({e} + ({_Step} * {ine1})) y:({f} + ({_Step} * {inf1}))

移到 x:({a} + ({_Step} * {ina1})) y:({b} + ({_Step} * {inb1}))

将 {_Step} 设为 ({_Step} * {_S})

如果 (({_D} < {_B}) 与 ({_D} < {_E})) 那么

将 {_Step} 设为 (0.5 - ({inr2} / (4 * 平方根((({ina2} * {ina2}) + ({inb2} * {inb2}))))))

否则

如果 ({_B} < {_E}) 那么

将 {_Step} 设为 (0.5 - ({inr2} / (4 * 平方根((({inc2} * {inc2}) + ({ind2} * {ind2}))))))

否则

将 {_Step} 设为 (0.5 - ({inr2} / (4 * 平方根((({ine2} * {ine2}) + ({inf2} * {inf2}))))))

移到 x:{_X} y:{_Y}

将笔的粗细设为{inr2}

落笔

将 {_S} 设为 {_Step}

重复执行 (-1 - (ln({inr2}) / ln({_Step}))) 次

将笔的粗细设为(({_Step} * {inr2}) + 2)

移到 x:({a} + ({_Step} * {ina2})) y:({b} + ({_Step} * {inb2}))

移到 x:({g} + ({_Step} * {inc2})) y:({h} + ({_Step} * {ind2}))

移到 x:({e} + ({_Step} * {ine2})) y:({f} + ({_Step} * {inf2}))

移到 x:({a} + ({_Step} * {ina2})) y:({b} + ({_Step} * {inb2}))

将 {_Step} 设为 ({_Step} * {_S})

将笔的粗细设为2.5

移到 x:{a} y:{b}

移到 x:{c} y:{d}

移到 x:{e} y:{f}

移到 x:{g} y:{h}

移到 x:{a} y:{b}

移到 x:{e} y:{f}

抬笔

 

定义 frustrum tri {ax} {ay} . {bx} {by} . {cx} {cy}

如果 ((((({ay} > 180) - ({ay} < -180)) + (({by} > 180) - ({by} < -180))) / (({cy} > 180) - ({cy} < -180))) = 2) 不成立 那么

如果 ((((({ax} > 240) - ({ax} < -240)) + (({bx} > 240) - ({bx} < -240))) / (({cx} > 240) - ({cx} < -240))) = 2) 不成立 那么

将 ( - (({~meshVertZ} 的第 {~ID} 项 + {~meshVertZ} 的第 {triVertIndexB} 的第 {~i} 项 项) + {~meshVertZ} 的第 {triVertIndexC} 的第 {~i} 项 项)) 加入 {~sortDepths}

将 {~i} 加入 {~sortID}

 

定义 Cull Triangles and Quads

删除 {~sortID} 的全部项目

删除 {~sortDepths} 的全部项目

将 {~i} 设为 {meshData} 的第 ((({~meshID} - 1) * 4) - 1) 项

将 {~repeat} 设为 ({meshData} 的第 (({~meshID} * 4) - 1) 项 - {~i})

将 {~quads} 增加 {~repeat}

将 {~faces} 增加 {~repeat}

将 {~NormalAdd} 设为 {meshData} 的第 ((({~meshID} - 1) * 4) - 2) 项

重复执行 {~repeat} 次

将 {~i} 增加 1

将 {~ID} 设为 {quadVertIndexA} 的第 {~i} 项

将 {~zCullQuad} 的第 {~i} 项替换为 ((((15 < {~meshVertZ} 的第 {~ID} 项) + (15 < {~meshVertZ} 的第 {quadVertIndexB} 的第 {~i} 项 项)) + (15 < {~meshVertZ} 的第 {quadVertIndexC} 的第 {~i} 项 项)) + (15 < {~meshVertZ} 的第 {quadVertIndexD} 的第 {~i} 项 项))

如果 (4 = {~zCullQuad} 的第 {~i} 项) 那么

如果 {materialCull} 的第 {quadColor} 的第 {~i} 项 项 那么

如果 ((({~screenX} 的第 {~ID} 项 - {~screenX} 的第 {quadVertIndexB} 的第 {~i} 项 项) * ({~screenY} 的第 {quadVertIndexC} 的第 {~i} 项 项 - {~screenY} 的第 {quadVertIndexB} 的第 {~i} 项 项)) < (({~screenX} 的第 {quadVertIndexC} 的第 {~i} 项 项 - {~screenX} 的第 {quadVertIndexB} 的第 {~i} 项 项) * ({~screenY} 的第 {~ID} 项 - {~screenY} 的第 {quadVertIndexB} 的第 {~i} 项 项))) 那么

执行 frustrum quad . . .

否则

执行 frustrum quad . . .

否则

如果 (0 < {~zCullQuad} 的第 {~i} 项) 那么

将 (-.75 * ((({~meshVertZ} 的第 {~ID} 项 + {~meshVertZ} 的第 {quadVertIndexB} 的第 {~i} 项 项) + {~meshVertZ} 的第 {quadVertIndexC} 的第 {~i} 项 项) + {~meshVertZ} 的第 {quadVertIndexD} 的第 {~i} 项 项)) 加入 {~sortDepths}

将 连接 0 和 {~i} 加入 {~sortID}

将 {~i} 设为 {meshData} 的第 ((({~meshID} - 1) * 4) - 0) 项

将 {~repeat} 设为 ({meshData} 的第 (({~meshID} * 4) - 0) 项 - {~i})

将 {~faces} 增加 {~repeat}

将 {~tris} 增加 {~repeat}

重复执行 {~repeat} 次

将 {~i} 增加 1

将 {~ID} 设为 {triVertIndexA} 的第 {~i} 项

将 {~zCullTri} 的第 {~i} 项替换为 (((15 < {~meshVertZ} 的第 {~ID} 项) + (15 < {~meshVertZ} 的第 {triVertIndexB} 的第 {~i} 项 项)) + (15 < {~meshVertZ} 的第 {triVertIndexC} 的第 {~i} 项 项))

如果 (3 = {~zCullTri} 的第 {~i} 项) 那么

如果 {materialCull} 的第 {triColor} 的第 {~i} 项 项 那么

如果 ((({~screenX} 的第 {~ID} 项 - {~screenX} 的第 {triVertIndexB} 的第 {~i} 项 项) * ({~screenY} 的第 {triVertIndexC} 的第 {~i} 项 项 - {~screenY} 的第 {triVertIndexB} 的第 {~i} 项 项)) < (({~screenX} 的第 {triVertIndexC} 的第 {~i} 项 项 - {~screenX} 的第 {triVertIndexB} 的第 {~i} 项 项) * ({~screenY} 的第 {~ID} 项 - {~screenY} 的第 {triVertIndexB} 的第 {~i} 项 项))) 那么

执行 frustrum tri . .

否则

执行 frustrum tri . .

否则

如果 (0 < {~zCullTri} 的第 {~i} 项) 那么

将 ( - (({~meshVertZ} 的第 {~ID} 项 + {~meshVertZ} 的第 {triVertIndexB} 的第 {~i} 项 项) + {~meshVertZ} 的第 {triVertIndexC} 的第 {~i} 项 项)) 加入 {~sortDepths}

将 {~i} 加入 {~sortID}

 

定义 Combine Matrix {m1} {m2} {m3} {m4} {m5} {m6} {m7} {m8} {m9} {tx} {ty} {tz} {sx} {sy} {sz}

执行 Rotate Vertices ((({~v1} * {m1}) + (({~v2} * {m4}) + ({~v3} * {m7}))) * {sx}) ((({~v1} * {m2}) + (({~v2} * {m5}) + ({~v3} * {m8}))) * {sy}) ((({~v1} * {m3}) + (({~v2} * {m6}) + ({~v3} * {m9}))) * {sz}) ((({~v4} * {m1}) + (({~v5} * {m4}) + ({~v6} * {m7}))) * {sx}) ((({~v4} * {m2}) + (({~v5} * {m5}) + ({~v6} * {m8}))) * {sy}) ((({~v4} * {m3}) + (({~v5} * {m6}) + ({~v6} * {m9}))) * {sz}) ((({~v7} * {m1}) + (({~v8} * {m4}) + ({~v9} * {m7}))) * {sx}) ((({~v7} * {m2}) + (({~v8} * {m5}) + ({~v9} * {m8}))) * {sy}) ((({~v7} * {m3}) + (({~v8} * {m6}) + ({~v9} * {m9}))) * {sz}) (({tx} * {~v1}) + (({ty} * {~v2}) + ({tz} * {~v3}))) (({tx} * {~v4}) + (({ty} * {~v5}) + ({tz} * {~v6}))) (({tx} * {~v7}) + (({ty} * {~v8}) + ({tz} * {~v9})))

将 {~localLightX} 设为 ((({~lightX} * {m1}) + ({~lightY} * {m4})) + ({~lightZ} * {m7}))

将 {~localLightY} 设为 ((({~lightX} * {m2}) + ({~lightY} * {m5})) + ({~lightZ} * {m8}))

将 {~localLightZ} 设为 ((({~lightX} * {m3}) + ({~lightY} * {m6})) + ({~lightZ} * {m9}))

 

定义 Draw Mesh {rx} {ry} {rz}

执行 Start Timing

执行 Transform Vertices sin({rx}) cos({rx}) sin({ry}) cos({ry}) cos({rz}) sin({rz})

执行 End Timing

执行 Start Timing

执行 Cull Triangles and Quads

执行 End Timing

执行 Start Timing

执行 Sort Faces

执行 End Timing

执行 Start Timing

执行 Rasterize

执行 End Timing

 

定义 Render

执行 Trig

执行 Sort Objects

执行 Transform Object Vertices ( - {camX}) ( - {camY}) ( - {camZ})

 

定义 z-clip {Ax} {Ay} {Az} {Bx} {By} {Bz} {Cx} {Cy} {Cz} {z}

如果 ((({Az} > {z}) + (({Bz} > {z}) + ({Cz} > {z}))) > 1) 那么

如果 (({Az} > {z}) = ({Bz} > {z})) 那么

如果 ({Cz} > {z}) 那么

执行 Triangle And Cull ({Ax} * ({fov} / {Az})) ({Ay} * ({fov} / {Az})) ({Bx} * ({fov} / {Bz})) ({By} * ({fov} / {Bz})) ({Cx} * ({fov} / {Cz})) ({Cy} * ({fov} / {Cz}))

否则

将 {_t1} 设为 (({z} - {Bz}) / ({Cz} - {Bz}))

将 {_t2} 设为 (({z} - {Az}) / ({Cz} - {Az}))

执行 Triangle And Cull (({Bx} + ({_t1} * ({Cx} - {Bx}))) * ({fov} / {z})) (({By} + ({_t1} * ({Cy} - {By}))) * ({fov} / {z})) ({Ax} * ({fov} / {Az})) ({Ay} * ({fov} / {Az})) ({Bx} * ({fov} / {Bz})) ({By} * ({fov} / {Bz}))

如果 ({~endTri} = 0) 那么

执行 Render Triangle

否则

将 {_t1} 设为 (({z} - {Az}) / ({Bz} - {Az}))

如果 ({Az} > {z}) 那么

将 {_t2} 设为 (({z} - {Cz}) / ({Bz} - {Cz}))

执行 Triangle And Cull (({Ax} + ({_t1} * ({Bx} - {Ax}))) * ({fov} / {z})) (({Ay} + ({_t1} * ({By} - {Ay}))) * ({fov} / {z})) ({Cx} * ({fov} / {Cz})) ({Cy} * ({fov} / {Cz})) ({Ax} * ({fov} / {Az})) ({Ay} * ({fov} / {Az}))

如果 ({~endTri} = 0) 那么

执行 Render Triangle

否则

将 {_t2} 设为 (({z} - {Cz}) / ({Az} - {Cz}))

执行 Triangle And Cull (({Cx} + ({_t2} * ({Ax} - {Cx}))) * ({fov} / {z})) (({Cy} + ({_t2} * ({Ay} - {Cy}))) * ({fov} / {z})) ({Bx} * ({fov} / {Bz})) ({By} * ({fov} / {Bz})) ({Cx} * ({fov} / {Cz})) ({Cy} * ({fov} / {Cz}))

如果 ({~endTri} = 0) 那么

执行 Render Triangle

否则

如果 (({Az} > {z}) = ({Bz} > {z})) 那么

如果 ({Cz} > {z}) 那么

将 {_t1} 设为 (({z} - {Bz}) / ({Cz} - {Bz}))

将 {_t2} 设为 (({z} - {Az}) / ({Cz} - {Az}))

执行 Triangle And Cull (({Ax} + ({_t2} * ({Cx} - {Ax}))) * ({fov} / {z})) (({Ay} + ({_t2} * ({Cy} - {Ay}))) * ({fov} / {z})) (({Bx} + ({_t1} * ({Cx} - {Bx}))) * ({fov} / {z})) (({By} + ({_t1} * ({Cy} - {By}))) * ({fov} / {z})) ({Cx} * ({fov} / {Cz})) ({Cy} * ({fov} / {Cz}))

否则

将 {_t1} 设为 (({z} - {Az}) / ({Bz} - {Az}))

如果 ({Az} > {z}) 那么

将 {_t2} 设为 (({z} - {Az}) / ({Cz} - {Az}))

执行 Triangle And Cull (({Ax} + ({_t1} * ({Bx} - {Ax}))) * ({fov} / {z})) (({Ay} + ({_t1} * ({By} - {Ay}))) * ({fov} / {z})) (({Ax} + ({_t2} * ({Cx} - {Ax}))) * ({fov} / {z})) (({Ay} + ({_t2} * ({Cy} - {Ay}))) * ({fov} / {z})) ({Ax} * ({fov} / {Az})) ({Ay} * ({fov} / {Az}))

否则

将 {_t2} 设为 (({z} - {Bz}) / ({Cz} - {Bz}))

执行 Triangle And Cull (({Bx} + ({_t2} * ({Cx} - {Bx}))) * ({fov} / {z})) (({By} + ({_t2} * ({Cy} - {By}))) * ({fov} / {z})) (({Ax} + ({_t1} * ({Bx} - {Ax}))) * ({fov} / {z})) (({Ay} + ({_t1} * ({By} - {Ay}))) * ({fov} / {z})) ({Bx} * ({fov} / {Bz})) ({By} * ({fov} / {Bz}))

 

定义 Transform Vertices {sx} {cx} {sy} {cy} {cz} {sz}

执行 Combine Matrix (({cx} * {cz}) - ({sx} * ({sy} * {sz}))) (0 - ({sz} * {cy})) (({sy} * ({cx} * {sz})) + ({sx} * {cz})) (({sy} * ({sx} * {cz})) + ({cx} * {sz})) ({cy} * {cz}) (({sx} * {sz}) - ({sy} * ({cx} * {cz}))) (0 - ({sx} * {cy})) {sy} ({cy} * {cx}) ({objectData} 的第 ({~objectID} - 8) 项 - {camX}) ({objectData} 的第 ({~objectID} - 7) 项 - {camY}) ({objectData} 的第 ({~objectID} - 6) 项 - {camZ}) {objectData} 的第 ({~objectID} - 5) 项 {objectData} 的第 ({~objectID} - 4) 项 {objectData} 的第 ({~objectID} - 3) 项

 

定义 Sort Objects {lo} {hi}

将 {_sort0} 设为 ({lo} - 1)

重复执行直到 (({hi} - {_sort0}) < 17)

将 {_sort1} 设为 (({hi} - {_sort0}) 除以 3 的余数 + 1)

将 {_sort0} 增加 1

将 {_sort2} 设为 {~sortDepths} 的第 (四舍五入((({_sort0} + {hi}) / 2)) + ({_sort1} - 2)) 项

将 {_sort3} 设为 {~sortDepths} 的第 ({hi} - {_sort1}) 项

将 {_sort1} 设为 {~sortDepths} 的第 ({_sort0} + {_sort1}) 项

如果 (({_sort1} > {_sort2}) 或 ({_sort2} > {_sort3})) 不成立 那么

将 {_sort4} 设为 {_sort0}

将 {_sort5} 设为 ({hi} - 1)

重复执行直到 ({_sort4} > {_sort5})

如果 ({~sortDepths} 的第 {_sort4} 项 > {~sortDepths} 的第 ({_sort4} + 1) 项) 那么

如果 (({_sort1} = {_sort2}) 与 ({_sort2} = {_sort3})) 那么

如果 ({~sortDepths} 的第 ({_sort4} + 1) 项 = {_sort1}) 那么

将 {_sort1} 设为 {~sortDepths} 的第 {_sort4} 项

否则

将 {_sort1} 设为 {~sortDepths} 的第 ({_sort4} + 1) 项

将 {_sort4} 设为 0

将 {_sort5} 设为 -1

否则

如果 ({~sortDepths} 的第 {_sort5} 项 > {~sortDepths} 的第 ({_sort5} + 1) 项) 那么

如果 (({_sort1} = {_sort2}) 与 ({_sort2} = {_sort3})) 那么

如果 ({~sortDepths} 的第 ({_sort5} + 1) 项 = {_sort1}) 那么

将 {_sort1} 设为 {~sortDepths} 的第 {_sort5} 项

否则

将 {_sort1} 设为 {~sortDepths} 的第 ({_sort5} + 1) 项

将 {_sort4} 设为 0

将 {_sort5} 设为 -1

将 {_sort4} 增加 1

将 {_sort5} 增加 -1

如果 ({_sort5} > 0) 那么

将 {_sort0} 设为 {hi}

停止 这个脚本

如果 ({_sort1} < {_sort2}) 那么

如果 ({_sort3} < {_sort2}) 那么

如果 ({_sort3} < {_sort1}) 那么

将 {_sort1} 设为 {_sort1}

否则

如果 ({_sort1} < {_sort3}) 那么

将 {_sort1} 设为 {_sort3}

否则

将 {_sort1} 设为 {_sort2}

否则

将 {_sort1} 设为 {_sort2}

否则

如果 ({_sort2} < {_sort1}) 那么

如果 ({_sort3} < {_sort1}) 那么

如果 ({_sort3} < {_sort2}) 那么

将 {_sort1} 设为 {_sort2}

否则

如果 ({_sort2} < {_sort3}) 那么

将 {_sort1} 设为 {_sort3}

否则

将 {_sort1} 设为 {_sort1}

否则

将 {_sort1} 设为 {_sort1}

否则

如果 ({_sort3} < {_sort1}) 那么

将 {_sort1} 设为 {_sort1}

否则

将 {_sort1} 设为 {_sort3}

将 {_sort2} 设为 {_sort0}

将 {_sort3} 设为 {hi}

重复执行直到 ({~sortDepths} 的第 {_sort3} 项 < {_sort1})

将 {_sort3} 增加 -1

执行 Sort Objects {_sort0} {_sort3}

将 {_sort0} 增加 1

将 {_sort3} 设为 {_sort0}

重复执行 ({hi} - {_sort0}) 次

将 {_sort1} 设为 {~sortDepths} 的第 ({_sort0} + 1) 项

将 {_sort6} 设为 {~objectID} 的第 ({_sort0} + 1) 项

将 {_sort2} 设为 {_sort0}

重复执行直到 (({_sort1} < {~sortDepths} 的第 {_sort2} 项) 不成立 或 ({_sort2} < {_sort3}))

将 {~sortDepths} 的第 ({_sort2} + 1) 项替换为 {~sortDepths} 的第 {_sort2} 项

将 {~objectID} 的第 ({_sort2} + 1) 项替换为 {~objectID} 的第 {_sort2} 项

将 {_sort2} 增加 -1

将 {~sortDepths} 的第 ({_sort2} + 1) 项替换为 {_sort1}

将 {~objectID} 的第 ({_sort2} + 1) 项替换为 {_sort6}

将 {_sort0} 增加 1

 

定义 Rotate Vertices {m1} {m2} {m3} {m4} {m5} {m6} {m7} {m8} {m9} {x} {y} {z}

删除 {~meshVertZ} 的全部项目

删除 {~screenX} 的全部项目

删除 {~screenY} 的全部项目

将 {~i} 设为 {meshData} 的第 ((({~meshID} - 1) * 4) - 3) 项

将 {~repeat} 设为 ({meshData} 的第 (({~meshID} * 4) - 3) 项 - {~i})

将 {~vertices} 增加 {~repeat}

重复执行 {~repeat} 次

将 {~i} 增加 1

将 ((({vertX} 的第 {~i} 项 * {m7}) + (({vertY} 的第 {~i} 项 * {m8}) + ({vertZ} 的第 {~i} 项 * {m9}))) + {z}) 加入 {~meshVertZ}

将 ((((({vertX} 的第 {~i} 项 * {m1}) + (({vertY} 的第 {~i} 项 * {m2}) + ({vertZ} 的第 {~i} 项 * {m3}))) + {x}) / {~meshVertZ} 的第 last 项) * {fov}) 加入 {~screenX}

将 ((((({vertX} 的第 {~i} 项 * {m4}) + (({vertY} 的第 {~i} 项 * {m5}) + ({vertZ} 的第 {~i} 项 * {m6}))) + {y}) / {~meshVertZ} 的第 last 项) * {fov}) 加入 {~screenY}

 

定义 Triangle And Cull {x1} {y1} {x2} {y2} {x3} {y3}

如果 ((({x1} - {x2}) * ({y3} - {y2})) < (({x3} - {x2}) * ({y1} - {y2}))) 那么

将 {_A} 设为 平方根(((({x2} - {x3}) * ({x2} - {x3})) + (({y2} - {y3}) * ({y2} - {y3}))))

将 {_B} 设为 平方根(((({x3} - {x1}) * ({x3} - {x1})) + (({y3} - {y1}) * ({y3} - {y1}))))

将 {_C} 设为 平方根(((({x2} - {x1}) * ({x2} - {x1})) + (({y2} - {y1}) * ({y2} - {y1}))))

将 {_P} 设为 ({_A} + ({_B} + {_C}))

移到 x:(((({_A} * {x1}) + ({_B} * {x2})) + ({_C} * {x3})) / {_P}) y:(((({_A} * {y1}) + ({_B} * {y2})) + ({_C} * {y3})) / {_P})

执行 Azex 2

将 {~endTri} 设为 0

否则

将 {~endTri} 设为 1

 

定义 z-clip 2 {Ax} {Ay} {Az} {Bx} {By} {Bz} {Cx} {Cy} {Cz} {z}

如果 ((({Az} > {z}) + (({Bz} > {z}) + ({Cz} > {z}))) > 1) 那么

如果 (({Az} > {z}) = ({Bz} > {z})) 那么

如果 ({Cz} > {z}) 那么

执行 Render Triangle

否则

将 {_t1} 设为 (({z} - {Bz}) / ({Cz} - {Bz}))

将 {_t2} 设为 (({z} - {Az}) / ({Cz} - {Az}))

执行 Render Triangle

执行 Render Triangle

否则

将 {_t1} 设为 (({z} - {Az}) / ({Bz} - {Az}))

如果 ({Az} > {z}) 那么

将 {_t2} 设为 (({z} - {Cz}) / ({Bz} - {Cz}))

执行 Render Triangle

执行 Render Triangle

否则

将 {_t2} 设为 (({z} - {Cz}) / ({Az} - {Cz}))

执行 Render Triangle

执行 Render Triangle

否则

如果 (({Az} > {z}) = ({Bz} > {z})) 那么

如果 ({Cz} > {z}) 那么

将 {_t1} 设为 (({z} - {Bz}) / ({Cz} - {Bz}))

将 {_t2} 设为 (({z} - {Az}) / ({Cz} - {Az}))

执行 Render Triangle

否则

将 {_t1} 设为 (({z} - {Az}) / ({Bz} - {Az}))

如果 ({Az} > {z}) 那么

将 {_t2} 设为 (({z} - {Az}) / ({Cz} - {Az}))

执行 Render Triangle

否则

将 {_t2} 设为 (({z} - {Bz}) / ({Cz} - {Bz}))

执行 Render Triangle

 

定义 Sort Objects

删除 {~objectID} 的全部项目

删除 {~sortDepths} 的全部项目

执行 Sort Objects 1 {objectName} 的项目数

 

定义 z-clip 2 {Ax} {Ay} {Az} {Bx} {By} {Bz} {Cx} {Cy} {Cz} {z}

如果 ((({Az} > {z}) + (({Bz} > {z}) + ({Cz} > {z}))) > 1) 那么

如果 (({Az} > {z}) = ({Bz} > {z})) 那么

如果 ({Cz} > {z}) 那么

执行 Render Triangle

否则

将 {_t1} 设为 (({z} - {Bz}) / ({Cz} - {Bz}))

将 {_t2} 设为 (({z} - {Az}) / ({Cz} - {Az}))

执行 Render Triangle

执行 Render Triangle

否则

将 {_t1} 设为 (({z} - {Az}) / ({Bz} - {Az}))

如果 ({Az} > {z}) 那么

将 {_t2} 设为 (({z} - {Cz}) / ({Bz} - {Cz}))

执行 Render Triangle

执行 Render Triangle

否则

将 {_t2} 设为 (({z} - {Cz}) / ({Az} - {Cz}))

执行 Render Triangle

执行 Render Triangle

否则

如果 (({Az} > {z}) = ({Bz} > {z})) 那么

如果 ({Cz} > {z}) 那么

将 {_t1} 设为 (({z} - {Bz}) / ({Cz} - {Bz}))

将 {_t2} 设为 (({z} - {Az}) / ({Cz} - {Az}))

执行 Render Triangle

否则

将 {_t1} 设为 (({z} - {Az}) / ({Bz} - {Az}))

如果 ({Az} > {z}) 那么

将 {_t2} 设为 (({z} - {Az}) / ({Cz} - {Az}))

执行 Render Triangle

否则

将 {_t2} 设为 (({z} - {Bz}) / ({Cz} - {Bz}))

执行 Render Triangle

定义 Sort Mesh

执行 Distance ({objectData} 的第 ({~ID} - 8) 项 - {camX}) ({objectData} 的第 ({~ID} - 7) 项 - {camY}) ({objectData} 的第 ({~ID} - 6) 项 - {camZ})

将 {~distance} 加入 {~sortDepths}

将 {~i} 加入 {~objectID}

 

定义 STTF (inner) {P1.x'} {P1.y'} {P2.x'} {P2.y'} {θ_base} {size} consts: {const3} {const4} {const5}

将 {△f} 设为 ({const3} / ln(((({P2.x'} * {P2.x'}) + ({P2.y'} * {P2.y'})) / (({P1.x'} * {P1.x'}) + ({P1.y'} * {P1.y'})))))

将 {△2*P1.r'} 设为 (1 - e ^(({const4} / {△f})))

将 {△w} 设为 ((((((180 * ({P2.y'} < 0) 不成立) - atan(({P2.x'} / {P2.y'}))) + {θ_base}) + 180) 除以 360 的余数 - 180) / (e ^((ln((1 - e ^(({const5} / {△f})))) * 2)) - ({△2*P1.r'} * {△2*P1.r'})))

面向 (({θ_base} + ({△w} * ({△2*P1.r'} * {△2*P1.r'}))) + 90) 方向

将 鱼眼 特效设定为 ({△f} - 100)

将 漩涡 特效设定为 {△w}

换成 ((({size} / (1 - {△2*P1.r'})) < 100) + 1) 造型

将大小设为 ({size} / (1 - {△2*P1.r'}))

 

定义 STTF {x1} {y1} {x2} {y2} {x3} {y3} {tex} {const1} {const2}

将 {△a} 设为 ((({x1} - {x3}) * ({x1} - {x3})) + (({y1} - {y3}) * ({y1} - {y3})))

将 {△b} 设为 ((({x3} - {x2}) * ({x3} - {x2})) + (({y3} - {y2}) * ({y3} - {y2})))

将 {△c} 设为 ((({x2} - {x1}) * ({x2} - {x1})) + (({y2} - {y1}) * ({y2} - {y1})))

换成 0x0 造型

将大小设为 (1 / 0)

如果 (({△a} > {△b}) 与 ({△a} > {△c})) 那么

移到 x:((({x1} + {x3}) / 2) + ({const1} * ({y3} - {y1}))) y:((({y3} + {y1}) / 2) - ({const1} * ({x3} - {x1})))

执行 STTF (inner) ({x1} - x坐标) ({y1} - y坐标) ({x2} - x坐标) ({y2} - y坐标) ((180 * ({x3} < {x1}) 不成立) - atan((({y3} - {y1}) / ({x3} - {x1})))) (平方根({△a}) / {const2}) consts: {STTFConstants3} 的第 {triColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {triColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {triColor} 的第 {~ID} 项 项

换成 {tex} 造型

否则

如果 ({△b} > {△c}) 那么

移到 x:((({x3} + {x2}) / 2) + ({const1} * ({y2} - {y3}))) y:((({y3} + {y2}) / 2) - ({const1} * ({x2} - {x3})))

执行 STTF (inner) ({x3} - x坐标) ({y3} - y坐标) ({x1} - x坐标) ({y1} - y坐标) ((180 * ({x2} < {x3}) 不成立) - atan((({y2} - {y3}) / ({x2} - {x3})))) (平方根({△b}) / {const2}) consts: {STTFConstants3} 的第 {triColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {triColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {triColor} 的第 {~ID} 项 项

换成 ({tex} + 1) 造型

否则

移到 x:((({x2} + {x1}) / 2) + ({const1} * ({y1} - {y2}))) y:((({y2} + {y1}) / 2) - ({const1} * ({x1} - {x2})))

执行 STTF (inner) ({x2} - x坐标) ({y2} - y坐标) ({x3} - x坐标) ({y3} - y坐标) ((180 * ({x1} < {x2}) 不成立) - atan((({y1} - {y2}) / ({x1} - {x2})))) (平方根({△c}) / {const2}) consts: {STTFConstants3} 的第 {triColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {triColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {triColor} 的第 {~ID} 项 项

换成 ({tex} + 2) 造型

图章

换成 0x0 造型

将大小设为 (1 / 0)

 

定义 STTF Quad {x1} {y1} {x2} {y2} {x3} {y3} {x4} {y4} tex: {tex} consts: {const1} {const2}

将 {△a} 设为 ((({x1} - {x4}) * ({x1} - {x4})) + (({y1} - {y4}) * ({y1} - {y4})))

将 {△b} 设为 ((({x4} - {x2}) * ({x4} - {x2})) + (({y4} - {y2}) * ({y4} - {y2})))

将 {△c} 设为 ((({x2} - {x1}) * ({x2} - {x1})) + (({y2} - {y1}) * ({y2} - {y1})))

换成 0x0 造型

将大小设为 (1 / 0)

如果 (({△a} > {△b}) 与 ({△a} > {△c})) 那么

移到 x:((({x1} + {x4}) / 2) + ({const1} * ({y4} - {y1}))) y:((({y4} + {y1}) / 2) - ({const1} * ({x4} - {x1})))

执行 STTF (inner) ({x1} - x坐标) ({y1} - y坐标) ({x2} - x坐标) ({y2} - y坐标) ((180 * ({x4} < {x1}) 不成立) - atan((({y4} - {y1}) / ({x4} - {x1})))) (平方根({△a}) / {const2}) consts: {STTFConstants3} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {quadColor} 的第 {~ID} 项 项

换成 {tex} 造型

否则

如果 ({△b} > {△c}) 那么

移到 x:((({x4} + {x2}) / 2) + ({const1} * ({y2} - {y4}))) y:((({y4} + {y2}) / 2) - ({const1} * ({x2} - {x4})))

执行 STTF (inner) ({x4} - x坐标) ({y4} - y坐标) ({x1} - x坐标) ({y1} - y坐标) ((180 * ({x2} < {x4}) 不成立) - atan((({y2} - {y4}) / ({x2} - {x4})))) (平方根({△b}) / {const2}) consts: {STTFConstants3} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {quadColor} 的第 {~ID} 项 项

换成 ({tex} + 1) 造型

否则

移到 x:((({x2} + {x1}) / 2) + ({const1} * ({y1} - {y2}))) y:((({y2} + {y1}) / 2) - ({const1} * ({x1} - {x2})))

执行 STTF (inner) ({x2} - x坐标) ({y2} - y坐标) ({x4} - x坐标) ({y4} - y坐标) ((180 * ({x1} < {x2}) 不成立) - atan((({y1} - {y2}) / ({x1} - {x2})))) (平方根({△c}) / {const2}) consts: {STTFConstants3} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {quadColor} 的第 {~ID} 项 项

换成 ({tex} + 2) 造型

图章

将 {△a} 设为 ((({x3} - {x2}) * ({x3} - {x2})) + (({y3} - {y2}) * ({y3} - {y2})))

将 {△b} 设为 ((({x2} - {x4}) * ({x2} - {x4})) + (({y2} - {y4}) * ({y2} - {y4})))

将 {△c} 设为 ((({x4} - {x3}) * ({x4} - {x3})) + (({y4} - {y3}) * ({y4} - {y3})))

换成 0x0 造型

将大小设为 (1 / 0)

如果 (({△a} > {△b}) 与 ({△a} > {△c})) 那么

移到 x:((({x3} + {x2}) / 2) + ({const1} * ({y2} - {y3}))) y:((({y2} + {y3}) / 2) - ({const1} * ({x2} - {x3})))

执行 STTF (inner) ({x3} - x坐标) ({y3} - y坐标) ({x4} - x坐标) ({y4} - y坐标) ((180 * ({x2} < {x3}) 不成立) - atan((({y2} - {y3}) / ({x2} - {x3})))) (平方根({△a}) / {const2}) consts: {STTFConstants3} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {quadColor} 的第 {~ID} 项 项

换成 {tex} 造型

否则

如果 ({△b} > {△c}) 那么

移到 x:((({x2} + {x4}) / 2) + ({const1} * ({y4} - {y2}))) y:((({y2} + {y4}) / 2) - ({const1} * ({x4} - {x2})))

执行 STTF (inner) ({x2} - x坐标) ({y2} - y坐标) ({x3} - x坐标) ({y3} - y坐标) ((180 * ({x4} < {x2}) 不成立) - atan((({y4} - {y2}) / ({x4} - {x2})))) (平方根({△b}) / {const2}) consts: {STTFConstants3} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {quadColor} 的第 {~ID} 项 项

换成 ({tex} + 1) 造型

否则

移到 x:((({x4} + {x3}) / 2) + ({const1} * ({y3} - {y4}))) y:((({y4} + {y3}) / 2) - ({const1} * ({x3} - {x4})))

执行 STTF (inner) ({x4} - x坐标) ({y4} - y坐标) ({x2} - x坐标) ({y2} - y坐标) ((180 * ({x3} < {x4}) 不成立) - atan((({y3} - {y4}) / ({x3} - {x4})))) (平方根({△c}) / {const2}) consts: {STTFConstants3} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {quadColor} 的第 {~ID} 项 项

换成 ({tex} + 2) 造型

图章

换成 0x0 造型

将大小设为 (1 / 0)

 

定义 Transform Object Vertices {x} {y} {z}

删除 {~objScreenX} 的全部项目

删除 {~objScreenY} 的全部项目

删除 {~objVertZ} 的全部项目

将 {~i} 设为 0

将 {~repeat} 设为 {objectVertID} 的项目数

将 {~x} 设为 ((({x} * {~v1}) + ({y} * {~v2})) + ({z} * {~v3}))

将 {~y} 设为 ((({x} * {~v4}) + ({y} * {~v5})) + ({z} * {~v6}))

将 {~z} 设为 ((({x} * {~v7}) + ({y} * {~v8})) + ({z} * {~v9}))

重复执行 {~repeat} 次

将 {~i} 增加 1

将 ((({objectVertX} 的第 {~i} 项 * {~v7}) + (({objectVertY} 的第 {~i} 项 * {~v8}) + ({objectVertZ} 的第 {~i} 项 * {~v9}))) + {~z}) 加入 {~objVertZ}

将 ((((({objectVertX} 的第 {~i} 项 * {~v1}) + (({objectVertY} 的第 {~i} 项 * {~v2}) + ({objectVertZ} 的第 {~i} 项 * {~v3}))) + {~x}) / {~objVertZ} 的第 last 项) * {fov}) 加入 {~objScreenX}

将 ((((({objectVertX} 的第 {~i} 项 * {~v4}) + (({objectVertY} 的第 {~i} 项 * {~v5}) + ({objectVertZ} 的第 {~i} 项 * {~v6}))) + {~y}) / {~objVertZ} 的第 last 项) * {fov}) 加入 {~objScreenY}

 

定义 Sort Point

执行 Distance ({objectVertX} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camX}) ({objectVertY} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camY}) ({objectVertZ} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camZ})

将 {~distance} 加入 {~sortDepths}

将 {~i} 加入 {~objectID}

 

定义 Sort Line

执行 Distance ({objectVertX} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camX}) ({objectVertY} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camY}) ({objectVertZ} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camZ})

将 {~tempA} 设为 {~distance}

执行 Distance ({objectVertX} 的第 {objectData} 的第 ({~ID} - 6) 项 项 - {camX}) ({objectVertY} 的第 {objectData} 的第 ({~ID} - 6) 项 项 - {camY}) ({objectVertZ} 的第 {objectData} 的第 ({~ID} - 6) 项 项 - {camZ})

将 (({~tempA} + {~distance}) / 2) 加入 {~sortDepths}

将 {~i} 加入 {~objectID}

 

定义 Sort Triangle

执行 Distance ({objectVertX} 的第 {objectData} 的第 ({~ID} - 8) 项 项 - {camX}) ({objectVertY} 的第 {objectData} 的第 ({~ID} - 8) 项 项 - {camY}) ({objectVertZ} 的第 {objectData} 的第 ({~ID} - 8) 项 项 - {camZ})

将 {~tempA} 设为 {~distance}

执行 Distance ({objectVertX} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camX}) ({objectVertY} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camY}) ({objectVertZ} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camZ})

将 {~tempB} 设为 {~distance}

执行 Distance ({objectVertX} 的第 {objectData} 的第 ({~ID} - 6) 项 项 - {camX}) ({objectVertY} 的第 {objectData} 的第 ({~ID} - 6) 项 项 - {camY}) ({objectVertZ} 的第 {objectData} 的第 ({~ID} - 6) 项 项 - {camZ})

将 ((({~tempA} + {~tempB}) + {~distance}) / 3) 加入 {~sortDepths}

将 {~i} 加入 {~objectID}

 

定义 Draw Point {id}

如果 (15 < {~objVertZ} 的第 {id} 项) 那么

移到 x:{~objScreenX} 的第 {id} 项 y:{~objScreenY} 的第 {id} 项

将笔的颜色设为{materialColor} 的第 {materials} 中第一个 {objectData} 的第 ({~objectID} - 8) 项 的编号 项

将笔的粗细设为(({objectData} 的第 ({~objectID} - 9) 项 * 100) / {~objVertZ} 的第 {id} 项)

落笔

抬笔

 

定义 Draw Line {id1} {id2}

将 {~zClip} 设为 ((15 < {~objVertZ} 的第 {id1} 项) + (15 < {~objVertZ} 的第 {id2} 项))

如果 ({~zClip} = 2) 那么

将笔的颜色设为{materialColor} 的第 {materials} 中第一个 {objectData} 的第 ({~objectID} - 8) 项 的编号 项

执行 Draw line from x1: y1: to x2: y2: start width: end width:

否则

如果 (0 < {~zClip}) 那么

将笔的颜色设为{materialColor} 的第 {materials} 中第一个 {objectData} 的第 ({~objectID} - 8) 项 的编号 项

将 {~tempA} 设为 ({~objVertZ} 的第 {id1} 项 / {fov})

将 {~tempB} 设为 ({~objVertZ} 的第 {id2} 项 / {fov})

执行 z clip line and fill ( ({~objScreenX} 的第 {id1} 项 * {~tempA}) ({~objScreenY} 的第 {id1} 项 * {~tempA}) {~objVertZ} 的第 {id1} 项 . ({~objScreenX} 的第 {id2} 项 * {~tempB}) ({~objScreenY} 的第 {id2} 项 * {~tempB}) {~objVertZ} 的第 {id2} 项 z clip distance 15 start width ({objectData} 的第 ({~objectID} - 9) 项 * .333) end width ({objectData} 的第 ({~objectID} - 5) 项 * .333) )

 

定义 Draw Tri {id1} {id2} {id3}

将 {~zClip} 设为 (((15 < {~objVertZ} 的第 {id1} 项) + (15 < {~objVertZ} 的第 {id2} 项)) + (15 < {~objVertZ} 的第 {id3} 项))

如果 ({objectData} 的第 ({~objectID} - 5) 项 = 1) 那么

如果 ({~zClip} = 3) 那么

如果 ((({~objScreenX} 的第 {id1} 项 - {~objScreenX} 的第 {id2} 项) * ({~objScreenY} 的第 {id3} 项 - {~objScreenY} 的第 {id2} 项)) < (({~objScreenX} 的第 {id3} 项 - {~objScreenX} 的第 {id2} 项) * ({~objScreenY} 的第 {id1} 项 - {~objScreenY} 的第 {id2} 项))) 那么

将笔的颜色设为{materialColor} 的第 {materials} 中第一个 {objectData} 的第 ({~objectID} - 9) 项 的编号 项

执行 Render Triangle

否则

如果 (0 < {~zClip}) 那么

将笔的颜色设为{materialColor} 的第 {materials} 中第一个 {objectData} 的第 ({~objectID} - 9) 项 的编号 项

将 {~tempA} 设为 ({~objVertZ} 的第 {id1} 项 / {fov})

将 {~tempB} 设为 ({~objVertZ} 的第 {id2} 项 / {fov})

将 {~tempC} 设为 ({~objVertZ} 的第 {id3} 项 / {fov})

执行 z-clip

否则

如果 ({~zClip} = 3) 那么

将笔的颜色设为{materialColor} 的第 {materials} 中第一个 {objectData} 的第 ({~objectID} - 9) 项 的编号 项

执行 Render Triangle

否则

如果 (0 < {~zClip}) 那么

将笔的颜色设为{materialColor} 的第 {materials} 中第一个 {objectData} 的第 ({~objectID} - 9) 项 的编号 项

将 {~tempA} 设为 ({~objVertZ} 的第 {id1} 项 / {fov})

将 {~tempB} 设为 ({~objVertZ} 的第 {id2} 项 / {fov})

将 {~tempC} 设为 ({~objVertZ} 的第 {id3} 项 / {fov})

执行 z-clip 2 ({~objScreenX} 的第 {id1} 项 * {~tempA}) ({~objScreenY} 的第 {id1} 项 * {~tempA}) {~objVertZ} 的第 {id1} 项 ({~objScreenX} 的第 {id2} 项 * {~tempB}) ({~objScreenY} 的第 {id2} 项 * {~tempB}) {~objVertZ} 的第 {id2} 项 ({~objScreenX} 的第 {id3} 项 * {~tempC}) ({~objScreenY} 的第 {id3} 项 * {~tempC}) {~objVertZ} 的第 {id3} 项 15

 

定义 z clip line and fill ( {Ax} {Ay} {Az} . {Bx} {By} {Bz} z clip distance {z} start width {sw} end width {ew} )

将 {_t1} 设为 (({z} - {Az}) / ({Bz} - {Az}))

如果 ({Az} < {z}) 那么

执行 Draw line from x1: y1: to x2: y2: start width: end width:

否则

如果 ({Bz} < {z}) 那么

执行 Draw line from x1: y1: to x2: y2: start width: end width:

 

定义 Draw line from x1: {x1} y1: {y1} to x2: {x2} y2: {y2} start width: {ss} end width: {es}

如果 (绝对值(({ss} - {es})) < 0.1) 那么

移到 x:{x1} y:{y1}

将笔的粗细设为1

落笔

将笔的粗细设为{ss}

移到 x:{x2} y:{y2}

抬笔

否则

将 {_tmp} 设为 (平方根(((({x2} - {x1}) * ({x2} - {x1})) + (({y2} - {y1}) * ({y2} - {y1})))) * 2)

如果 ({es} > {ss}) 那么

执行 int draw line

否则

执行 int draw line

 

定义 int draw line {x1} {y1} {x2} {y2} {start size} {end size} {x normal} {y normal} {size diff} {x diff} {y diff}

将 {_x} 设为 {x1}

将 {_y} 设为 {y1}

如果 ({start size} > 1) 那么

将 {_α} 设为 {start size}

否则

将 {_α} 设为 1

如果 ({_α} < {end size}) 那么

重复执行直到 (({_α} * 2) > {end size})

将 {_t1} 设为 (((2 * {_α}) - {start size}) / {size diff})

将 {_x2} 设为 ({x1} + ({x diff} * {_t1}))

将 {_y2} 设为 ({y1} + ({y diff} * {_t1}))

将笔的粗细设为1

移到 x:({_x2} - ({_α} * {x normal})) y:({_y2} - ({_α} * {y normal}))

落笔

将笔的粗细设为{_α}

移到 x:{_x} y:{_y}

移到 x:({_x2} + ({_α} * {x normal})) y:({_y2} + ({_α} * {y normal}))

抬笔

将 {_x} 设为 {_x2}

将 {_y} 设为 {_y2}

将 {_α} 设为 ({_α} * 2)

移到 x:({x2} - (({end size} - {_α}) * {x normal})) y:({y2} - (({end size} - {_α}) * {y normal}))

将笔的粗细设为1

落笔

将笔的粗细设为{_α}

移到 x:{_x} y:{_y}

移到 x:({x2} + (({end size} - {_α}) * {x normal})) y:({y2} + (({end size} - {_α}) * {y normal}))

抬笔

移到 x:{x2} y:{y2}

将笔的粗细设为{end size}

落笔

抬笔

 

执行 Sort Faces

将 {_sort0} 增加 1

将 {_sort3} 设为 {_sort0}

重复执行 ({hi} - {_sort0}) 次

将 {_sort1} 设为 {~sortDepths} 的第 ({_sort0} + 1) 项

将 {_sort6} 设为 {~sortID} 的第 ({_sort0} + 1) 项

将 {_sort2} 设为 {_sort0}

重复执行直到 (({_sort1} < {~sortDepths} 的第 {_sort2} 项) 不成立 或 ({_sort2} < {_sort3}))

将 {~sortDepths} 的第 ({_sort2} + 1) 项替换为 {~sortDepths} 的第 {_sort2} 项

将 {~sortID} 的第 ({_sort2} + 1) 项替换为 {~sortID} 的第 {_sort2} 项

将 {_sort2} 增加 -1

将 {~sortDepths} 的第 ({_sort2} + 1) 项替换为 {_sort1}

将 {~sortID} 的第 ({_sort2} + 1) 项替换为 {_sort6}

将 {_sort0} 增加 1

 

定义 Quad {a} {b} {c} {d} {e} {f} {g} {h}

将 {_A} 设为 平方根(((({c} - {e}) * ({c} - {e})) + (({d} - {f}) * ({d} - {f}))))

将 {_B} 设为 平方根(((({e} - {a}) * ({e} - {a})) + (({f} - {b}) * ({f} - {b}))))

将 {_C} 设为 平方根(((({c} - {a}) * ({c} - {a})) + (({d} - {b}) * ({d} - {b}))))

将 {_D} 设为 平方根(((({g} - {e}) * ({g} - {e})) + (({h} - {f}) * ({h} - {f}))))

将 {_E} 设为 平方根(((({a} - {g}) * ({a} - {g})) + (({b} - {h}) * ({b} - {h}))))

将 {_P2} 设为 ({_D} + ({_B} + {_E}))

将 {_X} 设为 (((({_D} * {a}) + ({_B} * {g})) + ({_E} * {e})) / {_P2})

将 {_Y} 设为 (((({_D} * {b}) + ({_B} * {h})) + ({_E} * {f})) / {_P2})

将 {_P1} 设为 ({_A} + ({_B} + {_C}))

移到 x:(((({_A} * {a}) + ({_B} * {c})) + ({_C} * {e})) / {_P1}) y:(((({_A} * {b}) + ({_B} * {d})) + ({_C} * {f})) / {_P1})

执行 Quad Part 2 (x坐标 - {a}) (y坐标 - {b}) (x坐标 - {c}) (y坐标 - {d}) (x坐标 - {e}) (y坐标 - {f}) ({_X} - {a}) ({_Y} - {b}) ({_X} - {g}) ({_Y} - {h}) ({_X} - {e}) ({_Y} - {f}) 平方根((((({_P1} - ({_A} * 2)) * ({_P1} - ({_B} * 2))) * ({_P1} - ({_C} * 2))) / {_P1})) 平方根((((({_P2} - ({_D} * 2)) * ({_P2} - ({_B} * 2))) * ({_P2} - ({_E} * 2))) / {_P2})) {a} {b} {c} {d} {e} {f} {g} {h}

 

定义 Start Timing

将 {~time} 设为 2000年至今的天数

 

定义 End Timing {#} {name}

将 {stats} 的第 {#} 项替换为 ({stats} 的第 {#} 项 + (((2000年至今的天数 - {~time}) * 86400) * 1000))

 

定义 Distance {x} {y} {z}

将 {~distance} 设为 ( - 平方根(((({x} * {x}) + ({y} * {y})) + ({z} * {z}))))

 

定义 STTF {x1} {y1} {x2} {y2} {x3} {y3} {tex} {const1} {const2}

将 {△a} 设为 ((({x1} - {x3}) * ({x1} - {x3})) + (({y1} - {y3}) * ({y1} - {y3})))

将 {△b} 设为 ((({x3} - {x2}) * ({x3} - {x2})) + (({y3} - {y2}) * ({y3} - {y2})))

将 {△c} 设为 ((({x2} - {x1}) * ({x2} - {x1})) + (({y2} - {y1}) * ({y2} - {y1})))

换成 0x0 造型

将大小设为 (1 / 0)

如果 (({△a} > {△b}) 与 ({△a} > {△c})) 那么

移到 x:((({x1} + {x3}) / 2) + ({const1} * ({y3} - {y1}))) y:((({y3} + {y1}) / 2) - ({const1} * ({x3} - {x1})))

执行 STTF (inner) ({x1} - x坐标) ({y1} - y坐标) ({x2} - x坐标) ({y2} - y坐标) ((180 * ({x3} < {x1}) 不成立) - atan((({y3} - {y1}) / ({x3} - {x1})))) (平方根({△a}) / {const2}) consts: {STTFConstants3} 的第 {triColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {triColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {triColor} 的第 {~ID} 项 项

换成 {tex} 造型

否则

如果 ({△b} > {△c}) 那么

移到 x:((({x3} + {x2}) / 2) + ({const1} * ({y2} - {y3}))) y:((({y3} + {y2}) / 2) - ({const1} * ({x2} - {x3})))

执行 STTF (inner) ({x3} - x坐标) ({y3} - y坐标) ({x1} - x坐标) ({y1} - y坐标) ((180 * ({x2} < {x3}) 不成立) - atan((({y2} - {y3}) / ({x2} - {x3})))) (平方根({△b}) / {const2}) consts: {STTFConstants3} 的第 {triColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {triColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {triColor} 的第 {~ID} 项 项

换成 ({tex} + 1) 造型

否则

移到 x:((({x2} + {x1}) / 2) + ({const1} * ({y1} - {y2}))) y:((({y2} + {y1}) / 2) - ({const1} * ({x1} - {x2})))

执行 STTF (inner) ({x2} - x坐标) ({y2} - y坐标) ({x3} - x坐标) ({y3} - y坐标) ((180 * ({x1} < {x2}) 不成立) - atan((({y1} - {y2}) / ({x1} - {x2})))) (平方根({△c}) / {const2}) consts: {STTFConstants3} 的第 {triColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {triColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {triColor} 的第 {~ID} 项 项

换成 ({tex} + 2) 造型

图章

换成 0x0 造型

将大小设为 (1 / 0)

 

定义 STTF Quad {x1} {y1} {x2} {y2} {x3} {y3} {x4} {y4} tex: {tex} consts: {const1} {const2}

将 {△a} 设为 ((({x1} - {x4}) * ({x1} - {x4})) + (({y1} - {y4}) * ({y1} - {y4})))

将 {△b} 设为 ((({x4} - {x2}) * ({x4} - {x2})) + (({y4} - {y2}) * ({y4} - {y2})))

将 {△c} 设为 ((({x2} - {x1}) * ({x2} - {x1})) + (({y2} - {y1}) * ({y2} - {y1})))

换成 0x0 造型

将大小设为 (1 / 0)

如果 (({△a} > {△b}) 与 ({△a} > {△c})) 那么

移到 x:((({x1} + {x4}) / 2) + ({const1} * ({y4} - {y1}))) y:((({y4} + {y1}) / 2) - ({const1} * ({x4} - {x1})))

执行 STTF (inner) ({x1} - x坐标) ({y1} - y坐标) ({x2} - x坐标) ({y2} - y坐标) ((180 * ({x4} < {x1}) 不成立) - atan((({y4} - {y1}) / ({x4} - {x1})))) (平方根({△a}) / {const2}) consts: {STTFConstants3} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {quadColor} 的第 {~ID} 项 项

换成 {tex} 造型

否则

如果 ({△b} > {△c}) 那么

移到 x:((({x4} + {x2}) / 2) + ({const1} * ({y2} - {y4}))) y:((({y4} + {y2}) / 2) - ({const1} * ({x2} - {x4})))

执行 STTF (inner) ({x4} - x坐标) ({y4} - y坐标) ({x1} - x坐标) ({y1} - y坐标) ((180 * ({x2} < {x4}) 不成立) - atan((({y2} - {y4}) / ({x2} - {x4})))) (平方根({△b}) / {const2}) consts: {STTFConstants3} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {quadColor} 的第 {~ID} 项 项

换成 ({tex} + 1) 造型

否则

移到 x:((({x2} + {x1}) / 2) + ({const1} * ({y1} - {y2}))) y:((({y2} + {y1}) / 2) - ({const1} * ({x1} - {x2})))

执行 STTF (inner) ({x2} - x坐标) ({y2} - y坐标) ({x4} - x坐标) ({y4} - y坐标) ((180 * ({x1} < {x2}) 不成立) - atan((({y1} - {y2}) / ({x1} - {x2})))) (平方根({△c}) / {const2}) consts: {STTFConstants3} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {quadColor} 的第 {~ID} 项 项

换成 ({tex} + 2) 造型

图章

将 {△a} 设为 ((({x3} - {x2}) * ({x3} - {x2})) + (({y3} - {y2}) * ({y3} - {y2})))

将 {△b} 设为 ((({x2} - {x4}) * ({x2} - {x4})) + (({y2} - {y4}) * ({y2} - {y4})))

将 {△c} 设为 ((({x4} - {x3}) * ({x4} - {x3})) + (({y4} - {y3}) * ({y4} - {y3})))

换成 0x0 造型

将大小设为 (1 / 0)

如果 (({△a} > {△b}) 与 ({△a} > {△c})) 那么

移到 x:((({x3} + {x2}) / 2) + ({const1} * ({y2} - {y3}))) y:((({y2} + {y3}) / 2) - ({const1} * ({x2} - {x3})))

执行 STTF (inner) ({x3} - x坐标) ({y3} - y坐标) ({x4} - x坐标) ({y4} - y坐标) ((180 * ({x2} < {x3}) 不成立) - atan((({y2} - {y3}) / ({x2} - {x3})))) (平方根({△a}) / {const2}) consts: {STTFConstants3} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {quadColor} 的第 {~ID} 项 项

换成 {tex} 造型

否则

如果 ({△b} > {△c}) 那么

移到 x:((({x2} + {x4}) / 2) + ({const1} * ({y4} - {y2}))) y:((({y2} + {y4}) / 2) - ({const1} * ({x4} - {x2})))

执行 STTF (inner) ({x2} - x坐标) ({y2} - y坐标) ({x3} - x坐标) ({y3} - y坐标) ((180 * ({x4} < {x2}) 不成立) - atan((({y4} - {y2}) / ({x4} - {x2})))) (平方根({△b}) / {const2}) consts: {STTFConstants3} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {quadColor} 的第 {~ID} 项 项

换成 ({tex} + 1) 造型

否则

移到 x:((({x4} + {x3}) / 2) + ({const1} * ({y3} - {y4}))) y:((({y4} + {y3}) / 2) - ({const1} * ({x3} - {x4})))

执行 STTF (inner) ({x4} - x坐标) ({y4} - y坐标) ({x2} - x坐标) ({y2} - y坐标) ((180 * ({x3} < {x4}) 不成立) - atan((({y3} - {y4}) / ({x3} - {x4})))) (平方根({△c}) / {const2}) consts: {STTFConstants3} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants4} 的第 {quadColor} 的第 {~ID} 项 项 {STTFConstants5} 的第 {quadColor} 的第 {~ID} 项 项

换成 ({tex} + 2) 造型

图章

换成 0x0 造型

将大小设为 (1 / 0)

 

定义 STTF (inner) {P1.x'} {P1.y'} {P2.x'} {P2.y'} {θ_base} {size} consts: {const3} {const4} {const5}

将 {△f} 设为 ({const3} / ln(((({P2.x'} * {P2.x'}) + ({P2.y'} * {P2.y'})) / (({P1.x'} * {P1.x'}) + ({P1.y'} * {P1.y'})))))

将 {△2*P1.r'} 设为 (1 - e ^(({const4} / {△f})))

将 {△w} 设为 ((((((180 * ({P2.y'} < 0) 不成立) - atan(({P2.x'} / {P2.y'}))) + {θ_base}) + 180) 除以 360 的余数 - 180) / (e ^((ln((1 - e ^(({const5} / {△f})))) * 2)) - ({△2*P1.r'} * {△2*P1.r'})))

面向 (({θ_base} + ({△w} * ({△2*P1.r'} * {△2*P1.r'}))) + 90) 方向

将 鱼眼 特效设定为 ({△f} - 100)

将 漩涡 特效设定为 {△w}

换成 ((({size} / (1 - {△2*P1.r'})) < 100) + 1) 造型

将大小设为 ({size} / (1 - {△2*P1.r'}))

 

定义 Transform Object Vertices {x} {y} {z}

删除 {~objScreenX} 的全部项目

删除 {~objScreenY} 的全部项目

删除 {~objVertZ} 的全部项目

将 {~i} 设为 0

将 {~repeat} 设为 {objectVertID} 的项目数

将 {~x} 设为 ((({x} * {~v1}) + ({y} * {~v2})) + ({z} * {~v3}))

将 {~y} 设为 ((({x} * {~v4}) + ({y} * {~v5})) + ({z} * {~v6}))

将 {~z} 设为 ((({x} * {~v7}) + ({y} * {~v8})) + ({z} * {~v9}))

重复执行 {~repeat} 次

将 {~i} 增加 1

将 ((({objectVertX} 的第 {~i} 项 * {~v7}) + (({objectVertY} 的第 {~i} 项 * {~v8}) + ({objectVertZ} 的第 {~i} 项 * {~v9}))) + {~z}) 加入 {~objVertZ}

将 ((((({objectVertX} 的第 {~i} 项 * {~v1}) + (({objectVertY} 的第 {~i} 项 * {~v2}) + ({objectVertZ} 的第 {~i} 项 * {~v3}))) + {~x}) / {~objVertZ} 的第 last 项) * {fov}) 加入 {~objScreenX}

将 ((((({objectVertX} 的第 {~i} 项 * {~v4}) + (({objectVertY} 的第 {~i} 项 * {~v5}) + ({objectVertZ} 的第 {~i} 项 * {~v6}))) + {~y}) / {~objVertZ} 的第 last 项) * {fov}) 加入 {~objScreenY}

 

定义 Draw Line {id1} {id2}

将 {~zClip} 设为 ((15 < {~objVertZ} 的第 {id1} 项) + (15 < {~objVertZ} 的第 {id2} 项))

如果 ({~zClip} = 2) 那么

将笔的颜色设为{materialColor} 的第 {materials} 中第一个 {objectData} 的第 ({~objectID} - 8) 项 的编号 项

执行 Draw line from x1: y1: to x2: y2: start width: end width:

否则

如果 (0 < {~zClip}) 那么

将笔的颜色设为{materialColor} 的第 {materials} 中第一个 {objectData} 的第 ({~objectID} - 8) 项 的编号 项

将 {~tempA} 设为 ({~objVertZ} 的第 {id1} 项 / {fov})

将 {~tempB} 设为 ({~objVertZ} 的第 {id2} 项 / {fov})

执行 z clip line and fill ( ({~objScreenX} 的第 {id1} 项 * {~tempA}) ({~objScreenY} 的第 {id1} 项 * {~tempA}) {~objVertZ} 的第 {id1} 项 . ({~objScreenX} 的第 {id2} 项 * {~tempB}) ({~objScreenY} 的第 {id2} 项 * {~tempB}) {~objVertZ} 的第 {id2} 项 z clip distance 15 start width ({objectData} 的第 ({~objectID} - 9) 项 * .333) end width ({objectData} 的第 ({~objectID} - 5) 项 * .333) )

 

定义 Sort Line

执行 Distance ({objectVertX} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camX}) ({objectVertY} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camY}) ({objectVertZ} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camZ})

将 {~tempA} 设为 {~distance}

执行 Distance ({objectVertX} 的第 {objectData} 的第 ({~ID} - 6) 项 项 - {camX}) ({objectVertY} 的第 {objectData} 的第 ({~ID} - 6) 项 项 - {camY}) ({objectVertZ} 的第 {objectData} 的第 ({~ID} - 6) 项 项 - {camZ})

将 (({~tempA} + {~distance}) / 2) 加入 {~sortDepths}

将 {~i} 加入 {~objectID}

 

定义 Draw Point {id}

如果 (15 < {~objVertZ} 的第 {id} 项) 那么

移到 x:{~objScreenX} 的第 {id} 项 y:{~objScreenY} 的第 {id} 项

将笔的颜色设为{materialColor} 的第 {materials} 中第一个 {objectData} 的第 ({~objectID} - 8) 项 的编号 项

将笔的粗细设为(({objectData} 的第 ({~objectID} - 9) 项 * 100) / {~objVertZ} 的第 {id} 项)

落笔

抬笔

 

定义 Sort Point

执行 Distance ({objectVertX} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camX}) ({objectVertY} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camY}) ({objectVertZ} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camZ})

将 {~distance} 加入 {~sortDepths}

将 {~i} 加入 {~objectID}

 

定义 Draw Tri {id1} {id2} {id3}

将 {~zClip} 设为 (((15 < {~objVertZ} 的第 {id1} 项) + (15 < {~objVertZ} 的第 {id2} 项)) + (15 < {~objVertZ} 的第 {id3} 项))

如果 ({objectData} 的第 ({~objectID} - 5) 项 = 1) 那么

如果 ({~zClip} = 3) 那么

如果 ((({~objScreenX} 的第 {id1} 项 - {~objScreenX} 的第 {id2} 项) * ({~objScreenY} 的第 {id3} 项 - {~objScreenY} 的第 {id2} 项)) < (({~objScreenX} 的第 {id3} 项 - {~objScreenX} 的第 {id2} 项) * ({~objScreenY} 的第 {id1} 项 - {~objScreenY} 的第 {id2} 项))) 那么

将笔的颜色设为{materialColor} 的第 {materials} 中第一个 {objectData} 的第 ({~objectID} - 9) 项 的编号 项

执行 Render Triangle

否则

如果 (0 < {~zClip}) 那么

将笔的颜色设为{materialColor} 的第 {materials} 中第一个 {objectData} 的第 ({~objectID} - 9) 项 的编号 项

将 {~tempA} 设为 ({~objVertZ} 的第 {id1} 项 / {fov})

将 {~tempB} 设为 ({~objVertZ} 的第 {id2} 项 / {fov})

将 {~tempC} 设为 ({~objVertZ} 的第 {id3} 项 / {fov})

执行 z-clip

否则

如果 ({~zClip} = 3) 那么

将笔的颜色设为{materialColor} 的第 {materials} 中第一个 {objectData} 的第 ({~objectID} - 9) 项 的编号 项

执行 Render Triangle

否则

如果 (0 < {~zClip}) 那么

将笔的颜色设为{materialColor} 的第 {materials} 中第一个 {objectData} 的第 ({~objectID} - 9) 项 的编号 项

将 {~tempA} 设为 ({~objVertZ} 的第 {id1} 项 / {fov})

将 {~tempB} 设为 ({~objVertZ} 的第 {id2} 项 / {fov})

将 {~tempC} 设为 ({~objVertZ} 的第 {id3} 项 / {fov})

执行 z-clip 2 ({~objScreenX} 的第 {id1} 项 * {~tempA}) ({~objScreenY} 的第 {id1} 项 * {~tempA}) {~objVertZ} 的第 {id1} 项 ({~objScreenX} 的第 {id2} 项 * {~tempB}) ({~objScreenY} 的第 {id2} 项 * {~tempB}) {~objVertZ} 的第 {id2} 项 ({~objScreenX} 的第 {id3} 项 * {~tempC}) ({~objScreenY} 的第 {id3} 项 * {~tempC}) {~objVertZ} 的第 {id3} 项 15

 

定义 Sort Triangle

执行 Distance ({objectVertX} 的第 {objectData} 的第 ({~ID} - 8) 项 项 - {camX}) ({objectVertY} 的第 {objectData} 的第 ({~ID} - 8) 项 项 - {camY}) ({objectVertZ} 的第 {objectData} 的第 ({~ID} - 8) 项 项 - {camZ})

将 {~tempA} 设为 {~distance}

执行 Distance ({objectVertX} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camX}) ({objectVertY} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camY}) ({objectVertZ} 的第 {objectData} 的第 ({~ID} - 7) 项 项 - {camZ})

将 {~tempB} 设为 {~distance}

执行 Distance ({objectVertX} 的第 {objectData} 的第 ({~ID} - 6) 项 项 - {camX}) ({objectVertY} 的第 {objectData} 的第 ({~ID} - 6) 项 项 - {camY}) ({objectVertZ} 的第 {objectData} 的第 ({~ID} - 6) 项 项 - {camZ})

将 ((({~tempA} + {~tempB}) + {~distance}) / 3) 加入 {~sortDepths}

将 {~i} 加入 {~objectID}

 

定义 int draw line {x1} {y1} {x2} {y2} {start size} {end size} {x normal} {y normal} {size diff} {x diff} {y diff}

将 {_x} 设为 {x1}

将 {_y} 设为 {y1}

如果 ({start size} > 1) 那么

将 {_α} 设为 {start size}

否则

将 {_α} 设为 1

如果 ({_α} < {end size}) 那么

重复执行直到 (({_α} * 2) > {end size})

将 {_t1} 设为 (((2 * {_α}) - {start size}) / {size diff})

将 {_x2} 设为 ({x1} + ({x diff} * {_t1}))

将 {_y2} 设为 ({y1} + ({y diff} * {_t1}))

将笔的粗细设为1

移到 x:({_x2} - ({_α} * {x normal})) y:({_y2} - ({_α} * {y normal}))

落笔

将笔的粗细设为{_α}

移到 x:{_x} y:{_y}

移到 x:({_x2} + ({_α} * {x normal})) y:({_y2} + ({_α} * {y normal}))

抬笔

将 {_x} 设为 {_x2}

将 {_y} 设为 {_y2}

将 {_α} 设为 ({_α} * 2)

移到 x:({x2} - (({end size} - {_α}) * {x normal})) y:({y2} - (({end size} - {_α}) * {y normal}))

将笔的粗细设为1

落笔

将笔的粗细设为{_α}

移到 x:{_x} y:{_y}

移到 x:({x2} + (({end size} - {_α}) * {x normal})) y:({y2} + (({end size} - {_α}) * {y normal}))

抬笔

移到 x:{x2} y:{y2}

将笔的粗细设为{end size}

落笔

抬笔

 

定义 Draw line from x1: {x1} y1: {y1} to x2: {x2} y2: {y2} start width: {ss} end width: {es}

如果 (绝对值(({ss} - {es})) < 0.1) 那么

移到 x:{x1} y:{y1}

将笔的粗细设为1

落笔

将笔的粗细设为{ss}

移到 x:{x2} y:{y2}

抬笔

否则

将 {_tmp} 设为 (平方根(((({x2} - {x1}) * ({x2} - {x1})) + (({y2} - {y1}) * ({y2} - {y1})))) * 2)

如果 ({es} > {ss}) 那么

执行 int draw line

否则

执行 int draw line

 

定义 z clip line and fill ( {Ax} {Ay} {Az} . {Bx} {By} {Bz} z clip distance {z} start width {sw} end width {ew} )

将 {_t1} 设为 (({z} - {Az}) / ({Bz} - {Az}))

如果 ({Az} < {z}) 那么

执行 Draw line from x1: y1: to x2: y2: start width: end width:

否则

如果 ({Bz} < {z}) 那么

执行 Draw line from x1: y1: to x2: y2: start width: end width:

 

定义 Sort Faces {lo} {hi}

将 {_sort0} 设为 ({lo} - 1)

重复执行直到 (({hi} - {_sort0}) < 17)

将 {_sort1} 设为 (({hi} - {_sort0}) 除以 3 的余数 + 1)

将 {_sort0} 增加 1

将 {_sort2} 设为 {~sortDepths} 的第 (四舍五入((({_sort0} + {hi}) / 2)) + ({_sort1} - 2)) 项

将 {_sort3} 设为 {~sortDepths} 的第 ({hi} - {_sort1}) 项

将 {_sort1} 设为 {~sortDepths} 的第 ({_sort0} + {_sort1}) 项

如果 (({_sort1} > {_sort2}) 或 ({_sort2} > {_sort3})) 不成立 那么

将 {_sort4} 设为 {_sort0}

将 {_sort5} 设为 ({hi} - 1)

重复执行直到 ({_sort4} > {_sort5})

如果 ({~sortDepths} 的第 {_sort4} 项 > {~sortDepths} 的第 ({_sort4} + 1) 项) 那么

如果 (({_sort1} = {_sort2}) 与 ({_sort2} = {_sort3})) 那么

如果 ({~sortDepths} 的第 ({_sort4} + 1) 项 = {_sort1}) 那么

将 {_sort1} 设为 {~sortDepths} 的第 {_sort4} 项

否则

将 {_sort1} 设为 {~sortDepths} 的第 ({_sort4} + 1) 项

将 {_sort4} 设为 0

将 {_sort5} 设为 -1

否则

如果 ({~sortDepths} 的第 {_sort5} 项 > {~sortDepths} 的第 ({_sort5} + 1) 项) 那么

如果 (({_sort1} = {_sort2}) 与 ({_sort2} = {_sort3})) 那么

如果 ({~sortDepths} 的第 ({_sort5} + 1) 项 = {_sort1}) 那么

将 {_sort1} 设为 {~sortDepths} 的第 {_sort5} 项

否则

将 {_sort1} 设为 {~sortDepths} 的第 ({_sort5} + 1) 项

将 {_sort4} 设为 0

将 {_sort5} 设为 -1

将 {_sort4} 增加 1

将 {_sort5} 增加 -1

如果 ({_sort5} > 0) 那么

将 {_sort0} 设为 {hi}

停止 这个脚本

如果 ({_sort1} < {_sort2}) 那么

如果 ({_sort3} < {_sort2}) 那么

如果 ({_sort3} < {_sort1}) 那么

将 {_sort1} 设为 {_sort1}

否则

如果 ({_sort1} < {_sort3}) 那么

将 {_sort1} 设为 {_sort3}

否则

将 {_sort1} 设为 {_sort2}

否则

将 {_sort1} 设为 {_sort2}

否则

如果 ({_sort2} < {_sort1}) 那么

如果 ({_sort3} < {_sort1}) 那么

如果 ({_sort3} < {_sort2}) 那么

将 {_sort1} 设为 {_sort2}

否则

如果 ({_sort2} < {_sort3}) 那么

将 {_sort1} 设为 {_sort3}

否则

将 {_sort1} 设为 {_sort1}

否则

将 {_sort1} 设为 {_sort1}

否则

如果 ({_sort3} < {_sort1}) 那么

将 {_sort1} 设为 {_sort1}

否则

将 {_sort1} 设为 {_sort3}

将 {_sort2} 设为 {_sort0}

将 {_sort3} 设为 {hi}

重复执行直到 ({~sortDepths} 的第 {_sort3} 项 < {_sort1})

将 {_sort3} 增加 -1

执行 Sort Faces

将 {_sort0} 增加 1

将 {_sort3} 设为 {_sort0}

重复执行 ({hi} - {_sort0}) 次

将 {_sort1} 设为 {~sortDepths} 的第 ({_sort0} + 1) 项

将 {_sort6} 设为 {~sortID} 的第 ({_sort0} + 1) 项

将 {_sort2} 设为 {_sort0}

重复执行直到 (({_sort1} < {~sortDepths} 的第 {_sort2} 项) 不成立 或 ({_sort2} < {_sort3}))

将 {~sortDepths} 的第 ({_sort2} + 1) 项替换为 {~sortDepths} 的第 {_sort2} 项

将 {~sortID} 的第 ({_sort2} + 1) 项替换为 {~sortID} 的第 {_sort2} 项

将 {_sort2} 增加 -1

将 {~sortDepths} 的第 ({_sort2} + 1) 项替换为 {_sort1}

将 {~sortID} 的第 ({_sort2} + 1) 项替换为 {_sort6}

将 {_sort0} 增加 1

 

定义 Start Timing

将 {~time} 设为 2000年至今的天数

 

定义 End Timing {#} {name}

将 {stats} 的第 {#} 项替换为 ({stats} 的第 {#} 项 + (((2000年至今的天数 - {~time}) * 86400) * 1000))

 

定义 Trig {sx} {cx} {sy} {cy} {sz} {cz}

将 {~v1} 设为 (({cx} * {cz}) - ({sx} * ({sy} * {sz})))

将 {~v2} 设为 (0 - ({sz} * {cy}))

将 {~v3} 设为 (({sy} * ({cx} * {sz})) + ({sx} * {cz}))

将 {~v4} 设为 (({sy} * ({sx} * {cz})) + ({cx} * {sz}))

将 {~v5} 设为 ({cy} * {cz})

将 {~v6} 设为 (({sx} * {sz}) - ({sy} * ({cx} * {cz})))

将 {~v7} 设为 (0 - ({sx} * {cy}))

将 {~v8} 设为 {sy}

将 {~v9} 设为 ({cy} * {cx})

 

定义 Azex 2 {ina} {inb} {inc} {ind} {ine} {inf} {inr} {a} {b} {c} {d} {e} {f}

如果 (({_A} < {_B}) 与 ({_A} < {_C})) 那么

将 {_A} 设为 (0.5 - ({inr} / (4 * 平方根((({ina} * {ina}) + ({inb} * {inb}))))))

否则

如果 ({_B} < {_C}) 那么

将 {_A} 设为 (0.5 - ({inr} / (4 * 平方根((({inc} * {inc}) + ({ind} * {ind}))))))

否则

将 {_A} 设为 (0.5 - ({inr} / (4 * 平方根((({ine} * {ine}) + ({inf} * {inf}))))))

将笔的粗细设为{inr}

落笔

将 {_B} 设为 {_A}

重复执行 (-1 - (ln({inr}) / ln({_A}))) 次

将笔的粗细设为(({_A} * {inr}) + 2)

移到 x:({a} + ({_A} * {ina})) y:({b} + ({_A} * {inb}))

移到 x:({c} + ({_A} * {inc})) y:({d} + ({_A} * {ind}))

移到 x:({e} + ({_A} * {ine})) y:({f} + ({_A} * {inf}))

移到 x:({a} + ({_A} * {ina})) y:({b} + ({_A} * {inb}))

将 {_A} 设为 ({_A} * {_B})

将笔的粗细设为2.5

移到 x:{a} y:{b}

移到 x:{c} y:{d}

移到 x:{e} y:{f}

移到 x:{a} y:{b}

抬笔

 

定义 Trig {sx} {cx} {sy} {cy} {sz} {cz}

将 {~v1} 设为 (({cx} * {cz}) - ({sx} * ({sy} * {sz})))

将 {~v2} 设为 (0 - ({sz} * {cy}))

将 {~v3} 设为 (({sy} * ({cx} * {sz})) + ({sx} * {cz}))

将 {~v4} 设为 (({sy} * ({sx} * {cz})) + ({cx} * {sz}))

将 {~v5} 设为 ({cy} * {cz})

将 {~v6} 设为 (({sx} * {sz}) - ({sy} * ({cx} * {cz})))

将 {~v7} 设为 (0 - ({sx} * {cy}))

将 {~v8} 设为 {sy}

将 {~v9} 设为 ({cy} * {cx})

 

定义 Azex 2 {ina} {inb} {inc} {ind} {ine} {inf} {inr} {a} {b} {c} {d} {e} {f}

如果 (({_A} < {_B}) 与 ({_A} < {_C})) 那么

将 {_A} 设为 (0.5 - ({inr} / (4 * 平方根((({ina} * {ina}) + ({inb} * {inb}))))))

否则

如果 ({_B} < {_C}) 那么

将 {_A} 设为 (0.5 - ({inr} / (4 * 平方根((({inc} * {inc}) + ({ind} * {ind}))))))

否则

将 {_A} 设为 (0.5 - ({inr} / (4 * 平方根((({ine} * {ine}) + ({inf} * {inf}))))))

将笔的粗细设为{inr}

落笔

将 {_B} 设为 {_A}

重复执行 (-1 - (ln({inr}) / ln({_A}))) 次

将笔的粗细设为(({_A} * {inr}) + 2)

移到 x:({a} + ({_A} * {ina})) y:({b} + ({_A} * {inb}))

移到 x:({c} + ({_A} * {inc})) y:({d} + ({_A} * {ind}))

移到 x:({e} + ({_A} * {ine})) y:({f} + ({_A} * {inf}))

移到 x:({a} + ({_A} * {ina})) y:({b} + ({_A} * {inb}))

将 {_A} 设为 ({_A} * {_B})

将笔的粗细设为2.5

移到 x:{a} y:{b}

移到 x:{c} y:{d}

移到 x:{e} y:{f}

移到 x:{a} y:{b}

抬笔