/// <summary>To be documented.</summary> public static unsafe void CmdTraceRays(this KhrRayTracingPipeline thisApi, [Count(Count = 0)] CommandBuffer commandBuffer, [Count(Count = 0), Flow(FlowDirection.In)] ReadOnlySpan <StridedDeviceAddressRegionKHR> pRaygenShaderBindingTable, [Count(Count = 0), Flow(FlowDirection.In)] ReadOnlySpan <StridedDeviceAddressRegionKHR> pMissShaderBindingTable, [Count(Count = 0), Flow(FlowDirection.In)] StridedDeviceAddressRegionKHR *pHitShaderBindingTable, [Count(Count = 0), Flow(FlowDirection.In)] StridedDeviceAddressRegionKHR *pCallableShaderBindingTable, [Count(Count = 0)] uint width, [Count(Count = 0)] uint height, [Count(Count = 0)] uint depth) { // SpanOverloader thisApi.CmdTraceRays(commandBuffer, in pRaygenShaderBindingTable.GetPinnableReference(), in pMissShaderBindingTable.GetPinnableReference(), pHitShaderBindingTable, pCallableShaderBindingTable, width, height, depth); }
/// <summary>To be documented.</summary> public static unsafe Result CreateRayTracingPipelines(this KhrRayTracingPipeline thisApi, [Count(Count = 0)] Device device, [Count(Count = 0)] DeferredOperationKHR deferredOperation, [Count(Count = 0)] PipelineCache pipelineCache, [Count(Count = 0)] uint createInfoCount, [Count(Parameter = "createInfoCount"), Flow(FlowDirection.In)] ReadOnlySpan <RayTracingPipelineCreateInfoKHR> pCreateInfos, [Count(Count = 0), Flow(FlowDirection.In)] ReadOnlySpan <AllocationCallbacks> pAllocator, [Count(Parameter = "createInfoCount"), Flow(FlowDirection.Out)] Span <Pipeline> pPipelines) { // SpanOverloader return(thisApi.CreateRayTracingPipelines(device, deferredOperation, pipelineCache, createInfoCount, in pCreateInfos.GetPinnableReference(), in pAllocator.GetPinnableReference(), out pPipelines.GetPinnableReference())); }
/// <summary>To be documented.</summary> public static unsafe Result GetRayTracingShaderGroupHandles <T0>(this KhrRayTracingPipeline thisApi, [Count(Count = 0)] Device device, [Count(Count = 0)] Pipeline pipeline, [Count(Count = 0)] uint firstGroup, [Count(Count = 0)] uint groupCount, [Count(Count = 0)] nuint dataSize, [Count(Parameter = "dataSize")] Span <T0> pData) where T0 : unmanaged { // SpanOverloader return(thisApi.GetRayTracingShaderGroupHandles(device, pipeline, firstGroup, groupCount, dataSize, ref pData.GetPinnableReference())); }
/// <summary>To be documented.</summary> public static unsafe void CmdTraceRaysIndirect(this KhrRayTracingPipeline thisApi, [Count(Count = 0)] CommandBuffer commandBuffer, [Count(Count = 0), Flow(FlowDirection.In)] ReadOnlySpan <StridedDeviceAddressRegionKHR> pRaygenShaderBindingTable, [Count(Count = 0), Flow(FlowDirection.In)] ReadOnlySpan <StridedDeviceAddressRegionKHR> pMissShaderBindingTable, [Count(Count = 0), Flow(FlowDirection.In)] ReadOnlySpan <StridedDeviceAddressRegionKHR> pHitShaderBindingTable, [Count(Count = 0), Flow(FlowDirection.In)] ReadOnlySpan <StridedDeviceAddressRegionKHR> pCallableShaderBindingTable, [Count(Count = 0)] ulong indirectDeviceAddress) { // SpanOverloader thisApi.CmdTraceRaysIndirect(commandBuffer, in pRaygenShaderBindingTable.GetPinnableReference(), in pMissShaderBindingTable.GetPinnableReference(), in pHitShaderBindingTable.GetPinnableReference(), in pCallableShaderBindingTable.GetPinnableReference(), indirectDeviceAddress); }