mirror of
https://github.com/godotengine/godot-docs-l10n.git
synced 2025-12-31 09:49:22 +03:00
983 lines
46 KiB
ReStructuredText
983 lines
46 KiB
ReStructuredText
:github_url: hide
|
||
|
||
.. _class_Mesh:
|
||
|
||
Mesh
|
||
====
|
||
|
||
**繼承:** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
|
||
|
||
**被繼承:** :ref:`ArrayMesh<class_ArrayMesh>`, :ref:`ImmediateMesh<class_ImmediateMesh>`, :ref:`PlaceholderMesh<class_PlaceholderMesh>`, :ref:`PrimitiveMesh<class_PrimitiveMesh>`
|
||
|
||
一種包含基於頂點陣列的幾何資源。
|
||
|
||
.. rst-class:: classref-introduction-group
|
||
|
||
說明
|
||
----
|
||
|
||
Mesh is a type of :ref:`Resource<class_Resource>` that contains vertex array-based geometry, divided in *surfaces*. Each surface contains a completely separate array and a material used to draw it. Design wise, a mesh with multiple surfaces is preferred to a single surface, because objects created in 3D editing software commonly contain multiple materials. The maximum number of surfaces per mesh is :ref:`RenderingServer.MAX_MESH_SURFACES<class_RenderingServer_constant_MAX_MESH_SURFACES>`.
|
||
|
||
.. rst-class:: classref-introduction-group
|
||
|
||
教學
|
||
----
|
||
|
||
- `3D 材質測試演示 <https://godotengine.org/asset-library/asset/2742>`__
|
||
|
||
- `3D 動力學角色演示 <https://godotengine.org/asset-library/asset/2739>`__
|
||
|
||
- `3D 平台跳躍示範 <https://godotengine.org/asset-library/asset/2748>`__
|
||
|
||
- `第三人稱射擊(TPS)示範 <https://godotengine.org/asset-library/asset/2710>`__
|
||
|
||
.. rst-class:: classref-reftable-group
|
||
|
||
屬性
|
||
----
|
||
|
||
.. table::
|
||
:widths: auto
|
||
|
||
+---------------------------------+-------------------------------------------------------------------+--------------------+
|
||
| :ref:`Vector2i<class_Vector2i>` | :ref:`lightmap_size_hint<class_Mesh_property_lightmap_size_hint>` | ``Vector2i(0, 0)`` |
|
||
+---------------------------------+-------------------------------------------------------------------+--------------------+
|
||
|
||
.. rst-class:: classref-reftable-group
|
||
|
||
方法
|
||
----
|
||
|
||
.. table::
|
||
:widths: auto
|
||
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`AABB<class_AABB>` | :ref:`_get_aabb<class_Mesh_private_method__get_aabb>`\ (\ ) |virtual| |required| |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`_get_blend_shape_count<class_Mesh_private_method__get_blend_shape_count>`\ (\ ) |virtual| |required| |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`StringName<class_StringName>` | :ref:`_get_blend_shape_name<class_Mesh_private_method__get_blend_shape_name>`\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`_get_surface_count<class_Mesh_private_method__get_surface_count>`\ (\ ) |virtual| |required| |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`_set_blend_shape_name<class_Mesh_private_method__set_blend_shape_name>`\ (\ index\: :ref:`int<class_int>`, name\: :ref:`StringName<class_StringName>`\ ) |virtual| |required| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`_surface_get_array_index_len<class_Mesh_private_method__surface_get_array_index_len>`\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`_surface_get_array_len<class_Mesh_private_method__surface_get_array_len>`\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Array<class_Array>` | :ref:`_surface_get_arrays<class_Mesh_private_method__surface_get_arrays>`\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Array<class_Array>`\[:ref:`Array<class_Array>`\] | :ref:`_surface_get_blend_shape_arrays<class_Mesh_private_method__surface_get_blend_shape_arrays>`\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`_surface_get_format<class_Mesh_private_method__surface_get_format>`\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Dictionary<class_Dictionary>` | :ref:`_surface_get_lods<class_Mesh_private_method__surface_get_lods>`\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Material<class_Material>` | :ref:`_surface_get_material<class_Mesh_private_method__surface_get_material>`\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`_surface_get_primitive_type<class_Mesh_private_method__surface_get_primitive_type>`\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`_surface_set_material<class_Mesh_private_method__surface_set_material>`\ (\ index\: :ref:`int<class_int>`, material\: :ref:`Material<class_Material>`\ ) |virtual| |required| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`ConvexPolygonShape3D<class_ConvexPolygonShape3D>` | :ref:`create_convex_shape<class_Mesh_method_create_convex_shape>`\ (\ clean\: :ref:`bool<class_bool>` = true, simplify\: :ref:`bool<class_bool>` = false\ ) |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Mesh<class_Mesh>` | :ref:`create_outline<class_Mesh_method_create_outline>`\ (\ margin\: :ref:`float<class_float>`\ ) |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Resource<class_Resource>` | :ref:`create_placeholder<class_Mesh_method_create_placeholder>`\ (\ ) |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`ConcavePolygonShape3D<class_ConcavePolygonShape3D>` | :ref:`create_trimesh_shape<class_Mesh_method_create_trimesh_shape>`\ (\ ) |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`TriangleMesh<class_TriangleMesh>` | :ref:`generate_triangle_mesh<class_Mesh_method_generate_triangle_mesh>`\ (\ ) |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`AABB<class_AABB>` | :ref:`get_aabb<class_Mesh_method_get_aabb>`\ (\ ) |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`PackedVector3Array<class_PackedVector3Array>` | :ref:`get_faces<class_Mesh_method_get_faces>`\ (\ ) |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`int<class_int>` | :ref:`get_surface_count<class_Mesh_method_get_surface_count>`\ (\ ) |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Array<class_Array>` | :ref:`surface_get_arrays<class_Mesh_method_surface_get_arrays>`\ (\ surf_idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Array<class_Array>`\[:ref:`Array<class_Array>`\] | :ref:`surface_get_blend_shape_arrays<class_Mesh_method_surface_get_blend_shape_arrays>`\ (\ surf_idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`Material<class_Material>` | :ref:`surface_get_material<class_Mesh_method_surface_get_material>`\ (\ surf_idx\: :ref:`int<class_int>`\ ) |const| |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| |void| | :ref:`surface_set_material<class_Mesh_method_surface_set_material>`\ (\ surf_idx\: :ref:`int<class_int>`, material\: :ref:`Material<class_Material>`\ ) |
|
||
+-----------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
列舉
|
||
----
|
||
|
||
.. _enum_Mesh_PrimitiveType:
|
||
|
||
.. rst-class:: classref-enumeration
|
||
|
||
enum **PrimitiveType**: :ref:`🔗<enum_Mesh_PrimitiveType>`
|
||
|
||
.. _class_Mesh_constant_PRIMITIVE_POINTS:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`PrimitiveType<enum_Mesh_PrimitiveType>` **PRIMITIVE_POINTS** = ``0``
|
||
|
||
將陣列算繪為點(一個頂點對應一個點)。
|
||
|
||
.. _class_Mesh_constant_PRIMITIVE_LINES:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`PrimitiveType<enum_Mesh_PrimitiveType>` **PRIMITIVE_LINES** = ``1``
|
||
|
||
將陣列算繪為線(每兩個頂點建立一條連線)。
|
||
|
||
.. _class_Mesh_constant_PRIMITIVE_LINE_STRIP:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`PrimitiveType<enum_Mesh_PrimitiveType>` **PRIMITIVE_LINE_STRIP** = ``2``
|
||
|
||
將陣列算繪為線條。
|
||
|
||
.. _class_Mesh_constant_PRIMITIVE_TRIANGLES:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`PrimitiveType<enum_Mesh_PrimitiveType>` **PRIMITIVE_TRIANGLES** = ``3``
|
||
|
||
將陣列算繪為三角形(每三個頂點建立一個三角形)。
|
||
|
||
.. _class_Mesh_constant_PRIMITIVE_TRIANGLE_STRIP:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`PrimitiveType<enum_Mesh_PrimitiveType>` **PRIMITIVE_TRIANGLE_STRIP** = ``4``
|
||
|
||
將陣列算繪為三角形條。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _enum_Mesh_ArrayType:
|
||
|
||
.. rst-class:: classref-enumeration
|
||
|
||
enum **ArrayType**: :ref:`🔗<enum_Mesh_ArrayType>`
|
||
|
||
.. _class_Mesh_constant_ARRAY_VERTEX:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayType<enum_Mesh_ArrayType>` **ARRAY_VERTEX** = ``0``
|
||
|
||
頂點位置的 :ref:`PackedVector3Array<class_PackedVector3Array>`\ 、\ :ref:`PackedVector2Array<class_PackedVector2Array>` 或 :ref:`Array<class_Array>`\ 。
|
||
|
||
.. _class_Mesh_constant_ARRAY_NORMAL:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayType<enum_Mesh_ArrayType>` **ARRAY_NORMAL** = ``1``
|
||
|
||
:ref:`PackedVector3Array<class_PackedVector3Array>` of vertex normals.
|
||
|
||
\ **Note:** The array has to consist of normal vectors, otherwise they will be normalized by the engine, potentially causing visual discrepancies.
|
||
|
||
.. _class_Mesh_constant_ARRAY_TANGENT:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayType<enum_Mesh_ArrayType>` **ARRAY_TANGENT** = ``2``
|
||
|
||
頂點切線的 :ref:`PackedFloat32Array<class_PackedFloat32Array>`\ 。4 個浮點數為一組表示一個元素,前 3 個浮點數確定切線,最後一個是為 -1 或 1 的副法線方向。
|
||
|
||
.. _class_Mesh_constant_ARRAY_COLOR:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayType<enum_Mesh_ArrayType>` **ARRAY_COLOR** = ``3``
|
||
|
||
頂點顏色的 :ref:`PackedColorArray<class_PackedColorArray>`\ 。
|
||
|
||
.. _class_Mesh_constant_ARRAY_TEX_UV:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayType<enum_Mesh_ArrayType>` **ARRAY_TEX_UV** = ``4``
|
||
|
||
UV 座標的 :ref:`PackedVector2Array<class_PackedVector2Array>`\ 。
|
||
|
||
.. _class_Mesh_constant_ARRAY_TEX_UV2:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayType<enum_Mesh_ArrayType>` **ARRAY_TEX_UV2** = ``5``
|
||
|
||
第二 UV 座標的 :ref:`PackedVector2Array<class_PackedVector2Array>`\ 。
|
||
|
||
.. _class_Mesh_constant_ARRAY_CUSTOM0:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayType<enum_Mesh_ArrayType>` **ARRAY_CUSTOM0** = ``6``
|
||
|
||
Contains custom color channel 0. :ref:`PackedByteArray<class_PackedByteArray>` if ``(format >> Mesh.ARRAY_FORMAT_CUSTOM0_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK`` is :ref:`ARRAY_CUSTOM_RGBA8_UNORM<class_Mesh_constant_ARRAY_CUSTOM_RGBA8_UNORM>`, :ref:`ARRAY_CUSTOM_RGBA8_SNORM<class_Mesh_constant_ARRAY_CUSTOM_RGBA8_SNORM>`, :ref:`ARRAY_CUSTOM_RG_HALF<class_Mesh_constant_ARRAY_CUSTOM_RG_HALF>`, or :ref:`ARRAY_CUSTOM_RGBA_HALF<class_Mesh_constant_ARRAY_CUSTOM_RGBA_HALF>`. :ref:`PackedFloat32Array<class_PackedFloat32Array>` otherwise.
|
||
|
||
.. _class_Mesh_constant_ARRAY_CUSTOM1:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayType<enum_Mesh_ArrayType>` **ARRAY_CUSTOM1** = ``7``
|
||
|
||
Contains custom color channel 1. :ref:`PackedByteArray<class_PackedByteArray>` if ``(format >> Mesh.ARRAY_FORMAT_CUSTOM1_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK`` is :ref:`ARRAY_CUSTOM_RGBA8_UNORM<class_Mesh_constant_ARRAY_CUSTOM_RGBA8_UNORM>`, :ref:`ARRAY_CUSTOM_RGBA8_SNORM<class_Mesh_constant_ARRAY_CUSTOM_RGBA8_SNORM>`, :ref:`ARRAY_CUSTOM_RG_HALF<class_Mesh_constant_ARRAY_CUSTOM_RG_HALF>`, or :ref:`ARRAY_CUSTOM_RGBA_HALF<class_Mesh_constant_ARRAY_CUSTOM_RGBA_HALF>`. :ref:`PackedFloat32Array<class_PackedFloat32Array>` otherwise.
|
||
|
||
.. _class_Mesh_constant_ARRAY_CUSTOM2:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayType<enum_Mesh_ArrayType>` **ARRAY_CUSTOM2** = ``8``
|
||
|
||
Contains custom color channel 2. :ref:`PackedByteArray<class_PackedByteArray>` if ``(format >> Mesh.ARRAY_FORMAT_CUSTOM2_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK`` is :ref:`ARRAY_CUSTOM_RGBA8_UNORM<class_Mesh_constant_ARRAY_CUSTOM_RGBA8_UNORM>`, :ref:`ARRAY_CUSTOM_RGBA8_SNORM<class_Mesh_constant_ARRAY_CUSTOM_RGBA8_SNORM>`, :ref:`ARRAY_CUSTOM_RG_HALF<class_Mesh_constant_ARRAY_CUSTOM_RG_HALF>`, or :ref:`ARRAY_CUSTOM_RGBA_HALF<class_Mesh_constant_ARRAY_CUSTOM_RGBA_HALF>`. :ref:`PackedFloat32Array<class_PackedFloat32Array>` otherwise.
|
||
|
||
.. _class_Mesh_constant_ARRAY_CUSTOM3:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayType<enum_Mesh_ArrayType>` **ARRAY_CUSTOM3** = ``9``
|
||
|
||
Contains custom color channel 3. :ref:`PackedByteArray<class_PackedByteArray>` if ``(format >> Mesh.ARRAY_FORMAT_CUSTOM3_SHIFT) & Mesh.ARRAY_FORMAT_CUSTOM_MASK`` is :ref:`ARRAY_CUSTOM_RGBA8_UNORM<class_Mesh_constant_ARRAY_CUSTOM_RGBA8_UNORM>`, :ref:`ARRAY_CUSTOM_RGBA8_SNORM<class_Mesh_constant_ARRAY_CUSTOM_RGBA8_SNORM>`, :ref:`ARRAY_CUSTOM_RG_HALF<class_Mesh_constant_ARRAY_CUSTOM_RG_HALF>`, or :ref:`ARRAY_CUSTOM_RGBA_HALF<class_Mesh_constant_ARRAY_CUSTOM_RGBA_HALF>`. :ref:`PackedFloat32Array<class_PackedFloat32Array>` otherwise.
|
||
|
||
.. _class_Mesh_constant_ARRAY_BONES:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayType<enum_Mesh_ArrayType>` **ARRAY_BONES** = ``10``
|
||
|
||
骨骼索引的 :ref:`PackedFloat32Array<class_PackedFloat32Array>` 或 :ref:`PackedInt32Array<class_PackedInt32Array>`\ 。每個頂點包含 4 個還是 8 個數字取決於是否存在 :ref:`ARRAY_FLAG_USE_8_BONE_WEIGHTS<class_Mesh_constant_ARRAY_FLAG_USE_8_BONE_WEIGHTS>` 旗標。
|
||
|
||
.. _class_Mesh_constant_ARRAY_WEIGHTS:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayType<enum_Mesh_ArrayType>` **ARRAY_WEIGHTS** = ``11``
|
||
|
||
骨骼權重的 :ref:`PackedFloat32Array<class_PackedFloat32Array>` 或 :ref:`PackedInt32Array<class_PackedInt32Array>`\ ,取值範圍為 ``0.0`` 到 ``1.0``\ (閉區間)。每個頂點包含 4 個還是 8 個數位取決於是否存在 :ref:`ARRAY_FLAG_USE_8_BONE_WEIGHTS<class_Mesh_constant_ARRAY_FLAG_USE_8_BONE_WEIGHTS>` 旗標。
|
||
|
||
.. _class_Mesh_constant_ARRAY_INDEX:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayType<enum_Mesh_ArrayType>` **ARRAY_INDEX** = ``12``
|
||
|
||
整數的 :ref:`PackedInt32Array<class_PackedInt32Array>`\ ,用作引用頂點、顏色、法線、切線、和紋理的索引。所有這些陣列必須具有與頂點陣列相同數量的元素。任何索引都不能超過頂點陣列的大小。當該索引陣列存在時,它會將函式置於“索引模式”,其中索引選擇第 \*i\* 個頂點、法線、切線、顏色、UV 等。這意味著,如果想要沿著一條邊有不同的法線或顏色,則必須複製這些頂點。
|
||
|
||
對於三角形,索引陣列被解釋為三元組,指代每個三角形的頂點。對於線條,索引陣列成對表示每條線的開始和結束。
|
||
|
||
.. _class_Mesh_constant_ARRAY_MAX:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayType<enum_Mesh_ArrayType>` **ARRAY_MAX** = ``13``
|
||
|
||
代表 :ref:`ArrayType<enum_Mesh_ArrayType>` 列舉的大小。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _enum_Mesh_ArrayCustomFormat:
|
||
|
||
.. rst-class:: classref-enumeration
|
||
|
||
enum **ArrayCustomFormat**: :ref:`🔗<enum_Mesh_ArrayCustomFormat>`
|
||
|
||
.. _class_Mesh_constant_ARRAY_CUSTOM_RGBA8_UNORM:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>` **ARRAY_CUSTOM_RGBA8_UNORM** = ``0``
|
||
|
||
表示該自訂通道包含的是無符號正規化位元組顏色,範圍為 0 到 1,編碼為 :ref:`PackedByteArray<class_PackedByteArray>`\ 。
|
||
|
||
.. _class_Mesh_constant_ARRAY_CUSTOM_RGBA8_SNORM:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>` **ARRAY_CUSTOM_RGBA8_SNORM** = ``1``
|
||
|
||
表示該自訂通道包含的是有符號正規化位元組顏色,範圍為 -1 到 1,編碼為 :ref:`PackedByteArray<class_PackedByteArray>`\ 。
|
||
|
||
.. _class_Mesh_constant_ARRAY_CUSTOM_RG_HALF:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>` **ARRAY_CUSTOM_RG_HALF** = ``2``
|
||
|
||
表示該自訂通道包含的是半精度浮點數顏色,編碼為 :ref:`PackedByteArray<class_PackedByteArray>`\ 。僅使用紅、綠通道。
|
||
|
||
.. _class_Mesh_constant_ARRAY_CUSTOM_RGBA_HALF:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>` **ARRAY_CUSTOM_RGBA_HALF** = ``3``
|
||
|
||
表示該自訂通道包含的是半精度浮點數顏色,編碼為 :ref:`PackedByteArray<class_PackedByteArray>`\ 。
|
||
|
||
.. _class_Mesh_constant_ARRAY_CUSTOM_R_FLOAT:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>` **ARRAY_CUSTOM_R_FLOAT** = ``4``
|
||
|
||
表示該自訂通道包含的是全精度浮點數顏色,使用 :ref:`PackedFloat32Array<class_PackedFloat32Array>`\ 。僅使用紅色通道。
|
||
|
||
.. _class_Mesh_constant_ARRAY_CUSTOM_RG_FLOAT:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>` **ARRAY_CUSTOM_RG_FLOAT** = ``5``
|
||
|
||
表示該自訂通道包含的是全精度浮點數顏色,使用 :ref:`PackedFloat32Array<class_PackedFloat32Array>`\ 。僅使用紅、綠通道。
|
||
|
||
.. _class_Mesh_constant_ARRAY_CUSTOM_RGB_FLOAT:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>` **ARRAY_CUSTOM_RGB_FLOAT** = ``6``
|
||
|
||
表示該自訂通道包含的是全精度浮點數顏色,使用 :ref:`PackedFloat32Array<class_PackedFloat32Array>`\ 。僅使用紅、綠、藍通道。
|
||
|
||
.. _class_Mesh_constant_ARRAY_CUSTOM_RGBA_FLOAT:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>` **ARRAY_CUSTOM_RGBA_FLOAT** = ``7``
|
||
|
||
表示該自訂通道包含的是全精度浮點數顏色,使用 :ref:`PackedFloat32Array<class_PackedFloat32Array>`\ 。
|
||
|
||
.. _class_Mesh_constant_ARRAY_CUSTOM_MAX:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>` **ARRAY_CUSTOM_MAX** = ``8``
|
||
|
||
代表 :ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>` 列舉的大小。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _enum_Mesh_ArrayFormat:
|
||
|
||
.. rst-class:: classref-enumeration
|
||
|
||
flags **ArrayFormat**: :ref:`🔗<enum_Mesh_ArrayFormat>`
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_VERTEX:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_VERTEX** = ``1``
|
||
|
||
網格陣列包含頂點。所有網格都需要有頂點陣列,所以這應該始終存在。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_NORMAL:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_NORMAL** = ``2``
|
||
|
||
網格陣列包含法線。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_TANGENT:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_TANGENT** = ``4``
|
||
|
||
網格陣列包含切線。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_COLOR:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_COLOR** = ``8``
|
||
|
||
網格陣列包含顏色。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_TEX_UV:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_TEX_UV** = ``16``
|
||
|
||
網格陣列包含 UV。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_TEX_UV2:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_TEX_UV2** = ``32``
|
||
|
||
網格陣列包含第二套 UV。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_CUSTOM0:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_CUSTOM0** = ``64``
|
||
|
||
網格陣列包含自訂通道索引 0。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_CUSTOM1:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_CUSTOM1** = ``128``
|
||
|
||
網格陣列包含自訂通道索引 1。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_CUSTOM2:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_CUSTOM2** = ``256``
|
||
|
||
網格陣列包含自訂通道索引 2。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_CUSTOM3:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_CUSTOM3** = ``512``
|
||
|
||
網格陣列包含自訂通道索引 3。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_BONES:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_BONES** = ``1024``
|
||
|
||
網格陣列包含骨骼。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_WEIGHTS:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_WEIGHTS** = ``2048``
|
||
|
||
網格陣列包含骨骼權重。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_INDEX:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_INDEX** = ``4096``
|
||
|
||
網格陣列使用索引。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_BLEND_SHAPE_MASK:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_BLEND_SHAPE_MASK** = ``7``
|
||
|
||
混合形狀中允許使用的網格通道的遮罩。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_CUSTOM_BASE:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_CUSTOM_BASE** = ``13``
|
||
|
||
第一個自訂通道的移位量。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_CUSTOM_BITS:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_CUSTOM_BITS** = ``3``
|
||
|
||
每個自訂通道的格式位數。請參閱 :ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>`\ 。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_CUSTOM0_SHIFT:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_CUSTOM0_SHIFT** = ``13``
|
||
|
||
自訂通道索引 0 需要對 :ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>` 進行的按位移動量。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_CUSTOM1_SHIFT:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_CUSTOM1_SHIFT** = ``16``
|
||
|
||
自訂通道索引 1 需要對 :ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>` 進行的按位移動量。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_CUSTOM2_SHIFT:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_CUSTOM2_SHIFT** = ``19``
|
||
|
||
自訂通道索引 2 需要對 :ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>` 進行的按位移動量。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_CUSTOM3_SHIFT:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_CUSTOM3_SHIFT** = ``22``
|
||
|
||
自訂通道索引 3 需要對 :ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>` 進行的按位移動量。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FORMAT_CUSTOM_MASK:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FORMAT_CUSTOM_MASK** = ``7``
|
||
|
||
每個自訂通道的自訂格式位元遮罩。必須按 SHIFT 常數之一進行移位。請參閱 :ref:`ArrayCustomFormat<enum_Mesh_ArrayCustomFormat>`\ 。
|
||
|
||
.. _class_Mesh_constant_ARRAY_COMPRESS_FLAGS_BASE:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_COMPRESS_FLAGS_BASE** = ``25``
|
||
|
||
第一個壓縮旗標的移位元。壓縮旗標應該被傳遞給 :ref:`ArrayMesh.add_surface_from_arrays()<class_ArrayMesh_method_add_surface_from_arrays>` 和 :ref:`SurfaceTool.commit()<class_SurfaceTool_method_commit>`\ 。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FLAG_USE_2D_VERTICES:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FLAG_USE_2D_VERTICES** = ``33554432``
|
||
|
||
用於標記包含 2D 頂點的陣列的旗標。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FLAG_USE_DYNAMIC_UPDATE:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FLAG_USE_DYNAMIC_UPDATE** = ``67108864``
|
||
|
||
Flag used to mark that the mesh data will use ``GL_DYNAMIC_DRAW`` on GLES. Unused on Vulkan.
|
||
|
||
.. _class_Mesh_constant_ARRAY_FLAG_USE_8_BONE_WEIGHTS:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FLAG_USE_8_BONE_WEIGHTS** = ``134217728``
|
||
|
||
用於標記網格每個頂點最多包含 8 個骨骼影響的旗標。該旗標表示 :ref:`ARRAY_BONES<class_Mesh_constant_ARRAY_BONES>` 和 :ref:`ARRAY_WEIGHTS<class_Mesh_constant_ARRAY_WEIGHTS>` 元素將具有雙倍長度。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FLAG_USES_EMPTY_VERTEX_ARRAY:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FLAG_USES_EMPTY_VERTEX_ARRAY** = ``268435456``
|
||
|
||
用於標記網格有意不包含頂點陣列的旗標。
|
||
|
||
.. _class_Mesh_constant_ARRAY_FLAG_COMPRESS_ATTRIBUTES:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`ArrayFormat<enum_Mesh_ArrayFormat>` **ARRAY_FLAG_COMPRESS_ATTRIBUTES** = ``536870912``
|
||
|
||
Flag used to mark that a mesh is using compressed attributes (vertices, normals, tangents, UVs). When this form of compression is enabled, vertex positions will be packed into an RGBA16UNORM attribute and scaled in the vertex shader. The normal and tangent will be packed into an RG16UNORM representing an axis, and a 16-bit float stored in the A-channel of the vertex. UVs will use 16-bit normalized floats instead of full 32-bit signed floats. When using this compression mode you must use either vertices, normals, and tangents or only vertices. You cannot use normals without tangents. Importers will automatically enable this compression if they can.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _enum_Mesh_BlendShapeMode:
|
||
|
||
.. rst-class:: classref-enumeration
|
||
|
||
enum **BlendShapeMode**: :ref:`🔗<enum_Mesh_BlendShapeMode>`
|
||
|
||
.. _class_Mesh_constant_BLEND_SHAPE_MODE_NORMALIZED:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`BlendShapeMode<enum_Mesh_BlendShapeMode>` **BLEND_SHAPE_MODE_NORMALIZED** = ``0``
|
||
|
||
混合形狀是被正規化了的。
|
||
|
||
.. _class_Mesh_constant_BLEND_SHAPE_MODE_RELATIVE:
|
||
|
||
.. rst-class:: classref-enumeration-constant
|
||
|
||
:ref:`BlendShapeMode<enum_Mesh_BlendShapeMode>` **BLEND_SHAPE_MODE_RELATIVE** = ``1``
|
||
|
||
混合形狀是相對於基礎的權重。
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
屬性說明
|
||
--------
|
||
|
||
.. _class_Mesh_property_lightmap_size_hint:
|
||
|
||
.. rst-class:: classref-property
|
||
|
||
:ref:`Vector2i<class_Vector2i>` **lightmap_size_hint** = ``Vector2i(0, 0)`` :ref:`🔗<class_Mesh_property_lightmap_size_hint>`
|
||
|
||
.. rst-class:: classref-property-setget
|
||
|
||
- |void| **set_lightmap_size_hint**\ (\ value\: :ref:`Vector2i<class_Vector2i>`\ )
|
||
- :ref:`Vector2i<class_Vector2i>` **get_lightmap_size_hint**\ (\ )
|
||
|
||
設定用於光照貼圖解析度的提示。
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
方法說明
|
||
--------
|
||
|
||
.. _class_Mesh_private_method__get_aabb:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`AABB<class_AABB>` **_get_aabb**\ (\ ) |virtual| |required| |const| :ref:`🔗<class_Mesh_private_method__get_aabb>`
|
||
|
||
虛方法,能夠為擴充自 **Mesh** 的自訂類覆蓋 :ref:`AABB<class_AABB>`\ 。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_private_method__get_blend_shape_count:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **_get_blend_shape_count**\ (\ ) |virtual| |required| |const| :ref:`🔗<class_Mesh_private_method__get_blend_shape_count>`
|
||
|
||
虛方法,能夠為擴充自 **Mesh** 的自訂類覆蓋混合形狀的數量。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_private_method__get_blend_shape_name:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`StringName<class_StringName>` **_get_blend_shape_name**\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| :ref:`🔗<class_Mesh_private_method__get_blend_shape_name>`
|
||
|
||
虛方法,能夠為擴充自 **Mesh** 的自訂類覆蓋混合形狀名稱的獲取過程。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_private_method__get_surface_count:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **_get_surface_count**\ (\ ) |virtual| |required| |const| :ref:`🔗<class_Mesh_private_method__get_surface_count>`
|
||
|
||
虛方法,能夠為擴充自 **Mesh** 的自訂類覆蓋表面的數量。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_private_method__set_blend_shape_name:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **_set_blend_shape_name**\ (\ index\: :ref:`int<class_int>`, name\: :ref:`StringName<class_StringName>`\ ) |virtual| |required| :ref:`🔗<class_Mesh_private_method__set_blend_shape_name>`
|
||
|
||
虛方法,能夠為擴充自 **Mesh** 的自訂類覆蓋混合形狀的名稱。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_private_method__surface_get_array_index_len:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **_surface_get_array_index_len**\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| :ref:`🔗<class_Mesh_private_method__surface_get_array_index_len>`
|
||
|
||
虛方法,能夠為擴充自 **Mesh** 的自訂類覆蓋表面陣列索引的長度。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_private_method__surface_get_array_len:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **_surface_get_array_len**\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| :ref:`🔗<class_Mesh_private_method__surface_get_array_len>`
|
||
|
||
虛方法,能夠為擴充自 **Mesh** 的自訂類覆蓋表面陣列的長度。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_private_method__surface_get_arrays:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Array<class_Array>` **_surface_get_arrays**\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| :ref:`🔗<class_Mesh_private_method__surface_get_arrays>`
|
||
|
||
虛方法,能夠為擴充自 **Mesh** 的自訂類覆蓋表面陣列。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_private_method__surface_get_blend_shape_arrays:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Array<class_Array>`\[:ref:`Array<class_Array>`\] **_surface_get_blend_shape_arrays**\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| :ref:`🔗<class_Mesh_private_method__surface_get_blend_shape_arrays>`
|
||
|
||
虛方法,能夠為擴充自 **Mesh** 的自訂類覆蓋混合形狀陣列。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_private_method__surface_get_format:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **_surface_get_format**\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| :ref:`🔗<class_Mesh_private_method__surface_get_format>`
|
||
|
||
虛方法,能夠為擴充自 **Mesh** 的自訂類覆蓋表面格式。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_private_method__surface_get_lods:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Dictionary<class_Dictionary>` **_surface_get_lods**\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| :ref:`🔗<class_Mesh_private_method__surface_get_lods>`
|
||
|
||
虛方法,能夠為擴充自 **Mesh** 的自訂類覆蓋表面 LOD。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_private_method__surface_get_material:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Material<class_Material>` **_surface_get_material**\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| :ref:`🔗<class_Mesh_private_method__surface_get_material>`
|
||
|
||
虛方法,能夠為擴充自 **Mesh** 的自訂類覆蓋表面材質。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_private_method__surface_get_primitive_type:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **_surface_get_primitive_type**\ (\ index\: :ref:`int<class_int>`\ ) |virtual| |required| |const| :ref:`🔗<class_Mesh_private_method__surface_get_primitive_type>`
|
||
|
||
虛方法,能夠為擴充自 **Mesh** 的自訂類覆蓋表面圖元型別。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_private_method__surface_set_material:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **_surface_set_material**\ (\ index\: :ref:`int<class_int>`, material\: :ref:`Material<class_Material>`\ ) |virtual| |required| :ref:`🔗<class_Mesh_private_method__surface_set_material>`
|
||
|
||
虛方法,能夠為擴充自 **Mesh** 的自訂類覆蓋索引為 ``index`` 的材質 ``material`` 的設定。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_method_create_convex_shape:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`ConvexPolygonShape3D<class_ConvexPolygonShape3D>` **create_convex_shape**\ (\ clean\: :ref:`bool<class_bool>` = true, simplify\: :ref:`bool<class_bool>` = false\ ) |const| :ref:`🔗<class_Mesh_method_create_convex_shape>`
|
||
|
||
從網格計算 :ref:`ConvexPolygonShape3D<class_ConvexPolygonShape3D>`\ 。
|
||
|
||
如果 ``clean`` 為 ``true``\ (預設值),則自動移除重複頂點和內部頂點。如果不需要如此的化話,可以將其設定為 ``false`` 以加快處理速度。
|
||
|
||
如果 ``simplify`` 為 ``true``\ ,則可以進一步簡化幾何體以減少頂點數。預設情況下是禁用的。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_method_create_outline:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Mesh<class_Mesh>` **create_outline**\ (\ margin\: :ref:`float<class_float>`\ ) |const| :ref:`🔗<class_Mesh_method_create_outline>`
|
||
|
||
以一定的偏移量(邊距),計算出該網格的外輪廓。
|
||
|
||
\ **注意:**\ 這個方法實際上反序返回頂點(例如輸入順時針,返回逆時針)。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_method_create_placeholder:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Resource<class_Resource>` **create_placeholder**\ (\ ) |const| :ref:`🔗<class_Mesh_method_create_placeholder>`
|
||
|
||
建立該資源的預留位置版本(\ :ref:`PlaceholderMesh<class_PlaceholderMesh>`\ )。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_method_create_trimesh_shape:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`ConcavePolygonShape3D<class_ConcavePolygonShape3D>` **create_trimesh_shape**\ (\ ) |const| :ref:`🔗<class_Mesh_method_create_trimesh_shape>`
|
||
|
||
從該網格計算出 :ref:`ConcavePolygonShape3D<class_ConcavePolygonShape3D>`\ 。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_method_generate_triangle_mesh:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`TriangleMesh<class_TriangleMesh>` **generate_triangle_mesh**\ (\ ) |const| :ref:`🔗<class_Mesh_method_generate_triangle_mesh>`
|
||
|
||
從網格生成 :ref:`TriangleMesh<class_TriangleMesh>`\ 。僅考慮使用以下圖元型別的表面:\ :ref:`PRIMITIVE_TRIANGLES<class_Mesh_constant_PRIMITIVE_TRIANGLES>`\ 、\ :ref:`PRIMITIVE_TRIANGLE_STRIP<class_Mesh_constant_PRIMITIVE_TRIANGLE_STRIP>`\ 。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_method_get_aabb:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`AABB<class_AABB>` **get_aabb**\ (\ ) |const| :ref:`🔗<class_Mesh_method_get_aabb>`
|
||
|
||
返回局部空間中包圍這個網格的最小 :ref:`AABB<class_AABB>`\ 。不受 ``custom_aabb`` 的影響。
|
||
|
||
\ **注意:**\ 只針對 :ref:`ArrayMesh<class_ArrayMesh>` 和 :ref:`PrimitiveMesh<class_PrimitiveMesh>` 進行了實作。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_method_get_faces:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`PackedVector3Array<class_PackedVector3Array>` **get_faces**\ (\ ) |const| :ref:`🔗<class_Mesh_method_get_faces>`
|
||
|
||
返回網格中所有構成面的頂點。每三個頂點代表一個三角形。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_method_get_surface_count:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`int<class_int>` **get_surface_count**\ (\ ) |const| :ref:`🔗<class_Mesh_method_get_surface_count>`
|
||
|
||
返回表面覆蓋材質的數量。相當於 :ref:`get_surface_count()<class_Mesh_method_get_surface_count>`\ 。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_method_surface_get_arrays:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Array<class_Array>` **surface_get_arrays**\ (\ surf_idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_Mesh_method_surface_get_arrays>`
|
||
|
||
返回構成請求表面的頂點、法線、UV 等陣列。(見 :ref:`ArrayMesh.add_surface_from_arrays()<class_ArrayMesh_method_add_surface_from_arrays>`\ )。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_method_surface_get_blend_shape_arrays:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Array<class_Array>`\[:ref:`Array<class_Array>`\] **surface_get_blend_shape_arrays**\ (\ surf_idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_Mesh_method_surface_get_blend_shape_arrays>`
|
||
|
||
返回請求表面的混合形狀陣列。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_method_surface_get_material:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`Material<class_Material>` **surface_get_material**\ (\ surf_idx\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_Mesh_method_surface_get_material>`
|
||
|
||
傳回給定表面中的\ :ref:`Material<class_Material>`\ 。表面是使用此材質算繪的。
|
||
|
||
\ **注意:** 這將傳回 **Mesh** 資源中的材質,而不是與 :ref:`MeshInstance3D<class_MeshInstance3D>` 的表面材質覆蓋屬性關聯的 :ref:`Material<class_Material>`\ 。若要取得與 :ref:`MeshInstance3D<class_MeshInstance3D>` 的表面材質覆蓋屬性相關的 :ref:`Material<class_Material>`\ ,請改用 :ref:`MeshInstance3D.get_surface_override_material()<class_MeshInstance3D_method_get_surface_override_material>`\ 。
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_Mesh_method_surface_set_material:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
|void| **surface_set_material**\ (\ surf_idx\: :ref:`int<class_int>`, material\: :ref:`Material<class_Material>`\ ) :ref:`🔗<class_Mesh_method_surface_set_material>`
|
||
|
||
設定為給定表面\ :ref:`Material<class_Material>`\ 。表面將使用此材質算繪。
|
||
|
||
\ **注意:** 這會分配 **Mesh** 資源中的材質,而不是與 :ref:`MeshInstance3D<class_MeshInstance3D>` 的表面材質覆蓋屬性關聯的 :ref:`Material<class_Material>`\ 。若要設定與 :ref:`MeshInstance3D<class_MeshInstance3D>` 的表面材質覆蓋屬性相關的 :ref:`Material<class_Material>`\ ,請使用 :ref:`MeshInstance3D.set_surface_override_material()<class_MeshInstance3D_method_set_surface_override_material>`\ 。
|
||
|
||
.. |virtual| replace:: :abbr:`virtual (本方法通常需要使用者覆寫才能生效。)`
|
||
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
|
||
.. |const| replace:: :abbr:`const (本方法沒有副作用。不會修改該實例的任何成員變數。)`
|
||
.. |vararg| replace:: :abbr:`vararg (本方法除了這裡描述的參數外,還可以接受任意數量的參數。)`
|
||
.. |constructor| replace:: :abbr:`constructor (本方法用於建構一個型別。)`
|
||
.. |static| replace:: :abbr:`static (本方法無需實例即可呼叫,因此可以直接使用類別名稱呼叫。)`
|
||
.. |operator| replace:: :abbr:`operator (本方法描述將本型別作為左運算元時可用的有效運算子。)`
|
||
.. |bitfield| replace:: :abbr:`BitField (此值是由下列旗標組成的位元遮罩整數。)`
|
||
.. |void| replace:: :abbr:`void (無回傳值。)`
|