Commit graph Aetheria/Assets/Scenes
Author SHA1 Message Date
Meta Vens
64d5e4534d ARPG.unity: measured rock mesh radii (RockMeshRadius.Fill), 30 meshes, 0.958 to 2.430
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 20:44:28 +02:00
Meta Vens
281745394b Map presenter: one owner places every map icon in 2D, belts become one instanced draw (not yet compiled)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 23:26:26 +02:00
Meta Vens
6865af813f Merge remote-tracking branch 'origin/eureka/aetheria-gravity-nebula-tint' into eureka/aetheria-gravity-merge-ag3 2026-10-16 07:21:34 +02:00
Meta Vens
fdecde02d0 Merge eureka/aetheria-gravity-stardust-bounds (closing verdicts cut-stardust-bounds.s1, cut-stardust-bounds.s2)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 06:25:33 +02:00
Meta Vens
1973b6d220 Stardust: draw at BeforeForwardAlpha (deferred cameras never run AfterForwardOpaque); probe checks the event, culling mask 1 and a near control; Main Menu drops the stale GravityCamera
Both target cameras are deferred, so the AfterForwardOpaque buffer never drew. The render half of scene-stardust-uncullable now attaches-checks BeforeForwardAlpha, renders with cullingMask 1 (DrawProcedural is layer 0), and requires a near control (dust 100 below, size 5) to draw before the far probe is read, so a miss at 10000 can only be culling.
Builds: not compiled by this commit alone; verified in the Unity batchmode run reported with the cut.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 05:46:50 +02:00
Meta Vens
9b05ced11f The ambient tint is a gaussian over the populated radius, not a quad that ends at Pack.Radius
Ambient Fog Light leaves Zone Brushes (root object, same pose) and Sector Tint.mat moves from
PowerBrush to Brushes/Ambient Brush: brightness falls as exp(-x^2 ln(1/_EdgeBrightness)), x in
units of Zone.PopulatedRadius. ZoneRenderer.FitAmbientLight, called by LoadZone, is the one
writer of the quad's size and _Reach (the radius where it is 1e-5 of the centre). AmbientEdgeVerify
renders the real scene object through that call. Builds in Unity 6000.3.24f1.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 05:08:16 +02:00
Meta Vens
71bf2a1bff Stardust: draw by a command buffer on the target camera, never frustum culled
Deletes the bounded Graphics.DrawProcedural, its hand-inflated Bounds, the GravityCamera field (and its scene reference) and the dead OnRenderObject block. The camera replays the buffer at AfterForwardOpaque; it is attached on enable, detached on disable and destroy, and released. Unity compile not yet run for this commit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 04:48:41 +02:00
Meta Vens
7274f6d623 Delete the fog marcher nothing draws
VolumeRender and VolumeRenderCustom shaders, the four Fog Marching
materials, ZoneRenderer's FogMaterial/FogFarFadeFraction and its
_DepthCeiling/_DepthBlend writes, the ARPG scene values, and the
Volumetric.cginc _TintExponent, texFlow and tintGradient (with its
commented-out caller). The live nebula is VolumeCloudRenderer + CloudShader.
Unity compile not yet run on this commit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 04:06:01 +02:00
Meta Vens
fe5d03d04b Menu and test scene patch cameras stop culling the gravity layer; the parity verify checks every scene's patch camera
cloudDensity adds the R32 gravity height to the patch texture, so Main Menu and TestScene patch cameras (mask 5632) counted layer 9 twice. Mask 5120, and GravityFieldParityVerify now asserts each of ARPG, Main Menu and TestScene excludes layer 9 from its Fog Patch Displacement camera.

All commits build as far as C# goes; verify runs after the second commit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 18:39:27 +02:00
Meta Vens
3b039d069b The nebula patch reads gravity from the R32 surface height, not a half-float copy
Patch Displacement no longer culls layer 9; cloudDensity adds the surface displacement to the patch-only displacement.
GravityFieldParityVerify wiring checks the camera. Neither commit has been built when this is written.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 17:45:57 +02:00
Meta Vens
3a5b3b0bab Gravity grid-lowering: the drawn height is one Gravity Field pass over the zone's wells; gravity brushes and brush inputs deleted
Zone.WellReference owns each body's reference zero (GetHeight uses it). Gravity.cginc mirrors GravityField.Potential;
Brushes/Gravity Field draws depth = -h on layer 9 from a StructuredBuffer that GravityLowering.Lower fills from the
zone each frame; GravityLowering.CreateField makes the one quad. GravityFieldParityVerify renders it and compares every
texel with -Zone.GetHeight (max error 0.0059 u), the gradient with GetForce (0.03 degrees) and the wiring.

