Releases: Redninja106/simulationframework
Releases · Redninja106/simulationframework
SimulationFramework V3 alpha 12
many shader bugfixes
SimulationFramework V3 alpha 11
- Added support for multidimensional arrays in shaders (up to 4 dimensions)
- Added support for
ImmutableArray<T>
in shaders - Added explicit array synchronization methods (via
Graphics.SyncArray
andGraphics.UploadArray
) - Added
ThreadGroupSize
attribute - Added documentation for some new v3 apis
Gradient
now usesImmutableArray<T>
- Internal compute shader and shader buffer handling improvements
- Fixed a shader invalid subgraph error when using chained && or || expressions in conditional statements
- Fixed a shader buffer binding error when using multiple buffers
- Updated Silk.NET and ImGui.NET to the latest available versions
SimulationFramework V3 alpha 10
- internal opengl bindings improvements
- fixed a bug where opengl functions that weren't required were being loaded
- shader compiler bugfixes
0.3.0-alpha.9
- fixed control flow related shader compilation errors
- added
SoundPlayback.PitchMultiplier
- fix bug with line rendering using
canvas.Fill()
- fixed Polygon.IsSelfIntersecting returning incorrect values
- fixed renderer bug when rendering large amounts of shapes
0.3.0-alpha.8
- readded ICanvas.DrawLines()
- many shader control flow bugfixes
- fixed drawing lines after calling
ICanvas.Fill
not working properly (#74) - other small bugfixes/improvements
0.3.0-alpha.7
- Multiple Shader bug fixes
- Audio bug fixes
- ShaderIntrinsics.AsBool and ShaderIntrinsics.AsInt are now implemented
v0.3.0-alpha.5
Changes:
- instanced rendering
- mipmaps
- huge renderer improvements
- bigfixes
v0.3.0-alpha.4
- Shaders now support goto-like statements (break, continue, early returns)
- Started a renderer rewrite
- Added
IMask
:- allows per-pixel masking when rendering
- can be written to and read from directly or filled in using a canvas (see
IMask[int x, int y]
andICanvas.WriteMask
) - Created using
Graphics.CreateMask
- Added
IDepthMask
:- does everything a regular mask does, plus depth testing (useful in 3d rendering)
- pass to
ICanvas.Mask(IMask)
to enable depth test. TheIDepthMask.Comparison
property configures the comparison used - pass to
ICanvas.WriteMask(IMask)
to enable depth write. - don't forget to call
IDepthMask.Clear(1f)
each frame before rendering!
- Started the
IGeometry
api:- an
IGeometry
is a read-only shape or model - can be created via
Graphics.CreateGeometry
and rendered usingICanvas.DrawGeometry
- an
- renamed
TileMode
toWrapMode
ITexture.GetPixel
andITexture.SetPixel
are now obselete in favor of the new texture indexerITexture[int x, int y]
- Fixed many, many bugs
v0.3.0-alpha.3
Added:
- Custom vertex shaders:
DrawTriangles<T>
(draws triangles with a custom vertex type)ICanvas.Fill()
overloads which accept aVertexShader
(see the RenderCube example)
- Compute shaders (via
ComputeShader
andGraphics.Dispatch
) - Vertex shaders accept custom vertex data via a field with a
VertexDataAttribute
- Vertex shaders can pass values to the canvas shader (fragment shader) via a field with a
VertexShaderOutputAttribute
Fixed:
- Reimplemented gradients as canvas shaders
- Shader array alignment issues
- Various other bugs and crashes
Known Issues:
- anti aliasing doesn't work when rendering to a texture
- jump statements cause shader compilation errors (early returns, continue, break, etc)
- Texture saving is not yet supported
- Self-Intersecting polygons are not triangulated properly
v0.3.0-alpha.2
Changes:
- Various Compiler bug fixes
- Added missing shader intrinsics
- Added Rounded Rectangle Rendering
- Fixed jagged edges on large circles
- Many, many more bug fixes