Экспериментальный: этот API является экспериментальным и может быть изменен или удален в будущем.
Объявление
public void AddInstance(Renderer targetRenderer, bool[] subMeshMask, bool[] subMeshTransparencyFlags, bool enableTriangleCulling, bool frontTriangleCounterClockwise, uint mask);public void AddInstance(GraphicsBuffer aabbBuffer, uint numElements, Material material, Matrix4x4 instanceTransform, bool isCutOff, bool enableTriangleCulling, bool frontTriangleCounterClockwise, uint mask, bool reuseBounds);
public void AddInstance(GraphicsBuffer aabbBuffer, uint numElements, Material material, bool isCutOff, bool enableTriangleCulling, bool frontTriangleCounterClockwise, uint mask, bool reuseBounds);
Параметры
targetRenderer | Средство визуализации, которое необходимо добавить в RayTracingAccelerationStructure. |
subMeshMask | Битовая маска любого размера, указывающая, следует ли добавлять подсетку в RayTracingAccelerationStructure. Для средства визуализации с несколькими подсетками, если subMeshMask[i] = true, подсетка добавляется в структуру RayTracingAccelerationStructure. Для средства визуализации только с одной подсеткой вы можете передать неинициализированный массив в качестве значения по умолчанию. |
subMeshTransparencyFlags | Битовый массив любого размера, указывающий, является ли данная подсетка прозрачной. Для средства визуализации с несколькими подсетками, если subMeshTransparencyFlag[i] = true, эта подсетка помечается как прозрачная. Для средства визуализации только с одной подсеткой передайте массив с одной инициализированной записью и укажите, является ли эта подсетка прозрачной. |
enableTriangleCulling | Логическое значение, указывающее, проходит ли отсечение на уровне драйвера графического процессора (например, отсечение спереди или сзади), должно отбрасывать этот рендерер. Отбраковка включена (true) по умолчанию. |
frontTriangleCounterClockwise | Логическое значение, указывающее, следует ли переворачивать треугольники в этом средстве визуализации. Если для этого параметра установлено значение true, треугольники, обращенные вперед, станут обращенными назад, и наоборот. По умолчанию установлено значение false. |
mask | 8-битная маска, которую вы можете использовать для выборочного пересечения этого средства визуализации с лучами, которые проходят только через маску. Все лучи включены (0xff) по умолчанию. |
aabbBuffer | GraphicsBuffer, который определяет количество выровненных по осям ограничивающих рамок (AABB). AABB определяется списком границ, записанных в виде чисел с плавающей запятой в следующем порядке: minX, minY, minZ, maxX, maxY, maxZ. |
numElements | Количество выровненных по оси ограничивающих рамок, определенных в данном GraphicsBuffer. |
material | Материал, применяемый к экземпляру, определяемому выровненными по осям ограничивающими рамками в GraphicsBuffer. |
instanceTransform | Объект в мировой матрице, применяемый к экземпляру, определяемому выровненными по осям ограничивающими прямоугольниками в GraphicsBuffer. Это необязательно и по умолчанию принимает значение Matrix4x4.identity. |
isCutOff | Логическое значение, указывающее, имеет ли Материал, примененный к экземпляру GraphicsBuffer, прозрачность отсечки. |
reuseBounds | Логическое значение, указывающее, использует ли Unity повторно AABB, определенные в GraphicsBuffer, без изменений. Если одни и те же границы могут использоваться для нескольких структур ускорения или нескольких кадров, установите для этого параметра значение true. Это ложь по умолчанию. |
Описание
Добавляет экземпляр в эту структуру RayTracingAccelerationStructure. Экземпляр геометрии может быть Renderer или GraphicsBuffer, который включает в себя несколько ограничивающих рамок, выровненных по осям.
Вы должны вызвать это, чтобы добавить экземпляр в структуру RayTracingAccelerationStructure, управляемую вручную.