You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+31-21Lines changed: 31 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,11 +10,9 @@
10
10
</div>
11
11
12
12
13
-
SimulationFramework is a cross-platform library for creative coding, game development, and graphical apps built on .NET 7. Designed with simplicity and ease of use in mind, it cuts down on development time for quick and easy prototyping.
13
+
SimulationFramework is a cross-platform library for creative coding, game development, and graphical apps built on .NET 8. Designed with simplicity and ease of use in mind, it cuts down on development time for quick and easy prototyping.
14
14
15
15
> [Join the discord server!](https://discord.gg/V4X2vTvV2G)
16
-
>
17
-
> And check out the [3d branch](https://github.com/Redninja106/simulationframework/tree/3d)!
18
16
19
17
### SimulationFramework is:
20
18
@@ -40,16 +38,40 @@ With more on the way! See [Planned Features](https://github.com/Redninja106/simu
40
38
41
39
## Getting Started
42
40
43
-
> SimulationFramework requires .NET 7 and Visual Studio 2022.
41
+
> SimulationFramework requires .NET 8 and Visual Studio 2022.
44
42
45
-
Create a new Console App using .NET7. Add the [SimulationFramework Nuget Package](https://www.nuget.org/packages/SimulationFramework/) (and it's desktop environment) using Visual Studio or the .NET CLI via the following commands:
43
+
Create a new Console App using .NET 8. Add the [SimulationFramework Nuget Package](https://www.nuget.org/packages/SimulationFramework/) (and its desktop environment) using Visual Studio or the .NET CLI via the following commands:
46
44
47
45
```
48
46
dotnet add package SimulationFramework
49
47
dotnet add package SimulationFramework.Desktop
50
48
```
51
49
52
-
Next, create two methods `OnInitialize` and `OnRender` and pass them to `Simulation.Create`. To start the simulation, call `Simulation.Run()`:
50
+
Next, either inherit simulation and implement the abstract methods or create two methods `OnInitialize` and `OnRender` and pass them to `Simulation.Create`. To start the simulation, call `Simulation.Run()`:
51
+
```cs
52
+
// Program.cs
53
+
usingSimulationFramework;
54
+
usingSimulationFramework.Drawing;
55
+
56
+
classProgram : Simulation
57
+
{
58
+
publicstaticvoidMain()
59
+
{
60
+
Start<Program>();
61
+
}
62
+
63
+
publicoverrideOnInitialize()
64
+
{
65
+
66
+
}
67
+
68
+
publicoverrideOnRender(ICanvascanvas)
69
+
{
70
+
71
+
}
72
+
}
73
+
```
74
+
OR
53
75
```cs
54
76
// Program.cs
55
77
usingSimulationFramework;
@@ -80,17 +102,7 @@ Running the program will result in a blank window:
80
102
Next, to start drawing. The `ICanvas` provided in `OnRender()` contains a variety methods for drawing.
@@ -110,7 +122,7 @@ Here is what that should look like:
110
122
111
123
To see more, [go to the wiki](https://github.com/Redninja106/simulationframework/wiki) or [join the discord server](https://discord.gg/V4X2vTvV2G).
112
124
113
-
## How-To Overview
125
+
## A Quick Overview
114
126
115
127
Most SimulationFramework features are exposed through static classes. Here is a list if the most important ones:
116
128
-`Mouse`: provides mouse input
@@ -121,7 +133,5 @@ Most SimulationFramework features are exposed through static classes. Here is a
121
133
-`Window`: configures the simulation's window
122
134
123
135
## Planned Features
124
-
-**C# shaders**: .NET CIL to HLSL/GLSL compilation to write any kind of shader in plain C# (or any other .NET language!).
125
-
-**Dependency Free**: SimulationFramework won't depend on any other nuget packages or have any native dependencies (except imgui, which will be optional).
126
-
-**3D Drawing**: A performant and cross-platform 3D graphics API. (see the '3d' branch)
136
+
-**C# shaders**: .NET CIL to HLSL/GLSL compilation to write any kind of shader in plain C# (or any other .NET language!). (Coming in v0.3.0, alpha out now!)
127
137
-**WebAssembly and Mobile Support**: Any simulations you write will run on a web browser or mobile device, no code changes needed.
0 commit comments