Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

Объявление

public NativeArray GetIndexData();

Возвращает

NativeArray Возвращает NativeArray, содержащий данные индексного буфера.

Описание

Получает необработанные данные из индексного буфера MeshData.

GetIndexData возвращает прямой "указатель" на необработанные данные буфера индекса без каких-либо выделений памяти, копий данных или преобразований. Вам не нужно удалять возвращенный NativeArray, так как он не представляет новое выделение памяти.

Вам необходимо знать точную компоновку данных Mesh для работы с этими данными, включая наличие и форматы всех атрибутов вершин. Макет данных соответствует макету из Mesh.SetIndexBufferData. Как правило, сетки с 16-битным форматом индекса используют тип данных ushort, а сетки с 32-битным форматом индекса используют int. тип данных.

Если MeshData доступен для записи, и вы установили размер и формат индексного буфера с помощью Mesh.MeshData.SetIndexBufferParams, вы можете записывать индексы непосредственно в массив. Если MeshData доступен только для чтения, массив доступен только для чтения.

Смотрите так же: Mesh.AllocateWritableMeshData, Mesh.AcquireReadOnlyMeshData, Mesh.MeshData.SetIndexBufferParams.

using UnityEngine; using UnityEngine.Rendering; public class ExampleScript : MonoBehaviour { void Start() { var mesh = new Mesh(); mesh.vertices = new[] {Vector3.one, Vector3.zero, Vector3.up}; mesh.indexFormat = IndexFormat.UInt16; mesh.triangles = new[] {2, 0, 1}; using (var data = Mesh.AcquireReadOnlyMeshData(mesh)) { var indices = data[0].GetIndexData(); // prints 2, 0, 1 foreach (var i in indices) Debug.Log(i); } } }

Смотрите так же: Mesh.SetIndexBufferParams, Mesh.SetIndexBufferData, GetVertexData, Mesh.AcquireReadOnlyMeshData.

Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3