Commit Graph

84 Commits

Author SHA1 Message Date
b3c1db3145 Show fallback glyph if its not present in the font, add Japanese font to TestGame. 2025-06-29 16:21:34 +02:00
9bc9810c8f WIP: use kerning for text measuring. 2025-06-29 15:53:29 +02:00
0ec4e45c38 WIP: measure text in Font. 2025-06-29 15:10:37 +02:00
90fe38b017 Remove resizing of FillContainer in TestGame. 2025-06-25 21:41:24 +02:00
8a1e359c22 WIP: GridSet, add Vector2.Snapped extension method. 2025-06-25 19:50:03 +02:00
64d3dba42d Add MarginContainer, mark parent elements dirty when child gets marked dirty too. 2025-06-25 00:35:35 +02:00
5bf052db96 Rename Frame to FillContainer. 2025-06-24 23:48:31 +02:00
389a73cf24 Don't reassign Size in Container if the new size is identical to current size in RecalculateSizes. 2025-06-24 23:44:38 +02:00
d44341974f Add dirty UI element visualization to UISystem, fix Frame being constantly updated. 2025-06-24 23:29:26 +02:00
03668849bc Fix any remaining bugs with anchor positioning system, use LocalPosition for UIElement, and make containers use that for arrangement. 2025-06-24 19:45:18 +02:00
95ae2de7ac Apply an anchor offset for Anchor.TopRight too. 2025-06-22 15:56:05 +02:00
683656dee8 Initial implementation of UI anchors, update TestGame. 2025-06-21 22:23:19 +02:00
7e86898e1a WIP: UI input handling. 2025-06-20 22:24:30 +02:00
f0c721bb0f Add ConfineToChildren to Container, containers will use MinimumRect as a size if a given size is smaller than minimum, update documentation for Container. 2025-06-20 20:08:17 +02:00
bc95fff4a3 Merge FlexContainer, WIP dynamic container resizing. 2025-06-20 19:46:42 +02:00
a9a8113dd9 Add RemoveChild to IParentableElement, only resize Container if children overflow it. 2025-06-20 19:14:29 +02:00
3154b3fa10 Add debug rectangle size rendering, auto-resize containers to fit all children. 2025-06-20 18:57:36 +02:00
3460c124b8 Add GridContainer. 2025-06-19 15:13:25 +02:00
6affded730 Update arrangement logic for containers, remove position property from Rect, add Size property to IElement. 2025-06-19 15:08:23 +02:00
e499691714 Add container nesting. 2025-06-19 14:50:05 +02:00
806c9cc1d4 WIP: UI system, containers and widgets. 2025-06-19 14:30:20 +02:00
a450ed9819 Update TODO, remove audio system from TestGame. 2025-06-19 13:28:10 +02:00
15214c9e21 WIP: OpenAL audio system. 2025-06-06 22:40:16 +02:00
a806e3b764 Remove audio, will make it as separate packages instead. 2024-10-29 01:17:55 +01:00
e51d28ce89 WIP: SoLoud audio system, make Sound be in 16-bit PCM. 2024-10-28 23:13:14 +01:00
64d72cc053 InputSystem optimizations and changes. 2024-10-21 19:18:37 +02:00
20036be50f Update TestGame project to build as a WinExe project. 2024-10-21 17:54:20 +02:00
fdcf29d6e0 Initial virtual file system implementation. 2024-10-21 01:26:22 +02:00
fb1ffa26f6 Upgrade Voile and TestGame to .NET 8. 2024-10-17 22:37:55 +02:00
ae0a68c332 Update Game, add IGame. 2024-10-17 22:33:21 +02:00
c21e275b6d Update TestGame, add emitter removing, update TODO 2024-10-17 02:20:47 +02:00
df2c446501 BaseGame with fixed timestep. 2024-10-17 02:12:52 +02:00
775b973eb2 Finalize ParticleSystem, add angular velocity, multiple emitters, GetBool for IDataReader, use Lerp in LerpColor. 2024-10-17 00:50:49 +02:00
7c7c61fd56 Use bytes for internal RGBA components of Color, iterate particles sequentially in ParticleEmitters, increase limit for CPU particles, reduce size of Particle struct. 2024-10-16 00:28:39 +02:00
446149c80d Performance improvements to ParticleSystem. 2024-10-15 23:09:10 +02:00
40ff986312 WIP: Use SoA in ParticleSystem 2024-10-15 22:52:20 +02:00
7dff8076b9 Use ResourceRefs for RenderSystem, add IReloadableSystem, remove UI package. 2024-10-15 21:51:26 +02:00
ac43340866 Fix null warnings in StandardRenderSystem, remove SceneGraph module, temporarily disable nullables in TestGame. 2024-10-15 20:11:06 +02:00
d5601c9dea TomlDataReader, documentation updates, move ParticleSystem to Voile.Systems.Particles. 2024-10-15 19:56:30 +02:00
ecd752e961 Add blend modes to renderer. 2024-10-15 17:10:48 +02:00
851abd7c90 WIP: ResourceManager refactor, hot reloading using ResourceRef, API changes. 2024-10-15 02:44:12 +02:00
a1d282908a Add ParticleSystem, fix incorrect Argb conversion in Color, remove byte casting in LerpColor, update TestGame to demostrate particle system. 2024-10-14 22:05:47 +02:00
e676e3d13d Update TestGame. 2024-10-14 20:02:01 +02:00
9397073901 Add DocFX documentation. 2024-10-14 20:01:01 +02:00
f68f8f4b02 Add and implement interfaces for systems (ISystem, IUpdatableSystem, etc.), move Color to Utils, rename Handlers/Renderers/Backends to System, move input related classes to an Input subfolder. 2024-10-14 17:29:52 +02:00
06814a678e SoundInstance changes, small updates in Sound and Texture2d loaders. 2024-08-22 22:07:27 +02:00
912de8a5ef Update TestGame. 2024-08-22 21:48:50 +02:00
03e7a4a90c Make most subsystems available as protected properties in base Game class, implement IDisposable on systems. 2024-08-22 21:47:57 +02:00
c61a12d170 Make ResourceManager a part of Game. 2024-08-22 20:41:31 +02:00
3c9019e37a Update TestGame 2024-08-22 20:22:01 +02:00