예제 #1
0
        protected override void OnClosing(CancelEventArgs e)
        {
            base.OnClosing(e);
            saveSettings();

            ParameterManager.Dispose();
            ResourceManager.Dispose();
            ResourceContext.Dispose();
        }
예제 #2
0
 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);
     }
 }
예제 #3
0
        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);
        }
예제 #4
0
        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();
        }
예제 #5
0
 /// <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;
 }