5d1bc9251c
Move part of Sprite deserialization hook to component init and optimize RSI preloading ( #6911 )
...
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com >
2026-08-08 15:44:52 +10:00
metalgearsloth and GitHub
7f21c749b0
Add multiple post-shader support ( #6817 )
2026-08-01 16:56:24 +10:00
Whatstone and GitHub
7c7d1ae451
Cleanup: Warning resolution/suppression ( #6721 )
2026-07-16 19:43:54 +10:00
Whatstone and GitHub
dfe1d4ef8a
Cleanup: ProtoMan Part 3 - remove redundant EntitySystem IPrototypeManager, IComponentFactory instances ( #6693 )
2026-06-30 17:12:55 +10:00
83c2a1be11
[Dependency] source generator part 2 ( #6550 )
...
* [Dependency] source generator
No more reflection, no more codegen at runtime
Also various changes to Roslyn helpers to make this easier to write.
Requires all types with dependencies to be partial and not have readonly dependency fields. An analyzer enforces this at warning level, the previous injection strategies have remained in the code *for now* as a fallback.
No fallback is available for [field: Dependency] properties, due to a Roslyn bug.
Code Fixes exist. We love Roslyn
* Apply dependencies generator changes to all code
* Release notes
* Preprocessor got hands
* Handle nullable dependencies
These are bad but gotta deal with it.
* Apply suggestions from code review
Co-authored-by: Moony <moony@hellomouse.net >
* Fine, let's not use collection expressions
---------
Co-authored-by: Moony <moony@hellomouse.net >
2026-05-08 12:38:33 +02:00
d894ef70ef
Misc SpriteSystem fixes ( #6001 )
...
* Move GetPrototypeTextures to SpriteSystem
* Fix tests
* Fix #6002
* release notes
---------
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com >
2025-06-09 18:59:37 +10:00
15d5b9aa02
Move parts of SpriteComponent to SpriteSystem ( #5602 )
...
* Partial sprite component ECS
* release notes
* tests
* Why
* SetSnapCardinals
* NoRotation
* DirectionOverride
* This is why I love distinct overrides that take in object
* LayerSetData
* ISerializationHooks continue to haunt me
* Relocate SetShader
* LayerSetSprite
* LayerSetTexture
* yipeeeee
* LayerSetRsi
* Remove GetFallbackState
* LayerSet Scale,Rotation,Color,Visible
* Fix LayerSetRsi
* LayerSetOffset
* LayerSetDirOffset
* Add overrides that take in a Layer
* LayerSetAnimationTime
* LayerSetRenderingStrategy
* Reduce Resolves, Add Layer.Index
* Access
* Try fix NREs
* Asserts
* LayerGetState
* Cleanup
* Merge helper partial classes
* partial rendering
* GetLayerDirectionCount
* Cache local bounds
* RenderLayer
* RefreshCachedState
* RoundToCardinalAngle
* Fix the pr
* Fix debug assert
---------
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com >
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com >
2025-05-10 21:56:53 +10:00
Leon Friedrich and GitHub
cf2d6a1dbf
Make unshaded sprite layers not require shader/texture changes. ( #5248 )
...
* Make unshaded sprite layers not require shader/texture changes.
* Always sample texture
* revert some variable name changes
* Use color SIMD
2025-03-24 02:37:04 +01:00
metalgearsloth and GitHub
4d265b2210
Add methods to get entity sprite position ( #5381 )
...
* Add methods to get entity sprite position
No easy way to get this in world-terms and I want a control to track it.
* invalid
2024-08-25 21:24:37 +10:00
metalgearsloth and GitHub
35881d7a6a
Add SpriteSystem.IsVisible ( #5283 )
...
So content doesn't need to manually check in the rare case we update this.
2024-07-09 22:37:35 +02:00
metalgearsloth and GitHub
2a49c2d9b8
Add loop support for SpriteSystem.GetFrame ( #5265 )
...
For Ftl I just want it played once.
2024-07-01 15:50:49 +10:00
Pieter-Jan Briers
3a55118143
Replace CVar OnValueChanged in systems with Subs.CVar
2024-02-11 13:29:27 +01:00
Leon Friedrich and GitHub
1bdd82b0bf
Raise ECS event on prototype-reload ( #4724 )
...
* Raise system event on prototype-reload
* Oops
2023-12-17 08:30:53 +11:00
metalgearsloth and GitHub
170d192791
Revert audio rework ( #4554 )
2023-11-07 09:34:09 +11:00
metalgearsloth and GitHub
d75dbc901f
Audio rework ( #4421 )
2023-10-29 14:58:19 +11:00
metalgearsloth and GitHub
9d55d77e48
Sprite GetFrame ( #4528 )
2023-10-29 04:21:52 +11:00
metalgearsloth and GitHub
7d1ad527d9
Replace Robust Vector2 with System.Numerics ( #4092 )
2023-07-08 14:08:26 +10:00
metalgearsloth and GitHub
23a40e58e4
Pause animations on ent pause ( #4117 )
2023-07-01 22:02:33 +10:00
Pieter-Jan Briers
1da229549d
Remove some Logger usages from client.
...
About all I could muster before I got bored.
2023-06-10 00:19:09 +02:00
Leon Friedrich and GitHub
0e7863650b
IconComponent cleanup & linter inheritance ( #4070 )
2023-05-19 17:12:36 +10:00
Leon Friedrich and GitHub
d52cbca984
Fix multi viewport sprite update ( #3773 )
2023-02-14 00:21:52 +11:00
metalgearsloth and GitHub
2e7193b11e
Fix sprite sync desync ( #3771 )
2023-02-13 04:36:55 +11:00
metalgearsloth and GitHub
0dbd2e139c
Synchronised sprite animations ( #3672 )
2023-02-12 16:37:12 +11:00
Leon Friedrich and GitHub
d79ad9717b
Alternative SpriteComponent.CopyFrom() fix ( #3705 )
2023-01-16 17:34:38 +11:00
metalgearsloth and GitHub
9528d6dc8f
Remove ISpriteComponent ( #3692 )
2023-01-15 13:38:46 +11:00
Leon Friedrich and GitHub
054a908efd
Generalize component trees ( #3598 )
2022-12-27 13:33:46 +11:00
metalgearsloth and GitHub
f13a066bdd
Use static lambdas for sprites / lights ( #3335 )
2022-10-27 13:52:04 +11:00
Leon Friedrich and GitHub
363e28561c
Sprite direction bias ( #3232 )
...
* Sprite direction bias
* cvar
2022-09-06 21:54:07 -07:00
Leon Friedrich and GitHub
7a81c7f64a
Misc Shader changes ( #2974 )
2022-07-19 00:32:58 +02:00
Leon Friedrich and GitHub
386b0bc232
Cache TransformComponent in trees ( #2904 )
...
* Cache TransformComponent in trees
* add deleted check.
2022-06-05 00:25:00 +02:00
metalgearsloth and GitHub
c0525f710f
Sprite subscription shutdown ( #2688 )
2022-04-05 19:45:23 +10:00
Vera Aguilera Puerto and GitHub
d3672807d2
Improves SpriteSystem.GetPrototypeIcon method significantly. ( #2680 )
2022-04-05 16:36:16 +10:00
metalgearsloth
7692ff736b
Some more ECS stuff
...
- Proxy methods on EntityManager
- Transform system stuff
2022-02-14 18:24:52 +11:00
de4d255841
Analyzer to enforce classes to be either [Virtual], abstract, or sealed. ( #2469 )
...
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com >
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com >
2022-02-05 19:31:58 +01:00
metalgearsloth
f9573530a8
Nuke entitylookup to get it merged
2022-01-31 17:30:53 +11:00
Paul
76b2909116
removes resolves
2021-12-08 00:09:41 +01:00
Vera Aguilera Puerto
7a06db60cf
Inline UID
2021-12-03 15:53:10 +01:00
Vera Aguilera Puerto
94e6886a85
Inline Transform
2021-12-03 14:20:35 +01:00
Alex Evgrashin and GitHub
341c279265
Bandaid sprite animation in SpriteView ( #2181 )
2021-11-02 19:50:29 +01:00
metalgearsloth
8b462cc099
Remove 2 unused field dependencies
2021-09-21 00:18:33 +10:00
metalgearsloth and GitHub
209eb5fea0
Fix 90% of grid rotation bugs ( #2003 )
...
* View box2rotated
* Changes
* Stash someday
* Sync
* Grid rotation in a commit
* SIMD comment
* Minor TryFindGridAt optimisation
* More fixes
* Optimise rays a tad
* Reduce code duplication
* Fix anchoring
* More fixes woopsie
* Eye matching parent
* Centre of mass stuffsies
* Remove TODO
* Add TODO
* Revert anchor crash
* Fix master merge-in whoopsie
* Fixes
* Woops
* Fixed viewport transform
* Re-fix rendering
2021-09-16 12:59:16 +10:00
Vera Aguilera Puerto
b7c8452285
Use EntitySystem dependencies in a few places that cached systems before.
2021-07-26 12:57:39 +02:00
metalgearsloth and GitHub
d02d186a2f
Fix light pop-in 2 ( #1798 )
...
* Fix light pop-in
Doh
* Uniqueness
* Refactor to be less bad
* Better perf
* Fix perf problems
* Hide debug commands under preprocessor
Can't imagine anyone using this during live-game.
* CVars
2021-06-29 22:29:47 +10:00
Pieter-Jan Briers
db0e49f5dd
Defer SpriteComponent.IsInert updates.
...
Prevents O(n^2) behavior in many cases.
2021-06-20 17:57:45 +02:00
metalgearsloth and GitHub
6c44dd9665
RenderingTreeSystem cleanup ( #1759 )
...
* RenderingTreeSystem cleanup
10% less bad but 100% still boilerplate
* Slight changies
* Even better
* New shit just got made
* Apply revews
2021-05-20 18:57:29 +10:00
metalgearsloth and GitHub
6cf5fdc5d6
Grid-trees for rendering ( #1666 )
2021-04-02 20:25:16 +11:00
Acruid and GitHub
2183cd7ca1
Massive Namespace Cleanup ( #1544 )
...
* Removed the Interfaces folder.
* All objects inside the GameObjects subfolders are now in the GameObjects namespace.
* Added a Resharper DotSettings file to mark the GameObjects subfolders as not providing namespaces.
* Simplified Robust.client.Graphics namespace.
* Automated remove redundant using statements.
2021-02-10 23:27:19 -08:00
Pieter-Jan Briers
d134f31d66
Re-implement DynamicTree<T> on top of B2DynamicTree<T>.
2020-09-24 11:51:50 +02:00
Pieter-Jan Briers
87a57c18ca
Fix exception on reconnect.
2020-07-03 16:58:07 +02:00
Pieter-Jan Briers
daa5a34413
Guess we're doing render trees for lights and occluders aswell.
2020-06-29 20:23:08 +02:00