Version: 2023.2

CommandBuffer.SetGlobalRayTracingAccelerationStructure

切换到手册
public void SetGlobalRayTracingAccelerationStructure (string name, Rendering.RayTracingAccelerationStructure accelerationStructure);
public void SetGlobalRayTracingAccelerationStructure (int nameID, Rendering.RayTracingAccelerationStructure accelerationStructure);

参数

name The name of the acceleration structure in shader code.
nameID The name ID of the acceleration structure in shader code. Use Shader.PropertyToID to get this value.
accelerationStructure The acceleration structure to set.

描述

Adds a command to bind the RayTracingAccelerationStructure object to all shader stages.

This command binds a RayTracingAccelerationStructure object to all shader stages. You can use the structure for inline ray tracing (ray queries) or as an argument in TraceRay calls in ray tracing shaders. The RayTracingAccelerationStructure object must be built using the BuildRayTracingAccelerationStructure method before calling this command.

Ray queries can be used to perform acceleration structure traversal and geometry intersection tests. To access this functionality, the HLSL code must be compiled using the #pragma require inlineraytracing directive or by using the built-in shader keyword UNITY_DEVICE_SUPPORTS_INLINE_RAY_TRACING (for example, #pragma multi_compile _ UNITY_DEVICE_SUPPORTS_INLINE_RAY_TRACING).

Additional resources: Shader.SetGlobalRayTracingAccelerationStructure, SystemInfo.supportsRayTracingShaders, SystemInfo.supportsInlineRayTracing.