/// <summary> /// Main render method for the wire object. /// </summary> /// <param name="renderState">Current render state.</param> private void RenderLines(RenderState renderState) { LocalResourceData resourceData = m_localResources[renderState.DeviceIndex]; // Load line data to memory if needed if (!resourceData.LineDataLoaded) { if ((m_lineData == null) || (m_lineData.Length == 0)) { return; } // Loading of line data GraphicsHelper.SafeDispose(ref resourceData.LineVertexBuffer); resourceData.LineVertexBuffer = GraphicsHelper.CreateImmutableVertexBuffer(renderState.Device, m_lineData); resourceData.LineDataLoaded = true; } // Calculate transform matrix Matrix4x4 viewProj = Matrix4x4.Transpose(renderState.ViewProj); // Render all lines finally resourceData.LineRenderResources.RenderLines( renderState, viewProj, m_lineColor, resourceData.LineVertexBuffer, m_lineData.Length * 2); }
public static LocalResourceData Create(uint resId) { LocalResourceData resData = new LocalResourceData(resId); return(resData); }