Deleted: the Gravity Well children of Planet, Gas Giant, Sun and PlanetOutpost prefabs, Wormhole 1's three gravity
children, their overrides in Main Menu and TestScene, five wormhole/wave materials and two brush shaders,
Planet.GravityWellDepth/Radius, BodyData keys 6-7, PlanetSettings.GravityDepth/GravityRadius (and the Settings.asset
keys). Surface Displacement culls layer 9 only. Headless build and tests not yet run at this commit.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-15 07:11:25 +02:00
Meta Vens
7ae77e41a7 Scenes: drop the Sun prefab-instance overrides that targeted the deleted Gravity Waves object
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 22:08:18 +02:00
Meta Vens
7d3fb29ed2 Gravity subtract: delete the zone bowl and the gas-giant and sun ripples
GetHeight sums body wells only. Removes RadialWaves, GasGiant wave fields,
GasGiantData keys 14-17, PlanetSettings Zone*/Wave* fields, the minimap
gravity range, the Boundary brush and Gravity Waves objects from the scene
and both prefabs. The five bowl fixtures become one WellFixture well at the
origin with unchanged expected numbers. Not yet built or tested: this commit
has not been through the Yggdrasil job.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 19:34:20 +02:00
Meta Vens
48b42992ee Loot 3 group A: the grab is presented, not simulated
IGrabPresenter.Grab(GrabEvent) only; the binder's Transform and velocity resolvers go. TractorBeam
presents a running grab (aims at Started's TargetPosition, emits at Power, dark otherwise). FieldDriver
draws its tendril from GrabEvents alone with a real-time phase clock over each event's PhaseDuration and
writes no transform and destroys nothing; its grab times move to FieldTester, now the scene's stand-in sim
that owns its pickup's timeline and pose. ItemPickup keeps its label lit while held. ImpactPresenterSmoke
becomes CapabilityPresentationSmoke with a grab section; its two untracked-ship expectations follow
DrawsAt since contact-hud. Builds (Unity 6000.3.24f1 batchmode: smoke ok, scene opens, no missing script).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 18:43:15 +02:00
Meta Vens
16466b148a Merge cut contact-hud (Soul verdicts cut-contact-hud.s1, .s2) 2026-10-13 08:48:13 +02:00
Meta Vens
4708a71a67 contact-hud: the HUD reads the player's own ContactOf and book; TargetedBy and the spotted blink go
Selection is nothing the selected ship can sense: TargetedBy, TargetedByCount, their subscriptions and the music
read of them are deleted. Indicator fills, the target panel, the compass, music and the enemy schematic rows now
read CurrentEntity's ContactOf / RevealsOf / RevealedSubjects (new, the book's keys); the schematic rows are built
by one builder from the book and rebuilt when the revealed set changes. Impact hull effect and projectile hit
effects at another ship's position draw only through ActionGameManager.DrawsAt (the player's own ship or a Tracked
contact). Builds untested in Unity at this commit; tests NothingReadsSelection and RevealedSubjectsListsTheBook.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 07:13:55 +02:00
Meta Vens
c7c7e58508 Unity draws Zone.FloatingItems and nothing else; the Unity loot roll, collision pickup, tractor pull and GridObject are gone
ZoneRenderer draws one ItemPickup per FloatingItem (load, ObserveAdd, ObserveRemove, ClearZone); ItemPickup.Bind places it
from the sim body and spins it for show. EntityInstance's drop loops, ShieldManager's pickup branch (the whole
OnCollisionEnter, which did nothing else), ZoneRenderer.DropItem/DestroyLoot/_loot, TractorBeam's pull, and
GameSettings' three loot fields are deleted; WireFloatingItems stripped GridObject from the five pickup prefabs and
reassigned ZoneRenderer's four pickup fields in ARPG.unity; FloatingItemsDrawnSmoke (play session, batchmode) pins the
lowering. GridObject and TimedDestroy were deleted in fa911f2d, so fa911f2d and 2565e2c5 do not build in Unity.
Assets/Resources/Settings.asset keeps three stale serialized GameSettings fields Unity ignores (LFS object, not rewritten).

