public void UpdateBuffData(CCommandList cmd, IntPtr ptr, UInt32 size) { lock (cmd) { SDK_IVertexBuffer_UpdateGPUBuffData(CoreObject, cmd.CoreObject, ptr, size); } }
public static CCommandList CreateFromPtr(NativePointer self) { var result = new CCommandList(self); result.Core_AddRef(); return(result); }
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)); } }
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能提供的大,可能会有未知错误"); //} }
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); }
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); }
public void Unmap(CCommandList cmd, int MipLevel) { SDK_ITexture2D_Unmap(CoreObject, cmd.CoreObject, MipLevel); }
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)); }