예제 #1
0
 public static void Occluded16(uint *valid,
                               IntPtr scene,
                               RayStruct16 *ray)
 {
     NativeMethods.rtcOccluded16(valid,
                                 scene,
                                 ray);
     #if DEBUG
     CheckLastError();
     #endif
 }
예제 #2
0
파일: Scene.cs 프로젝트: war-man/SharpRT
        /// <summary>
        /// Performs an occlusion query on this scene.
        /// </summary>
        /// <param name="ray">The ray structure to use.</param>
        /// <param name="activityMask">The ray activity mask.</param>
        public unsafe void Occlusion16(RayStruct16 *ray, uint *activityMask)
        {
            #if DEBUG
            CheckDisposed();

            if (!AlgorithmFlags.HasFlag(AlgorithmFlags.Intersect16))
            {
                throw new InvalidOperationException("AlgorithmFlags.Intersect16 not set.");
            }
            #endif

            RTC.Occluded16(activityMask, NativePtr, ray);
        }
예제 #3
0
 public static extern void rtcOccluded16(uint *valid,
                                         IntPtr scene,
                                         RayStruct16 *ray);
예제 #4
0
 public static extern void rtcIntersect16(uint *valid,
                                          IntPtr scene,
                                          RayStruct16 *ray);