IDeviceContext.CreateBuffer
Declaration
public LightTransport.BufferID CreateBuffer(ulong count, ulong stride);Параметры
| Параметр | Описание |
|---|---|
| Количество | Число элементов в буфере. |
| шаг | Размер каждого элемента в байтах. |
Возвращаемое значение
BufferID Уникальный идентификатор для новосозданного буфера.
Описание
Выделяет новый буфер на устройстве с указанным количеством элементов и шагом.
Создает буфер, который может хранить указанное количество элементов, каждый из которых имеет указанный шаг (размер в байтах). Фактическое выделение памяти может происходить в памяти CPU, памяти GPU или объединенной памяти в зависимости от аппаратной платформы и реализации.
Возвращенные BufferID могут быть использованы для создания типизированных объектов BufferSlice для чтения и записи данных.
Примечание: Буферы должны быть уничтожены с помощью DestroyBuffer во избежание утечки памяти.
// Create a buffer for 1000 integers BufferID bufferId = context.CreateBuffer(1000, sizeof(int)); var intSlice = new BufferSlice<int>(bufferId, 0);
// Create a buffer for 500 Vector3 structures BufferID vectorBuffer = context.CreateBuffer(500, 12); // size is 3 floats * 4 bytes var vectorSlice = new BufferSlice<Vector3>(vectorBuffer, 0);