Lots of improvements. Better UI, time scrolling, scenario system

This commit is contained in:
max
2026-05-03 11:21:24 +02:00
parent c427c1f7d3
commit 7dfc8fa2d2
4 changed files with 340 additions and 97 deletions

23
Scenarios/Scenario.cs Normal file
View File

@@ -0,0 +1,23 @@
using SFML.Graphics;
namespace FluidSim.Core
{
public abstract class Scenario
{
/// <summary>
/// Initialize the scenario with a given audio sample rate.
/// </summary>
public abstract void Initialize(int sampleRate);
/// <summary>
/// Advance one simulation step and return an audio sample.
/// The step size is 1 / sampleRate seconds.
/// </summary>
public abstract float Process();
/// <summary>
/// Draw the current simulation state onto the given SFML render target.
/// </summary>
public abstract void Draw(RenderWindow target);
}
}