public virtual Result SetShader(IRenderShader shader)
    {
        Result ret = new Result(IronSightEnginePINVOKE.IObject_SetShader(swigCPtr, IRenderShader.getCPtr(shader)), true);

        //
        if (IronSightEnginePINVOKE.SWIGPendingException.Pending)
        {
            throw IronSightEnginePINVOKE.SWIGPendingException.Retrieve();
        }
        return(ret);
    }
    public virtual IRenderShader GetShader()
    {
        global::System.IntPtr cPtr = IronSightEnginePINVOKE.IObject_GetShader(swigCPtr);
        //
        if (IronSightEnginePINVOKE.SWIGPendingException.Pending)
        {
            throw IronSightEnginePINVOKE.SWIGPendingException.Retrieve();
        }
        IRenderShader ret = (cPtr == global::System.IntPtr.Zero) ? null : new IRenderShader(cPtr, false);

        return(ret);
    }
    public IRenderShader CreateRenderShader(/*cstype*/ string filename)
    {
        global::System.IntPtr cPtr = IronSightEnginePINVOKE.IOutputWindow_CreateRenderShader(swigCPtr, new IronSightEnginePINVOKE.SWIGStringMarshal(filename).swigCPtr);
        //
        if (IronSightEnginePINVOKE.SWIGPendingException.Pending)
        {
            throw IronSightEnginePINVOKE.SWIGPendingException.Retrieve();
        }
        IRenderShader ret = (cPtr == global::System.IntPtr.Zero) ? null : new IRenderShader(cPtr, false);

        return(ret);
    }
 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(IRenderShader obj)
 {
     return((obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr);
 }
    public virtual Result CreateBoxedLevel(SWIGTYPE_p_a_3__unsigned_int chunksize, uint numchunkbuffers, ITexture texboxes, IRenderShader blevelshader, SWIGTYPE_p_p_IBoxedLevel blevel)
    {
        Result ret = new Result(IronSightEnginePINVOKE.IOutputWindow_CreateBoxedLevel(swigCPtr, SWIGTYPE_p_a_3__unsigned_int.getCPtr(chunksize), numchunkbuffers, ITexture.getCPtr(texboxes), IRenderShader.getCPtr(blevelshader), SWIGTYPE_p_p_IBoxedLevel.getCPtr(blevel)), true);

        //
        if (IronSightEnginePINVOKE.SWIGPendingException.Pending)
        {
            throw IronSightEnginePINVOKE.SWIGPendingException.Retrieve();
        }
        if (IronSightEnginePINVOKE.SWIGPendingException.Pending)
        {
            throw IronSightEnginePINVOKE.SWIGPendingException.Retrieve();
        }
        return(ret);
    }