private static IntPtr Internal_CreateGPUFence(SynchronisationStage stage)
        {
            IntPtr result;

            INTERNAL_CALL_Internal_CreateGPUFence(stage, out result);
            return(result);
        }
        public static GPUFence CreateGPUFence([uei.DefaultValue("SynchronisationStage.PixelProcessing")] SynchronisationStage stage)
        {
            GPUFence newFence = new GPUFence();

            newFence.m_Ptr = Internal_CreateGPUFence(stage);
            newFence.InitPostAllocation();
            newFence.Validate();
            return(newFence);
        }
        public GPUFence CreateGPUFence(SynchronisationStage stage)
        {
            GPUFence newFence = new GPUFence();

            newFence.m_Ptr = CreateGPUFence_Internal(stage);
            newFence.InitPostAllocation();
            newFence.Validate();
            return(newFence);
        }
        public static void WaitOnGPUFence(GPUFence fence, [uei.DefaultValue("SynchronisationStage.VertexProcessing")]  SynchronisationStage stage)
        {
            fence.Validate();

            if (fence.IsFencePending())
            {
                WaitOnGPUFence_Internal(fence.m_Ptr, stage);
            }
        }
        public void WaitOnGPUFence(GPUFence fence, SynchronisationStage stage)
        {
            fence.Validate();

            //Don't wait on a fence that's already known to have passed
            if (fence.IsFencePending())
            {
                WaitOnGPUFence_Internal(fence.m_Ptr, stage);
            }
        }
 extern private void WaitOnGPUFence_Internal(IntPtr fencePtr, SynchronisationStage stage);
 extern private IntPtr CreateGPUFence_Internal(SynchronisationStage stage);
示例#8
0
 public void WaitOnGPUFence(GPUFence fence, SynchronisationStage stage)
 {
 }
示例#9
0
 public GPUFence CreateGPUFence(SynchronisationStage stage)
 {
     return(new GPUFence());
 }
 internal static SynchronisationStageFlags TranslateSynchronizationStageToFlags(SynchronisationStage s)
 {
     return((s == SynchronisationStage.VertexProcessing) ? SynchronisationStageFlags.VertexProcessing : SynchronisationStageFlags.PixelProcessing);
 }
示例#11
0
 public GraphicsFence CreateAsyncGraphicsFence(SynchronisationStage stage)
 {
     return(CreateGraphicsFence(GraphicsFenceType.AsyncQueueSynchronisation, GraphicsFence.TranslateSynchronizationStageToFlags(stage)));
 }
        public static void WaitOnGPUFence(GPUFence fence)
        {
            SynchronisationStage stage = SynchronisationStage.VertexProcessing;

            WaitOnGPUFence(fence, stage);
        }
 private extern static void INTERNAL_CALL_Internal_CreateGPUFence(SynchronisationStage stage, out IntPtr value);
示例#14
0
 extern private static IntPtr CreateGPUFenceImpl(SynchronisationStage stage);
示例#15
0
 public static GPUFence CreateGPUFence([UnityEngine.Internal.DefaultValue("UnityEngine.Rendering.SynchronisationStage.PixelProcessing")] SynchronisationStage stage)
 {
     return(new GPUFence());
 }
示例#16
0
 extern private static void WaitOnGPUFenceImpl(IntPtr fencePtr, SynchronisationStage stage);
示例#17
0
 public static void WaitOnGPUFence(GPUFence fence, [UnityEngine.Internal.DefaultValue("UnityEngine.Rendering.SynchronisationStage.PixelProcessing")] SynchronisationStage stage)
 {
 }
示例#18
0
 public void WaitOnAsyncGraphicsFence(GraphicsFence fence, SynchronisationStage stage)
 {
     WaitOnAsyncGraphicsFence(fence, GraphicsFence.TranslateSynchronizationStageToFlags(stage));
 }
        public static GPUFence CreateGPUFence()
        {
            SynchronisationStage stage = SynchronisationStage.PixelProcessing;

            return(CreateGPUFence(stage));
        }