Builds: Unity batchmode compile green at this commit; dotnet green at 2565e2c5.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 02:36:47 +02:00
Meta Vens
9afa5700a9 Wire ImpactFeedback into ARPG.unity (WireImpactFeedback output)
Adds the Impact Feedback object (TinyExplosion, the weapons' own hit effect, as the pooled hull effect) and a
CinemachineImpulseListener on the follow camera. Additions only (188 lines, 0 removed).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 21:10:07 +02:00
Meta Vens
68519f9fb9 Merge cut emoji-sequences (Soul verdict cut-emoji-sequences.s3)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-12 06:39:40 +02:00
Meta Vens
e1a5c6a1b0 Emoji sequences: liga in the 142 serialized TMP texts (43 prefabs, 2 scenes) and in TMP Settings, written by EmojiFont.EnableLigatures
Every prefab and scene was re-serialized by Unity 6, so each file also carries the editor's own migrations (m_RootOrder, m_ConstrainProportionsScale, m_enableWordWrapping to m_TextWrappingMode, name quoting). Builds.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 04:37:07 +02:00
Meta Vens
1660a68a8a Fog Patch prefab carries VapourCloudInstance at the origin and unit scale; ZoneRenderer.CloudPrefab assigned in ARPG
Wired through the Editor in batchmode (component, root pose reset, field assignment); the scene diff is the one
CloudPrefab line, the Editor's unrelated field churn reverted. Builds (Unity compile 0 error CS).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 03:46:24 +02:00
Meta Vens
284231f4c1 Merge origin/master (2403a5f3, gear-without-presence) into eureka/aetheria-release-retire-longinusx
Lands retire-longinusx on master after gear-without-presence. The catalog
is regenerated from master's catalog with retire-longinusx apply (next commit).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

# Conflicts:
#	GameData/Aetheria.cc
2026-10-08 18:59:38 +02:00
Meta Vens
7e121f282d Mine prefab and scene wiring: WireMines built Mine.prefab and assigned ZoneRenderer.MinePrefab
Unity 6000.3.24f1 batchmode; the three Substance materials fell back to the project's plain materials (Car Paint
Red, Car Paint Magenta, Steel) because .sbsar imports nothing in this Unity. Font-asset churn reverted.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-08 14:34:37 +02:00
Meta Vens
1937ea04fe ARPG scene: the RPM Display object and SchematicDisplay's stale drive references are gone
The RPM Display subtree (55 serialized objects) and the seven removed SchematicDisplay
fields in both instances (AetherDriveUi, the three RPM labels and fills). Removed by a
scripted edit of the scene YAML, not an editor re-save, to keep the diff to the
subtraction; Unity 6000.3.24f1 batchmode then opened the scene and compiled the project
with no error CS and no missing reference on either SchematicDisplay.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-08 14:15:49 +02:00
Meta Vens
c204397cb0 TradeMenu sells and repairs through StationServices; credits seed from the stage or the save
The hardcoded credits initializer and its stale scene serialization go. Buy charges the hull price it checked. Sell is a
mode of the trade list over the selected bay; Repair is a foldout option for the docked ship.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 19:30:34 +02:00
Meta Vens
8a1e205cf0 A new run replaces the saved run only once it has staged; a failed start says why and leaves the saved run
Launch cleared the run store before generating, and a generation or staging failure only reached the log: the
Generating Galaxy dialog stayed up, StartGame threw, and the saved run was already gone.

