Commit Graph
110 Commits
Author SHA1 Message Date
0a4c0d9cdd Cache PostShader render targets in Clyde (#6657)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2026-08-01 20:16:41 +10:00
metalgearslothandGitHub 7f21c749b0 Add multiple post-shader support (#6817) 2026-08-01 16:56:24 +10:00
metalgearslothandGitHub bc55ae00d6 Box2 + Box2Rotated performance and fixes (#6668) 2026-08-01 15:30:41 +10:00
rebaserHEADandGitHub 7089bd7a69 Tracy: Add entity rendering profiling zones (#6714) 2026-07-18 13:08:04 +10:00
f95a16cf2e Always clean up render handle state after overlay draws (#6508)
* Always clean up render handle state after overlay draws

* i just forgot to commit that part i guess

---------

Co-authored-by: mirrorcult <mirrorcult@pm.me>
2026-05-05 12:44:42 +02:00
Richard Van TasselandGitHub 93d14d55c7 Let viewport clear when eye is missing (#6379)
* Adds option to viewport to allow render target clearing if eye is missing

* on->when and add to IClydeViewport

* add to ClydeHeadless
2026-01-18 21:17:31 +01:00
e49515956a Add a basic loading screen! (#6003)
* Added basic loading screen

* Make it look better!

* I forgor xD

* Fix test fails

* Add comment

* Removed unused import

* Only write to file if the number of sections changed

* Servers can now have their own settings

* Minor optionzation and rare colors

* Remove some of the cvars

* debug only loading messages

* Added a few more steps

* Only one section at a time

* nullable section name

* Lock out functions if finished

* Get rid of saving the ccvar

* Cleanup

* Forgot!

* A few tweaks

* Disable vsync

* remove colors

* remove outdated vsync functions

* Silly me xD

* What I get for trying to be clever... ;(

* Better seconds display

* Simplify drawing logic + it looks better

* Type does not need to be partial

* Make interface to expose to content

* Use correct define to gate showing debug info

Should be TOOLS instead of DEBUG

* Use appropriate exception type in BeginLoadingSection

* Fix exception when closing window during loading screen

Would try to stop the main loop before it exists.

* Rename CVars, put debug info behind CVar instead of conditional compilation.

* Add to RELEASE-NOTES.md

* Add UI scaling support

* Make ILoadingScreenManager fully internal

Didn't realize content can't touch it as it'd break the total amount of sections

* Don't re-enable vsync manually, GameController does it at the end of init

* Add command to show top load time usage.

* Improve verbosity of debug time tracking

More steps and some steps named better

---------

Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com>
2025-10-30 00:38:59 +01:00
PJB3005 60d26be139 Add devwindow tab listing render targets
Copy TableContainer from content into engine. It's internal though.

Add various stuff to Clyde to allow the UI to access it. Includes a new IClydeInternal.RenderNow() which seems to not completely explode in my face.
2025-09-13 01:21:22 +02: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 FriedrichandGitHub 4987c324d9 Fix bad debug assert (#5826) 2025-04-13 20:50:46 +10:00
Leon FriedrichandGitHub 2e0735b92f Fix NRE in screen-space overlays (#5823)
* Fix pre-init screen-space overlays

* Debug asserts
2025-04-13 16:21:02 +10:00
metalgearslothandGitHub 2ee7c35fd3 Don't throw on invalid MapUids for overlays (#5740) 2025-03-12 20:16:13 +11:00
metalgearslothandGitHub ea1cc5e446 Planet lighting pre-reqs (#5490)
* Add another lookup overload

* Fix RenderInRenderTarget

See the linked issue for what happens.

* Also this one

* stuff

* Fix stencilling

* fixes

* mix blend

* fix

* blur fixes

* Tile flag

* Minor tweak

* Fixes

* Render state fixes

* Fixes

* Fix stupidity

* More state render bug fixes

* MapUid on overlay draw

* Remove blur comment

* Fixes

* Fixes

* Remove

* Engine vibe
2025-02-16 19:29:32 +11:00
acc7bf7595 Add support for overlays to draw controls (#5223)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2025-01-29 22:48:11 +11:00
Tornado TechandGitHub 2a882b5555 Moved Overlay sorting to OverlayManager (#5614)
* Moved Overlay sorting to OverlayManager

* Changed Add to AddRange
2025-01-17 17:47:13 +01:00
Pieter-Jan Briers cf230b3454 Warning fixes centered around Clyde
Pulling entity systems into direct fields in Clyde to make it now painful. This required adding an event to ClientEntityManager when these become available, as they are only available when the client is in a server/single player.
2024-07-23 17:49:56 +02:00
Pieter-Jan BriersandGitHub 05cdb99252 Warning fixes around IMapManager.GetMapEntityId (#5298)
* Add MapSystem.GetMapOrInvalid

This is effectively the same exact behavior as IMapManager.GetMapEntityId. Adding this so I don't have to consider whether warning fixes using MapSystem.GetMap() instead would change behavior.

* Warning fixes around IMapManager.GetMapEntityId

* Fix tests
2024-07-13 15:27:32 +10:00
eoineoineoinandGitHub 56c30edf04 Replace Matrix3 with System.Numerics.Matrix3x2 (#5078)
* Delete Matrix3. Replace with System.Numerics.Matrix3x2

* Feedback

* release notes
2024-06-02 14:08:47 +10:00
Leon FriedrichandGitHub 85f74c3ba3 Fix GetWorldViewbounds() and GetWorldViewport() (#5060)
* Fix GetWorldViewbounds() and GetWorldViewport()

* Remove some uses of `CurrentMap` and `CurrentEye`
2024-05-19 10:47:04 +10:00
Leon FriedrichandGitHub d5c4981648 Partial MapManager refactor (#5042)
* MapManager rejig

* Update Tests

* A
2024-04-18 14:05:02 +10:00
Pieter-Jan Briers 958b5dd06d Fix MapComponent.LightingEnabled funky FOV.
There's two separate bool checks, one wasn't turned off, meaning the FOV kept being rendered but not updated.
2024-03-29 16:54:27 +01:00
metalgearslothandGitHub 04b6d60d76 Fix TileEdgeOverlay drawing over grids (#4698) 2023-12-12 20:13:20 +11:00
Leon FriedrichandGitHub ceb205ad52 Allow per-eye lighting toggling. (#4569) 2023-11-13 05:30:00 +11:00
DrSmugleafandGitHub b737ecf9b3 Add generic EntityUid, remove some usages of .Owner (#4498) 2023-10-19 12:23:48 -07:00
metalgearslothandGitHub c4d6690a71 Remove SharedEyeComponent (#4309) 2023-09-11 16:15:08 +10:00
metalgearslothandGitHub 7d1ad527d9 Replace Robust Vector2 with System.Numerics (#4092) 2023-07-08 14:08:26 +10:00
Leon FriedrichandGitHub 5d9d47a2a5 Fix screen overlay bug (#4010) 2023-05-07 09:39:16 +10:00
Leon FriedrichandGitHub 4a65111dda Make screen-space overlays use BeforeDraw() (#3997) 2023-05-02 10:36:20 +10:00
Leon FriedrichandGitHub 4c282b00d1 Fix error placement overlay error + add overlay exception tolerance (#3980) 2023-04-30 03:44:42 +10:00
Leon FriedrichandGitHub d52cbca984 Fix multi viewport sprite update (#3773) 2023-02-14 00:21:52 +11:00
Leon FriedrichandGitHub 10dea3f3a3 Modify light rendering cvars (#3765) 2023-02-13 03:51:45 +11:00
27e0c22fe2 Somewhat improve sprite processing (#3587)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-12-26 10:48:08 +11:00
metalgearslothandGitHub f13a066bdd Use static lambdas for sprites / lights (#3335) 2022-10-27 13:52:04 +11:00
Leon FriedrichandGitHub a67b22cce8 Add get-matrix functions to IViewportControl (#3264) 2022-09-21 20:42:17 +10:00
Pieter-Jan Briers 49631867f4 Fix sRGB conversion in WindowRoot background color. 2022-08-15 16:51:23 +02:00
Leon FriedrichandGitHub fc10adfb03 Fix a WorldSpaceEntities overlay bug (#3074) 2022-07-24 19:10:07 -07:00
Leon FriedrichandGitHub 7a81c7f64a Misc Shader changes (#2974) 2022-07-19 00:32:58 +02:00
Leon FriedrichandGitHub b8cb9e6b1d Add Overlay.BeforeDraw() (#2958) 2022-06-20 06:28:09 +10:00
Leon FriedrichandGitHub 2bdea420ae Misc rendering changes (#2948)
* Misc rendering changes

* More tiny changes
2022-06-14 19:24:27 +10:00
Leon FriedrichandGitHub 386b0bc232 Cache TransformComponent in trees (#2904)
* Cache TransformComponent in trees

* add deleted check.
2022-06-05 00:25:00 +02:00
Leon FriedrichandGitHub e32ee1a58e Reuse post-shader render target (#2882) 2022-05-29 01:02:19 +02:00
Leon FriedrichandGitHub 6a86fcdeeb Fix WorldSpace overlay drawing (#2878) 2022-05-28 14:52:01 +02:00
Leon FriedrichandGitHub 52ffb97369 Change overlay screen texture wrapping (#2749) 2022-05-15 13:20:52 +10:00
41e9d9b08b Client profiling system (#2783)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-05-14 15:08:46 +10:00
metalgearslothandGitHub 09fd47c421 Don't store contained entities on entitylookup (#2662) 2022-04-06 19:31:34 +10:00
metalgearslothandGitHub eac536cffe overlay allocs (#2642) 2022-03-26 12:48:11 +01:00
58defed1d2 Fix InteractionOutline 2: Electric boogaloo (#2511)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-02-16 18:32:40 +11:00
metalgearsloth f9573530a8 Nuke entitylookup to get it merged 2022-01-31 17:30:53 +11:00
Pieter-Jan Briers ae77ee3df4 Remove SS14 logo/icon/splash/window title branding. Make it all configurable with manifest.yml 2021-12-30 17:22:21 +01:00
Pieter-Jan Briers 9896697919 Viewports have configurable clear color, default to black. 2021-12-29 20:11:08 +01:00