Aetheria/Assets/Shaders
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Meta Vens a935b965c9 Land the six shield-panel sources, ported to built-in and compiling
Cut 1 of docs/shield-panel-cut.md: land ShieldPanel.cs, ShieldPanel.shader,
ShieldSim.compute, ShieldCommon.hlsl, TilingBuilder.cs and Tilings.cs under
Assets/Shaders/Compute/ShieldField/, alongside Lightning/ and Slime/.

Port (URP -> built-in, three substitutions per the map's §2.1 probe):
- drop the UniversalPipeline SubShader tag, add IgnoreProjector
- swap the URP Core.hlsl include for UnityCG.cginc
- TransformWorldToHClip -> UnityWorldToClipPos (3 call sites)

Drawing collapse (D2/D5): RenderParams has no shaderPass member in
6000.3.24f1, and a multi-pass material draws every SubShader pass from one
indirect call regardless, so the three per-pass args buffers and draw calls
collapse to one args buffer sized to the widest pass (Outline) and one
Graphics.RenderPrimitivesIndirect call. Deleted: argsOutline, argsConduit,
drawFill/drawOutline/drawConduits and their branches.

Also deleted: ShieldPanelTester (the click harness the operator ruled
against; it also can't run — activeInputHandler is New Input System only)
and [ExecuteAlways] (incompatible with a pool per D13; Rebuild stays on the
context menu).

Defects fixed:
- D1: TilingBuilder.cs's inner `dist` shadowed the outer one (CS0136);
  renamed to nbrDist.
- D3: CellStatic was 15 floats against a declared Stride of 16; added pad2
  on both the HLSL and C# sides.
- D4: `centroid` is reserved in the compute compiler; renamed the
  ShieldCommon.hlsl field to `center` (kept the C# field name as-is; it's
  not reserved there and the two sides don't need matching names, only
  matching layout).
- D6: fixed the comment on _BreakBudget — it's two elements (count + cap),
  not the "single element" the old comment claimed.
- D12: the two-element uint[] Update() allocated every frame is now a
  cached field, cheaper still under a pool of many live panels.
- D18 (R5 — operator ruling, not deferred to a follow-up): Penrose ignored
  panelRadius entirely — a fixed authored iteration count meant the tiling
  was just uniformly rescaled, not resampled, so cell count never grew with
  the panel. Every other tiling here uses cellSize to hold local cell size
  constant while radius extends coverage; Penrose now derives its iteration
  count the same way (each substitution divides edge length by phi, solved
  for the count that brings a unit edge to ~cellSize once scaled to
  radius). This retires the now-meaningless `penroseIterations` field and
  the `subdivisions` parameter it threaded through Tilings.Generate.
- Also removed a dead `idx` counter in Tilings.Voronoi (D8's mention of
  dead code; the Vector2.zero sentinel ambiguity itself is unfixed, same as
  D7/D19 — Voronoi and TriHex stay recorded defects, not fixed, per R5).

Not fixed here, per the map: D7 (Voronoi is unusably slow) and D19 (TriHex
has zero dual edges) are recorded, not fixed. D9/D10 (fracture tuning) are
Cut 5. D17 (growth gate blocks the spawning hit) and D20 (_PanelSpawnTime
hardcoded to 0) are Cut 3.

Repo-specific fix not in the map: Assets/Scripts/UI/ContextMenu.cs defines
a global `ContextMenu` MonoBehaviour that shadows UnityEngine.ContextMenu,
so `[ContextMenu("Rebuild")]` doesn't compile here (CS0616) even though it
did in the map's throwaway probe project. Used the fully-qualified
`[UnityEngine.ContextMenu(...)]` instead.

Adds Assets/Scripts/Editor/ShieldPanelCut1Verify.cs, a batchmode probe (no
NUnit path exists per the map's Q7 — Tests.asmdef can't see
Assembly-CSharp): asserts zero shader/compute compile errors and that
Penrose cell count actually scales with panelRadius (D18). Also adds
tests/mutation_tests_shield_panel_cut1.py, which mutates the D18 fix, the
D4 fix, and the shaderPass deletion in turn and asserts the probe goes red
each time, restoring the source after each case (own file per the
convention mutation_tests_addressables_cut.py established, so as not to
touch item-provenance's or the addressables cut's harnesses).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-18 06:08:04 +02:00
..
Brushes Restore the stable legacy Unity project 2026-08-10 14:57:50 +01:00
Compute Land the six shield-panel sources, ported to built-in and compiling 2026-09-18 06:08:04 +02:00
CustomDoF Restore the stable legacy Unity project 2026-08-10 14:57:50 +01:00
Raymarching Restore the stable legacy Unity project 2026-08-10 14:57:50 +01:00
StableFluids Keep Fluid's int2 alias, pointed at CultMath 2026-09-14 18:03:32 +02:00
Terrain Unity 6 Upgrade + Solid Gravity Surface 2025-07-10 21:05:54 +01:00
AdditiveUI.shader Title Screen 2020-03-26 02:49:09 +00:00
AdditiveUI.shader.meta Title Screen 2020-03-26 02:49:09 +00:00
AdditiveUIDetail.shader Menu Screen + UI Restyle 2020-12-14 02:56:35 +00:00
AdditiveUIDetail.shader.meta Menu Screen + UI Restyle 2020-12-14 02:56:35 +00:00
AdditiveUIScreenSpaceDetail.shader Energy & Heat 2020-12-27 22:18:22 +00:00
AdditiveUIScreenSpaceDetail.shader.meta Energy & Heat 2020-12-27 22:18:22 +00:00
Asteroid.shader Boundless 2022-07-21 21:40:44 +01:00
Asteroid.shader.meta Performance Optimization 2022-07-19 18:55:17 +01:00
Background.shader Weapos Rejiggered 2021-01-31 03:52:32 +00:00
Background.shader.meta Fancy Background Shader 2020-03-25 02:22:44 +00:00
Brushes.meta Initial ARPG Port 2020-11-27 22:47:33 +00:00
Clouds.shader Weapos Rejiggered 2021-01-31 03:52:32 +00:00
Clouds.shader.meta Generating and Displaying Zones 2020-03-29 04:19:24 +01:00
Compute.meta Stardust 2020-12-04 01:53:23 +00:00
CustomDoF.meta In Game Input Screen 2021-05-08 07:35:16 +01:00
Dither Functions.cginc Playability 2022-08-08 22:43:55 +01:00
Dither Functions.cginc.meta Initial ARPG Port 2020-11-27 22:47:33 +00:00
DitheredParticles.shader Fix Dithered Particle Shader 2022-07-13 06:10:54 +01:00
DitheredParticles.shader.meta Initial ARPG Port 2020-11-27 22:47:33 +00:00
GalaxyMap.shader Game Loop Galaxy Integration 2021-03-15 11:40:46 +00:00
GalaxyMap.shader.meta Old Aetheria Code 2020-03-09 01:28:55 +00:00
GaussianBlurFilter.shader Hit Detection 2021-01-08 12:44:10 +00:00
GaussianBlurFilter.shader.meta Hit Detection 2021-01-08 12:44:10 +00:00
GlowFade.shader Boundless 2022-07-21 21:40:44 +01:00
GlowFade.shader.meta Combat & Visibility & Collisions 2021-02-26 19:01:47 +00:00
Influence.shader Main Menu 2021-03-13 03:23:58 +00:00
Influence.shader.meta Sector Map: Areas of Influence 2021-03-12 08:11:55 +00:00
InfluenceUI.shader Demo Hotfixes 2021-05-02 20:59:45 +01:00
InfluenceUI.shader.meta Demo Hotfixes 2021-05-02 20:59:45 +01:00
Isolines.shader First Flight 2020-12-22 03:13:43 +00:00
Isolines.shader.meta Copy Aetheria Code 2020-02-27 18:51:07 +00:00
IsolinesUI.shader Playability 2022-08-08 22:43:55 +01:00
IsolinesUI.shader.meta Menu Screen + UI Restyle 2020-12-14 02:56:35 +00:00
MaskedUIBlur.shader Menu Screen + UI Restyle 2020-12-14 02:56:35 +00:00
MaskedUIBlur.shader.meta Database Inspector Features 2020-12-12 00:02:00 +00:00
MaskedWorldSpaceAdditiveUI.shader Game Loop Galaxy Integration 2021-03-15 11:40:46 +00:00
MaskedWorldSpaceAdditiveUI.shader.meta Menu Screen + UI Restyle 2020-12-14 02:56:35 +00:00
MaskedWorldSpaceUI.shader Game Loop Galaxy Integration 2021-03-15 11:40:46 +00:00
MaskedWorldSpaceUI.shader.meta Menu Screen + UI Restyle 2020-12-14 02:56:35 +00:00
MirrorField.shader Shields 2025-01-30 01:58:05 +00:00
MirrorField.shader.meta Playability 2022-08-08 22:43:55 +01:00
PackFloat.cginc NEW CLOUDS NEW CLOUDS NEW CLOUDS WHOOO 2022-07-10 02:53:09 +01:00
PackFloat.cginc.meta NEW CLOUDS NEW CLOUDS NEW CLOUDS WHOOO 2022-07-10 02:53:09 +01:00
Particle Standard Unlit.shader Menu Screen + UI Restyle 2020-12-14 02:56:35 +00:00
Particle Standard Unlit.shader.meta Menu Screen + UI Restyle 2020-12-14 02:56:35 +00:00
Raymarching.meta Initial ARPG Port 2020-11-27 22:47:33 +00:00
Shield.shader Nebula Lighting Everywhere + Perspective Distortion Fix 2022-07-16 06:42:40 +01:00
Shield.shader.meta Combat & Visibility & Collisions 2021-02-26 19:01:47 +00:00
StableFluids.meta Unified Volumetric Flow 2022-07-17 05:27:50 +01:00
StretchedSkybox.shader Boundless 2022-07-21 21:40:44 +01:00
StretchedSkybox.shader.meta Boundless 2022-07-21 21:40:44 +01:00
Terrain.meta Hotfix 2021-05-29 13:59:09 +01:00
TMP_SDF.shader Action Bar (WIP) 2021-04-18 05:13:20 +01:00
TMP_SDF.shader.meta Action Bar (WIP) 2021-04-18 05:13:20 +01:00
ViewNormalEmissive.shader New Inventory System + Overhaul 2020-12-10 23:20:38 +00:00
ViewNormalEmissive.shader.meta New Inventory System + Overhaul 2020-12-10 23:20:38 +00:00
ViewNormalEmissiveGlowFade.shader Combat & Visibility & Collisions 2021-02-26 19:01:47 +00:00
ViewNormalEmissiveGlowFade.shader.meta Combat & Visibility & Collisions 2021-02-26 19:01:47 +00:00
Volumetric.cginc Restore the stable legacy Unity project 2026-08-10 14:57:50 +01:00
Volumetric.cginc.meta Volumetric Redux 2021-05-30 05:54:28 +01:00