4.5 3D场景

场景3D物体3.4)可以进行脚本编写。本章节的示例代码可以在项目标签中的"3d_samples"文件夹中的图标ScriptEditor中找到。

3D场景和物体操作

CreateScene ("标题" [, RotSpeed=1] [, TransSpeed=1])

创建一个新的3D场景并返回物体。

AddZipTo3DPath (Scene, "文件名.zip")

将一个zip文件添加到搜索目录中,并在成功时返回true。这对于收集大量文件很有用。

LoadSkybox (Scene, "top.jpg" ,"bottom.jpg" ,"left.jpg" ,"right.jpg" ,"front.jpg" ,"back.jpg")

将六个图像文件加载为3D场景的天空盒。

LoadObject (Scene, "文件名.3ds" [,shadow = false [, AnimationSpeed]])

从文件中加载一个3D物体,并返回该物体。

AddLight (Scene, x, y, z, Radius [, r = 255, g = 255, b = 255])

添加一个光源物体,并返回该物体。

Add3DLabel(Scene, "标签" [, width=10, height=10 [, r = 180, g = 180, b = 180 [, "font.xml"]]])

在坐标(0,0,0)处添加一个3D标签,并返回该物体。

Add3DLine (Scene, x1, y1, z1, x2, y2, z2 [, r = 0, g = 0, b = 0])

从点(x1, y1, z1)到点(x2, y2, z2)添加一个3D线物体,并返回该物体。

Add3DRect (Scene, 长度, 宽度 [, r = 180, g = 180, b = 180])

从(-长度/2,0,-宽度/2)到(长度/2,0,宽度/2)添加一个3D矩形物体,并返回该物体。

Add3DBox (Scene, 长度, 宽度, 高度 [, r = 180, g = 180, b = 180 [, bShowEdge = true]])

从(-长度/2,-高度/2,-宽度/2)到(长度/2,高度/2,宽度/2)添加一个3D盒子物体,并返回该物体。

AddSphere (Scene, 半径 [, polycount = 16 [, r = 180, g = 180, b = 180]])

在坐标(0,0,0)处添加一个球体,并返回该物体。如果半径参数小于0,则返回一个不可见的物体。

GetTexture (Object)

返回一个物体的纹理文件:"文件名1","文件名2"等等。

LoadTexture (Scene, Object, "文件名1" [, "文件名2", ...])

加载纹理文件到一个物体中。

SetPosition (Object, x, y, z [, absolute = false])

设置一个物体相对于其父物体的位置(或者绝对位置到场景)。

GetPosition (Object [, absolute = false])

获取一个物体相对于其父物体的位置(或者该物体在场景中的绝对位置)。

SetRotation (Object, rx, ry, rz [, absolute = false])

设置一个物体相对于其父物体的旋转角度(左手坐标系),以度为单位(或者该物体在场景中的绝对旋转角度)。

GetRotation (Object [, absolute = false])

获取一个物体相对于其父物体的旋转角度(左手坐标系),以度为单位(或者该物体在场景中的绝对旋转角度)。

SetScale (Object, sx, sy, sz)

设置一个物体的缩放比例。

GetScale (Object)

获取一个物体的缩放比例。

SetParent (Object, Parent)

将一个物体作为子物体附加到另一个物体上。

GetParent (Object)

获取一个物体的父物体。

SetObject (Object "id" [,x, y, z, [,rx, ry, rz [,sx, sy, sz]]])

设置一个物体的id、位置、旋转和缩放。

DelObject (Object)

删除一个物体。

SetCamera (Scene, x, y, z [,Tx, Ty, Tz])

设置场景相机的位置和目标。

GetCamera (Scene)

获取一个3D场景的相机物体以及其位置和目标。

GetSelections (Scene)

从一个3D场景中返回选中的物体。

GetObjectID (Object1 [, Object2, ...])

返回物体的"id"。

SetObjectID (Object, "id")

设置一个物体的id。

GetObject (Scene, "id")

根据id查找一个物体。

这篇文章使用ChatGPT翻译自其他语言,如果有问题请在反馈open in new window页面提交反馈。

Last Updated:
Contributors: huuhghhgyg