public unsafe bool Init(RenderPassDesc desc, RenderTexture2D renderTexture, DepthStencil depthStencil) { InitBase(ref desc, 1); using (var descNative = new RenderPassDesc_NativeInterop(ref desc)) { var renderTextureHandle = renderTexture.handle; var usage = renderTexture.usage; return(Orbital_Video_D3D12_RenderPass_Init_WithRenderTextures(handle, &descNative, &renderTextureHandle, &usage, 1, depthStencil.handle, depthStencil.stencilUsage) != 0); } }
public override Texture2DBase CreateRenderTexture2D(int width, int height, TextureFormat format, RenderTextureUsage usage, byte[] data, TextureMode mode, StencilUsage stencilUsage, DepthStencilFormat depthStencilFormat, DepthStencilMode depthStencilMode, bool allowRandomAccess, MultiGPUNodeResourceVisibility nodeVisibility) { var abstraction = new RenderTexture2D(this, usage, mode); if (!abstraction.Init(width, height, format, data, stencilUsage, depthStencilFormat, depthStencilMode, allowRandomAccess, nodeVisibility)) { abstraction.Dispose(); throw new Exception("Failed to create RenderTexture2D"); } return(abstraction); }
public override Texture2DBase CreateRenderTexture2D(int width, int height, TextureFormat format, RenderTextureUsage usage, TextureMode mode, MSAALevel msaaLevel, bool allowRandomAccess, MultiGPUNodeResourceVisibility nodeVisibility) { var abstraction = new RenderTexture2D(this, usage, mode); if (!abstraction.Init(width, height, format, msaaLevel, allowRandomAccess, nodeVisibility)) { abstraction.Dispose(); throw new Exception("Failed to create RenderTexture2D"); } return(abstraction); }
public unsafe bool Init(RenderPassDesc desc, RenderTexture2D renderTexture) { InitBase(ref desc, 1); using (var descNative = new RenderPassDesc_NativeInterop(ref desc)) { var renderTextureHandle = renderTexture.handle; var usage = renderTexture.usage; var depthStencilHandle = IntPtr.Zero; var stencilUsage = StencilUsage.Discard; if (renderTexture.depthStencil != null) { depthStencilHandle = renderTexture.depthStencil.handle; stencilUsage = renderTexture.depthStencil.stencilUsage; } return(Orbital_Video_D3D12_RenderPass_Init_WithRenderTextures(handle, &descNative, &renderTextureHandle, &usage, 1, depthStencilHandle, stencilUsage) != 0); } }