Commit graph Aetheria/Assets/Shaders/Raymarching
Author SHA1 Message Date
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
424010584c Bring Back Scene View Nebulae
Previous commit broke scene view raymarching, now it's back
2022-07-16 23:14:25 +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
Reinier Vens
d61d2f19ed Raymarching Cleanup
Removed redundant code from raymarching implementation
Moved last remaining raymarching variable (Extinction) to environment settings
2022-07-13 04:15:20 +01:00
Reinier Vens
b08423b936 NEW CLOUDS NEW CLOUDS NEW CLOUDS WHOOO
Added new clouds shader with improved raymarching loop
Currently only being used in main menu (rest is coming right up!)
Removed WWise (it's nice, but all it's doing is throwing exceptions rn since we ain't about to get a license)
2022-07-10 02:53:09 +01:00
Reinier Vens
00f752edf7 Unified Volumetric Flow
Fixed towing system
Tweaked Nebula Flow (a lot)
Extracted environment appearance settings into ZoneEnvironment data structure
Stardust particles now follow global flow field
2021-06-18 12:32:03 +01:00
Reinier Vens
eebca2e276 More Cloud Tweaking 2021-06-01 10:59:45 +01:00
Reinier Vens
149a90e01c Realistic Volumetrics
Tweaked the density function for the clouds - fill density now fades smoothly to zero over safety radius
Changed the way density is mapped to luminosity in volume color sampling
Added directional lighting to clouds
Changed raymarching accumulation logic
Fixed step artifacts (reverted to simple blue noise sampling)
2021-06-01 08:16:36 +01:00
Reinier Vens
a6868ff304 Volumetric Redux
Fancied up the volumetrics
2021-05-30 05:54:28 +01:00
Reinier Vens
1284149d47 Hostility System
Implemented hostility system - entities can mark each other as friend or foe depending on changing conditions (currently only depends on local security level)
Added "friendly" target indicators in blue
2021-05-11 04:45:42 +01:00
Reinier Vens
2c4520000b Demo Hotfixes
Replaced Unity TAA with PlayDead TAA
Custom keyboard layout test scene
Adjusted Aetheric Drive VFX to be more subtle
Reworked stardust VFX to reduce flickering artifacts
Added Action Bar & weapon groups saving/loading
Implemented security levels and faction safe zone visualization
Improved station placement (now include defensive turrets)
2021-05-02 20:59:45 +01:00
Reinier Vens
4489b18452 Action Bar (WIP)
Refactor item instance to use DatabaseLink
Labels now pop up when aiming at loot
Yeeted HUD trigger group UI into the abyss
Created rebindable action bar (missing: assigning actions)
Created Consumable Items
Refactored behaviors to work on consumable items
Implemented Velocity Conversion Behavior
2021-04-18 05:13:20 +01:00
Reinier Vens
ec1f8f56d4 Golden Ratio Blue Noise Sampling
Improved fog sampling and stochastic transparency by generating low discrepancy temporal sequences using the golden ratio on blue noise samples
2021-04-12 14:36:32 +01:00
Reinier Vens
ca1ce9859d Live Demo Tweaks
Copied Main Menu to gameplay scene
Added Pause functionality (ESC key)
Save & Restore discovered zones
Applied vertical offset to asteroids (no more intersections!)
Nebula shader optimized to improve early exit
Nebula shader outputs light scattering to second render target
Modified depth of field shader to use nebula light scattering
2021-04-09 14:01:34 +01:00
Reinier Vens
48759380c5 Slime Stuff & DB Prep
Put the finishing touches on the microfauna
Prepared the repository for database extraction
2021-03-30 01:17:58 +01:00
Reinier Vens
351cb9f2af Sector & Loadout Generation Fixes
Adjusted sector generation to improve sample elimination performance and better preserve density map
Added unit tests for item shape rotation and fit functions + fixed those (required for correct loadout generation)!
Fixed faction hostility by marking player ship
Added faction to entity serialization
Generating starting loadout for player ship
2021-03-18 22:48:33 +00:00
Reinier Vens
ebde23a64d Enemy Loadout Generation
Modified zone generator to scale the radius and mass of a zone according to galaxy density
Added loadout generator which procedurally generates ships and turrets
Generating 3 randomized ships in each occupied zone
Fixed DatabaseCache.GetAll for parent types
Fixed wormhole traversal bug for returning to previous zone (ZoneRenderer subscriptions not being properly disposed)
2021-03-18 00:36:34 +00:00
Reinier Vens
1092159063 Thermal Performance Threshold & Thermal Override
Items will switch themselves off below a customizable threshold to avoid damage
Player can toggle thermal override to disable safety shutdown
Selecting an item allows player to select whether the item will override
Clicking on the background of an inventory panel will display general ship settings (including thermal shutdown threshold)
Performance Stat evaluation has been moved to EquippedItem, slight performance improvement
Item online and active status are now reactive properties
Created player settings file to store e.g. shutdown threshold
Fixed crash when entering wormhole while enemies are visible
2021-03-07 01:10:31 +00:00
Reinier Vens
b53e4aec8c Combat & Visibility & Collisions
Converted entity materials to new fade shader
Implemented visibility system
Refactored per-instance entity code to run inside monobehavior on entity instances
Created state machine AI for enemy ships with basic patrol and combat routines
Removed legacy AI code (controller item behaviors)
Added automatic trigger group assignment for matched weapons
Created ship collision system
Created shield VFX and colliders
2021-02-26 19:01:47 +00:00
Reinier Vens
76eca26972 Performance Optimization
Asteroid belts are now processed without GC allocations
Fog Raymarching shader now discards samples far from fog surface
Gravity depth calculation avoids some expensive operations
2020-12-03 17:32:34 +00:00
Reinier Vens
34e20c5488 Improved Level Generator
New asteroid models
Asteroid belts have a custom width curve = tighter belts
Zone Generator uses color theory now
Zone gravity well is much deeper, filled with ambient glow
Gravity waves flow over time
Fog follows gravity waves
Gas Giant shader fixed, offsets distort albedo properly
Fog sample distances follow exponential curve
Fog noise offsets sampling position instead of subtracting density = more natural looking noise
Fog brightness fades out at max view distance
2020-12-01 20:38:28 +00:00
Reinier Vens
1f90d3639a Asteroids & Refactoring
We have proper belts that hug the Grid, reactive properties for planet instance data, and more!
2020-12-01 00:16:11 +00:00
Reinier Vens
a981a46170 Asteroid Belts
Sector renderer is now also rendering asteroid belts. All gravity calculations have been moved out of monobehaviors.
2020-11-29 22:50:12 +00:00
Reinier Vens
d12d7c5c45 Initial ARPG Port
ARPG scene assets from old project are now correctly visualizing sectors generated by ZoneGenerator and updated by GameContext
2020-11-27 22:47:33 +00:00