protected override void OnClosing(CancelEventArgs e) { base.OnClosing(e); saveSettings(); ParameterManager.Dispose(); ResourceManager.Dispose(); ResourceContext.Dispose(); }
public void RecreateBuffers(GraphicsDevice graphicsDevice) { if (requiredQuads == 0) { ResourceContext?.Dispose(); ResourceContext = null; } else { ResourceContext?.Dispose(); ResourceContext = new DeviceResourceContext(graphicsDevice, VertexDeclaration, requiredQuads * verticesPerQuad, indexStructSize, requiredQuads * IndicesPerQuad); } }
public void RecreateBuffers(GraphicsDevice graphicsDevice) { if (requiredQuads == 0) { ResourceContext?.Dispose(); ResourceContext = null; } else { ResourceContext?.Dispose(); ResourceContext = new DeviceResourceContext(graphicsDevice, VertexDeclaration, requiredQuads * verticesPerQuad, indexStructSize, requiredQuads * IndicesPerQuad); } // The default assumption is that every particle defines a separate segment and no segments are shared SetVerticesPerSegment(verticesPerParticle, verticesPerParticle, verticesPerParticle); }
protected override void OnClosed(EventArgs e) { base.OnClosed(e); scene.Release(); sceneView.Dispose(); resourceManager.Dispose(); resourceContext.Dispose(); timer.Dispose(); graphics.Dispose(); audio.Dispose(); parameterManager.Dispose(); scriptEngine.Dispose(); physics.Dispose(); Graphics.reportLiveObjects(); }
/// <summary> /// Resets the <see cref="ParticleVertexBuilder"/> to its initial state, freeing any graphics memory used /// </summary> public void Reset() { SetRequiredQuads(4, 0, 0); ResourceContext?.Dispose(); ResourceContext = null; }