public new static BaseShader Alloc(int type) { global::System.IntPtr cPtr = C4dApiPINVOKE.BaseShader_Alloc(type); BaseShader ret = (cPtr == global::System.IntPtr.Zero) ? null : new BaseShader(cPtr, false); return(ret); }
public new BaseShader GetDownLast() { global::System.IntPtr cPtr = C4dApiPINVOKE.BaseShader_GetDownLast(swigCPtr); BaseShader ret = (cPtr == global::System.IntPtr.Zero) ? null : new BaseShader(cPtr, false); return(ret); }
public void Render(BaseShader shader, Vector4[] frustum) { if (!Frustum.CubeInFrustum(frustum, worldPosition, worldSize)) { return; } if (IsLeafNode) { GL.UniformMatrix4(shader.LocalMatrix, false, ref localTransform); GL.Uniform2(shader.Position, Position); GL.Uniform1(shader.Lod, Lod); GL.Uniform2(shader.Index, Index); GL.Uniform1(shader.Size, size); GL.DrawArrays(PrimitiveType.Patches, 0, 16); return; } foreach (var node in Children) { if (node != null) { node.Render(shader, frustum); } } }
public void Render(Vector4[] frustumPlanes, BaseShader shader) { foreach (var node in Nodes) { node.Render(shader, frustumPlanes); } }
public BaseShader GetShader() { global::System.IntPtr cPtr = C4dApiPINVOKE.BaseChannel_GetShader(swigCPtr); BaseShader ret = (cPtr == global::System.IntPtr.Zero) ? null : new BaseShader(cPtr, false); return(ret); }
public BaseShader GetSubsurfaceShader(SWIGTYPE_p_Float bestmpl) { global::System.IntPtr cPtr = C4dApiPINVOKE.BaseShader_GetSubsurfaceShader(swigCPtr, SWIGTYPE_p_Float.getCPtr(bestmpl)); BaseShader ret = (cPtr == global::System.IntPtr.Zero) ? null : new BaseShader(cPtr, false); if (C4dApiPINVOKE.SWIGPendingException.Pending) { throw C4dApiPINVOKE.SWIGPendingException.Retrieve(); } return(ret); }
private void RenderLines(ID3D11DeviceContext InDeviceContext, Camera InCamera) { VertexBufferView BufferView = new VertexBufferView(VertexBuffer, Unsafe.SizeOf <VertexLayouts.BasicLayout.Vertex>(), 0); InDeviceContext.IASetVertexBuffers(0, BufferView); InDeviceContext.IASetIndexBuffer(IndexBuffer, Vortice.DXGI.Format.R16_UInt, 0); InDeviceContext.IASetPrimitiveTopology(PrimitiveTopology.LineStrip); BaseShader Shader = RenderStorageSingleton.Instance.ShaderManager.shaders[1]; Shader.SetSceneVariables(InDeviceContext, Matrix4x4.Identity, InCamera); Shader.Render(InDeviceContext, PrimitiveTopology.LineList, SizeToRender, 0); }
public void RemoveLight(SSLight light) { if (!m_lights.Contains(light)) { throw new Exception("Light not found."); } m_lights.Remove(light); if (BaseShader != null) { BaseShader.Activate(); BaseShader.SetupShadowMap(m_lights); BaseShader.Deactivate(); } }
public void AddLight(SSLight light) { if (m_lights.Contains(light)) { return; } m_lights.Add(light); if (BaseShader != null) { BaseShader.Activate(); BaseShader.SetupShadowMap(m_lights); BaseShader.Deactivate(); } }
internal static global::System.Runtime.InteropServices.HandleRef getCPtr(BaseShader obj) { return((obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr); }
public bool Compare(BaseShader dst) { bool ret = C4dApiPINVOKE.BaseShader_Compare(swigCPtr, BaseShader.getCPtr(dst)); return(ret); }
/// <summary> /// 初始化shader /// </summary> private void InitShader() { srShader = new BaseShader(L2WMat, MVPMat); }
public void InsertShader(BaseShader shader) { C4dApiPINVOKE.BaseList2D_InsertShader__SWIG_1(swigCPtr, BaseShader.getCPtr(shader)); }