forked from mttu-developers/konabot
36 lines
959 B
Plaintext
36 lines
959 B
Plaintext
# 指令介绍
|
||
简易 Raymarch 小玩具
|
||
用法:march `<scene>`
|
||
例:march sphere(1).color(red) box(0.5, 2.0, 0.5).pos(0, 0, 0) cam(0.5).pos(-5).lookat(0)
|
||
|
||
# 主要语法
|
||
`<scene>` ::= `<scene>` "." `<op>` |`<obj>`
|
||
|
||
`<obj>` ::= `<obj_ty>` | `<obj_ty>` "(" <args> ")"
|
||
|
||
`<op>` ::= `<op_ty>` | `<op_ty>` "(" `<args>` ")"
|
||
|
||
`<args>` ::= `<args>` "," `<arg>` | `<arg>`
|
||
|
||
其中 `obj_ty`、`op_ty` 分别为物体类型(如 `cube`、`sphere`、`torus` 等)与变换类型(如 `pos`、`rot`)。
|
||
|
||
# 支持的物体
|
||
目前支持的物体有(不包含 alias):
|
||
`cube`:可选参数长宽高
|
||
`sphere`:可选参数半径
|
||
`torus`:可选参数半径与粗细
|
||
`cylinder`:可选参数半径与高度
|
||
`capsule`:可选参数高度与半径
|
||
|
||
特殊物体:
|
||
`camera`:可选参数焦距
|
||
|
||
# 支持的变换
|
||
目前支持的变换有
|
||
`pos`
|
||
`rot`
|
||
`color`
|
||
`lookat`
|
||
|
||
# 特殊说明
|
||
`<op_ty>` 不包含 scale。非正交的变换会破坏 SDF 的性质。 |