RunSave.Replace runs a start with the saved run still stored: when it returns a staged run the saved run's records go,
and when it returns null or throws, only the records it wrote (the arena's orbits and bodies) go. StartGame's
new-run branch is StartScenario, chosen by PendingScenario rather than by the absence of a SavedGame; it mints into an
empty ledger, and a failed start clears CurrentGalaxy (so quitting saves nothing) and refuses on the main menu with
every failure. Launch no longer clears; a galaxy that throws is refused on the title menu. The menu offers Continue
whenever no run is live, which replaces MainMenu.InGame (cut, with its prefab value and scene override), so a
failed start can resume the saved run in place.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 22:03:50 +02:00
Meta Vens
97edf48cec Add the debug info panel and the shield panel test rig
ARPG.unity gains Debug Info Panel and Debug Info Text, which
ActionGameManager.DebugInfoText drives as the fire-control debug HUD.
FieldShieldTest.unity gains the ShieldInterceptor, ShieldEnvelope and
Panel prototype rig from shield-panel Cut 4.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 23:38:54 +02:00
Meta Vens
807c4fab7e Drive the field shield test scene by publishing capability events
FieldTester now owns a CapabilityEvents instance and stands in for the
capability source the simulation doesn't have yet: it publishes AbsorbEvent
on click (cycling DamageType so the operator can see how a type-aware
presenter would behave), GrabEvent(Started) on pickup click, MeleeEvent on
the Melee button, and a ThrustEvent every frame from input -- FieldDriver only
ever reacts through CapabilityPresentationBinder. The damped push/twist state
that used to live directly on FieldDriver.Push/FrontTwist/RearTwist now lives
in FieldTester and is applied through the event instead.

Adds a CapabilityPresentationBinder component to the field object in
FieldShieldTest.unity, alongside the existing added ClickableCollider
component on that same prefab-instance GameObject (same pattern, no
serialized fields to wire). Scene behavior is unchanged: hits, melee, pickups
and flow all look and act as before.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-17 14:36:54 +02:00
Meta Vens
7006a6b0dd Restore the stable legacy Unity project 2026-08-10 14:57:50 +01:00
Meta Vens
4d7bb65868 Integrate CultMesh UI and URP cleanup 2026-06-30 19:14:49 +01:00
Meta Vens
2ee0350451 Rename custom fog blur post process 2026-06-21 10:43:29 +01:00
Meta Vens
6de0141b33 Delete dead generic popup inspector shell 2026-06-17 07:27:59 +01:00
Meta Vens
7d8801d24f Cut confirmation dialog loose from properties panel 2026-06-17 05:38:58 +01:00
Meta Vens
0a2f65670d Delete dead popup menu shell 2026-06-17 03:59:14 +01:00
Meta Vens
fed0759074 Delete dead inventory weapon group shell 2026-06-17 02:39:13 +01:00
Meta Vens
1066bce086 Move equipped item inventory controls onto Eve surfaces 2026-06-17 01:50:15 +01:00
Meta Vens
79d8e8b6b9 Inline runtime menu tab bindings into MenuPanel 2026-06-17 00:43:42 +01:00
Meta Vens
5d34d3706b Delete field tester debug panel 2026-06-15 22:26:14 +01:00
Meta Vens
d678f3210f Delete renderer-local console authority 2026-06-15 22:00:25 +01:00
Reinier Vens
6b0860b178 Bugfixes & Reactive Refactor
Added credits display to trade screen
Fixed bug in inventory screen where a failed drag from a cargo bay would make the item disappear until a refresh is triggered
Changed behavior of Escape key to exit menu if a menu is open
Fixed zone map gravity isolines to correctly track maximum gravity depth
Refactored orbit and planet data to replace reactive variables with regular ones
2025-07-18 00:21:33 +01:00
Reinier Vens
7561c09edc Unity 6 Upgrade + Solid Gravity Surface
Upgraded Unity version to 6000.1.10f1
Rewrote gravity surface shader to use shader environment vars for placement + various compatibility fixes
2025-07-10 21:05:54 +01:00
Reinier Vens
c6ffcad3f1 Shields
Created field bubble shields / propulsion, currently just a prototype with its own test scene
2025-01-30 01:58:05 +00:00
Reinier Vens
47e500e1ce Playability
Fixed loadout generator tutorial edge cases
Recreated missing items
Created field shader & test scene
2022-08-08 22:43:55 +01:00
Reinier Vens
69aca09f63 Boundless
Removed hard zone boundaries
Fixed stuff that broke because of hard zone boundary assumption (stardust placement, vertical fog)
Added a skybox!
Removed density-based albedo boost (_TintExponent) to improve perceptual uniformity at different step sizes, reconfigured shader to achieve / surpass previous looks and performance
Cell Brush has a material editor now to enable variant selection
Enabled Caching Shader Preprocessor
Moved raymarching loop into CloudShader
Get environment settings from game manager to enable configuration / variation
Introduced slope-based nebulae damping and volumetric flow
Hid optional volumetric features behind preprocessor branches
Created shader variants selected by global keywords for all shaders depending on volumetrics
Environment settings used to configure shader variant selection
Moved dynamic lighting settings to own subclass
Dynamically adjust gravity map isoline contour depth range according to zone contents
2022-07-21 21:40:44 +01:00
Reinier Vens
be5e7618d6 Performance Optimization
Improved volumetric flow performance by orders of magnitude
Cleaned up old raymarching support code
Moved asteroid height calculation to vertex shader
Manual culling for asteroid field render update
2022-07-19 18:55:17 +01:00
Reinier Vens
b93d2d213b Graphics Settings + Disabling Minimap Asteroids
Created graphics settings data structure
Added nebula quality option to graphics settings
Added option to display asteroids in minimap (expensive)
2022-07-18 08:44:54 +01:00
Reinier Vens
bbf1d53d1c Upgrade to Unity 2021.3.6f1 LTS
Converted remaining .blend files to .fbx
Type check safe cast operator broken in DictionaryInspector? Wrote around it
UI Materials not blending properly - fixed by switching to Fade transparency mode
2022-07-17 23:20:50 +01:00
Reinier Vens
ae79a152e9 Tweak Stardust Placement
Quick commit before I break everything by upgrading Unity
Modified vertical placement code for stardust particles
2022-07-17 21:51:51 +01:00
Reinier Vens
c3329cecc4 Unified Volumetric Flow
Modified stardust & nebula shaders such that flow velocity is consistent: Volumetric:flow now represents global velocity in meters per second
2022-07-17 05:27:50 +01:00
Reinier Vens
07bddc0a6a Nebula Lighting Everywhere + Perspective Distortion Fix
Applied nebula lit shader to "planets" and asteroids
Modified gas giant shader to accept nebula lighting and to be a bit less crappy in general
Fixed raymarching depth sampling perspective distortion
2022-07-16 06:42:40 +01:00