CSGPolygon
Inherits: CSGPrimitive < CSGShape < GeometryInstance < VisualInstance < CullInstance < Spatial < Node < Object
拉伸2D多边形形状以创建3D网格。
描述
挤出一组 2D 点以快速创建各种 3D 网格。
属性
| ||
| ||
| ||
| ||
枚举
enum Mode:
enum PathRotation:
- PATH_ROTATION_POLYGON = 0 —- polygon 多边形的形状不会被旋转。
注意:要求路径的Z坐标不断减少,以确保可行的形状。
- PATH_ROTATION_PATH = 1 —- polygon 多边形的形状沿路径旋转,但不绕路径轴旋转。
注意: 需要路径的 Z 坐标不断减小以确保可行的形状。
- PATH_ROTATION_PATH_FOLLOW = 2 —- polygon 多边形的形状跟随路径及其围绕路径轴的旋转。
enum PathIntervalType:
PATH_INTERVAL_DISTANCE = 0 —- 当 mode 被设置为路径MODE_PATH 时,path_interval 将决定路径的每个间隔将被挤出的距离,单位为米。
PATH_INTERVAL_SUBDIVIDE = 1 —- 当 mode 被设置为路径 MODE_PATH时,path_interval 将沿着路径细分多边形。
属性说明
- float depth
Default |
|
Setter | set_depth(value) |
Getter | get_depth() |
当mode为MODE_DEPTH时,挤出的深度。
- Material material
Setter | set_material(value) |
Getter | get_material() |
用于生成的网格的材质。UV将材质的上半部分映射到挤出的形状,即U沿挤出物的长度,V围绕 polygon的轮廓,左下角的四分之一映射到前端面,右下角的四分之一映射到后端面。
- Mode mode
Default |
|
Setter | set_mode(value) |
Getter | get_mode() |
- bool path_continuous_u
Setter | set_path_continuous_u(value) |
Getter | is_path_continuous_u() |
当 mode 为MODE_PATH时,默认情况下, material的上半部分会沿着挤出形状的整个长度被拉伸。如果false
,挤出的每一步都会重复材质的上半部分。
- float path_interval
Setter | set_path_interval(value) |
Getter | get_path_interval() |
当mode 为MODE_PATH时,路径间隔或路径点比例挤出。
- PathIntervalType path_interval_type
Setter | set_path_interval_type(value) |
Getter | get_path_interval_type() |
当 mode 为 MODE_PATH 时,这将确定间隔是按距离(PATH_INTERVAL_DISTANCE)还是细分分数(PATH_INTERVAL_SUBDIVIDE)。
- bool path_joined
Setter | set_path_joined(value) |
Getter | is_path_joined() |
当 mode 为 MODE_PATH 时,如果 true
路径的两端会被连接起来,在路径的最后一个点和第一个点之间添加挤出。
- bool path_local
Setter | set_path_local(value) |
Getter | is_path_local() |
当mode为MODE_PATH时,如果true
,则使用CSGPolygon
的Transform作为挤出的起点,而不是path_node的Transform。
- NodePath path_node
Setter | set_path_node(value) |
Getter | get_path_node() |
mode 为MODE_PATH时,用于挤出 polygon 的 Path 对象的坐标。
- PathRotation path_rotation
Setter | set_path_rotation(value) |
Getter | get_path_rotation() |
当 mode 为 MODE_PATH 时,PathRotation 方法用于在挤出时旋转polygon。
- float path_simplify_angle
Setter | set_path_simplify_angle(value) |
Getter | get_path_simplify_angle() |
当 mode 为 MODE_PATH 时,小于此角度的挤出将合并在一起以减少多边形数量。
- float path_u_distance
Setter | set_path_u_distance(value) |
Getter | get_path_u_distance() |
当mode 为MODE_PATH 时,这是纹理坐标沿着路径的距离,以米为单位,将进行平铺。当设置为0时,纹理坐标将与几何图形完全匹配,没有平铺。
- PoolVector2Array polygon
Default |
|
Setter | set_polygon(value) |
Getter | get_polygon() |
定义挤出的二维多边形的点数组。
- bool smooth_faces
Default |
|
Setter | set_smooth_faces(value) |
Getter | get_smooth_faces() |
如果true
,则对挤出应用平滑着色。
- float spin_degrees
Setter | set_spin_degrees(value) |
Getter | get_spin_degrees() |
当mode为MODE_SPIN,polygon在挤出时旋转的总度数。
- int spin_sides
Setter | set_spin_sides(value) |
Getter | get_spin_sides() |