public void SetRenderMethodInterface(RenderMethodInterface renderMethod)
        {
            // Set the new rendermethod
            if (renderMethod == null)
            {
                m_renderMethodInterface = null;

                // Do not change the rendermethod type here as we may want to retain that property
                // for the next time we create a rendermethod

                m_actorInterface.SetRenderMethod(HVR.Interface.Types.INVALID_HANDLE);
            }
            else
            {
                m_renderMethodInterface = renderMethod;

                // Set the rendermethod here to ensure that the type matches the
                // rendermethod that was just assigned to this actor
                m_renderMethodType = renderMethod.type;

                m_actorInterface.SetRenderMethod(m_renderMethodInterface.handle);
            }

            // If the suborutinestack has any shaders, we need to set them again after the rendermethod has changed
            if (m_subroutineStack.GetShaderArray().Length > 0)
            {
                m_forceUpdateSubroutines = true;
            }
        }