Example #1
0
 public void UpdateBuffData(CCommandList cmd, IntPtr ptr, UInt32 size)
 {
     lock (cmd)
     {
         SDK_IVertexBuffer_UpdateGPUBuffData(CoreObject, cmd.CoreObject, ptr, size);
     }
 }
Example #2
0
        public static CCommandList CreateFromPtr(NativePointer self)
        {
            var result = new CCommandList(self);

            result.Core_AddRef();
            return(result);
        }
Example #3
0
 public void FlushContent(CCommandList cmd)
 {
     lock (cmd)
     {
         SDK_IConstantBuffer_FlushContent(CoreObject, cmd.CoreObject);
     }
 }
 public bool UpdateBufferData(CCommandList cmd, IntPtr data, UInt32 size)
 {
     lock (cmd)
     {
         return(SDK_IGpuBuffer_UpdateBufferData(CoreObject, cmd.CoreObject, data, size));
     }
 }
Example #5
0
        public CRenderContext(NativePointer self)
        {
            mCoreObject = self;

            var ptr = SDK_IRenderContext_GetImmCommandList(CoreObject);

            mImmCommandList = new CCommandList(ptr);
            mImmCommandList.Core_AddRef();
#if PWindow
            SDK_CscShaderConductor_SetTranslateCB(_OnShaderTranslated);
#endif

            //if(ShaderModel > SDK_IRenderContext_GetShaderModel(CoreObject))
            //{
            //    Profiler.Log.WriteLine(Profiler.ELogTag.Warning, "Graphics", "选择的ShaderModel比GPU能提供的大,可能会有未知错误");
            //}
        }
Example #6
0
        private static void OnPassBuilt_WireFrameCB(CCommandList.NativePointer cmdPtr, CPass.NativePointer ptr)
        {
            var pass = CPass.CreatePassFromPtr(ptr);

            if (pass.UserFlags == 0)
            {
                return;
            }
            var rsState = pass.RenderPipeline.RasterizerState;
            var desc    = rsState.Desc;

            desc.FillMode = EFillMode.FMD_WIREFRAME;

            var rc  = CEngine.Instance.RenderContext;
            var smp = CEngine.Instance.RasterizerStateManager.GetRasterizerState(rc, desc);

            CCommandList cmd = CCommandList.CreateFromPtr(cmdPtr);

            cmd.SetRasterizerState(smp);
        }
Example #7
0
 public unsafe void UpdateMipData(CCommandList cmd, uint level, void *pData, uint width, uint height, uint pitch)
 {
     SDK_ITexture2D_UpdateMipData(CoreObject, cmd.CoreObject, level, pData, width, height, pitch);
 }
Example #8
0
 public void Unmap(CCommandList cmd, int MipLevel)
 {
     SDK_ITexture2D_Unmap(CoreObject, cmd.CoreObject, MipLevel);
 }
Example #9
0
 public unsafe bool Map(CCommandList cmd, int MipLevel, void **ppData, uint *pRowPitch, uint *pDepthPitch)
 {
     return(SDK_ITexture2D_Map(CoreObject, cmd.CoreObject, MipLevel, ppData, pRowPitch, pDepthPitch));
 }