예제 #1
0
 public void merge(RenderPriorityGroup rhs)
 {
     OgrePINVOKE.RenderPriorityGroup_merge(swigCPtr, RenderPriorityGroup.getCPtr(rhs));
     if (OgrePINVOKE.SWIGPendingException.Pending)
     {
         throw OgrePINVOKE.SWIGPendingException.Retrieve();
     }
 }
예제 #2
0
        /// <summary>
        ///		Render a group rendering only shadow receivers.
        ///		We have our own version here to add some optimizations
        /// </summary>
        /// <param name="group">Render queue group.</param>
        protected override void RenderTextureShadowReceiverQueueGroupObjects(RenderQueueGroup group)
        {
            // Override auto param ambient to force vertex programs to go full-bright
            autoParamDataSource.AmbientLight = ColorEx.White;
            targetRenderSystem.AmbientLight  = ColorEx.White;

            // Iterate through priorities
            for (int i = 0; i < group.NumPriorityGroups; i++)
            {
                RenderPriorityGroup priorityGroup = group.GetPriorityGroup(i);

                // Do solids, override light list in case any vertex programs use them
                RenderShadowReceiverObjects(priorityGroup.SolidPasses, false, nullLightList);

                // Don't render transparents or passes which have shadow receipt disabled
            }// for each priority

            // reset ambient
            autoParamDataSource.AmbientLight = ambientColor;
            targetRenderSystem.AmbientLight  = ambientColor;
        }
예제 #3
0
 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(RenderPriorityGroup obj)
 {
     return((obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr);
 }