In this update2
Full notes
Full Aiyana update
Read the full published notes in a cleaner layout. The original post stays linked below.
What changed
- Compatibility
- Performance
- Fixes
- UI and audio
- Maps
- Balance
Aiyana changes
This release is still Beta only but I've removed the limitation for loading worlds since things are starting to feel stable and less bugs are coming up in testing. This one took a little longer because my PC decided to die on me. At first I thought it was just a PSU but it of course turned out to be the most expensive component the GPU and I ended up having to wait a few days for shipping.
Grass LODs
One of the bigger things that consumed my time was working on grass LODs. What I've had in the beta so far are cubes, just like the terrain, that render at a distance once grass gets small. Until now, they had a texture but it presented various problems. First is that a texture per grass type would have added up and since the cubes are so far away the textures being full scale was really overkill. So instead of playing with atlases and such I made a textureless shader that took a simple colour input and all looked well, until the time of day starting changing. Since the cube was meant to express the complex grass mesh it meant a lot of the mesh complexity was lost, which is entirely the point. However that complexity meant that light interacted with grass in a very different way than it does a cube with a flat surface. To attempt to solve this, I then had to pick two colours to express each grass type, one for noon and one for sunrise/set. Once I applied some curves to properly blend between these two colours based on the time, the system was looking promising and the transition from grass to a cube was looking smooth-ish. So I started applying it to more grass types such as flowers and ferns and I quickly discovered this was a tedius, time consuming process but I stuck with it and made decent progress until it came to snowy grass. Snow, since its white, reflects a lot of light. So its grass was Really tricky to properly emulate light changes and in the end I had something sort of ok. The problem however was shadows. Earlier whilst developing this LOD system I realised it was looking strange because I wanted to not cast shadows for the LOD (since grass doesn't cast shadows as it would be Really expensive) but to still receive them. After a fair bit of custom shader fiddling I got something that could do this whilst also having a custom strength for the shadows influence since the cube needed to emulate much softer shadows to better match light dissipating in the grass. This left me with another mess which is that snow didn't want to recieve shadows from the terrain, at all, because the contrast with white made them look extremely noticeable. However they still needed shadows from trees otherwise they felt like they didn't feel grounded in the world... So this is where I stopped. It felt like I was making too many approximations of light/shadows and finding too many scenarios that wouldn't behave ideally. Instead what I've opted for is no LODs at all and instead to use a distance based formula to cull existing grass. This is a very standard technique to deal with grass but I was aiming for something a bit more elegant.
Bugs
Fixed some small one time memory leaks caused by seaweed data and trees
Fixed portals light affecting clouds and appearing to have a box around it
Fixed cotton bushes not rendering
Fixed the sun always rendering in front of the clouds
Fixed the graphics settings dropdowns being broken (by temporarly removing their controller support)
Fixed light looking harsh and unnatural in caves
Fixed blocks with a structure preview (e.g crafting benches) causing a crash
Fixed the crafting search bar and top tabs being unselectable
Fixed animals being able to attack the player if they use Teleport Home and they load near enough to the player
Fixed breaking block textures having the wrong orientation
Fixed terrain LODs not properly combining as expected, significantly reducing the total cubes needed to render a world
Fixed terrain LODs not calculating light properly, which would previously have shown black splotches on snow/sand
Fixed Willow tree trunks not rendering
Enemies that explode during challenges no longer have a chance of utterly destroying a block and will always spawn a pickup instead
Fixed energy blast and mining light affecting clouds
Fixed various issues with animal animations being utterly wrong
Corrupted natives will now fade out their ambient light as they die instead of just turning off instantly
Fixed flying golem attacks affecting cloud lighting
Increased the distance that trees swap to their LODs so its less jarring
Added a potential fix for seeing night enemies out during the day
Fixed the oak animal trophy not having an icon in the creative menu
Fixed oak tables rendering with an ice texture
Fixed pine, snow pine and redwood trees being sunk into their root blocks a little
Fixed the structure builder UI animating to the wrong position
Fixed the structure stake video tutorial not playing
Fixed raindrops positions occasionally being off by 1 and floating slightly in mid air
Fixed protection totems light influencing the clouds in strange ways
Fixed nearby fish not rendering at all
Fixed insects that are offscreen still sometimes rendering at 0,0,0 with no scale (half bug fix, half performance improvement)
Fixed Acacia trees not rendering their trunks and their broken version not rendering their leaves
Fixed saplings growing into invisible trees
Reduced the amount of frogs that can spawn in swamps
Fixed decorative logs and stumps in swamps from always rendering as though its night
Updated the icon for sword handles to be clearer
Fixed only the latest backup file being overwritten once the max files has been reached (fairly sure this only affected the beta)
Updated backups to include the current characters file instead of just the world
Updated the emissions for most food so they look more appealing at night and less rotten
Fixed a distance label in the tamed animal screen being utterly broken
Updated alchemy UI to scroll ingredients at a speed relative to the number of items available
Fixed fishing spears acting a bit strange when throwing more than one spear before gathering fish
Fixed a crash that would sometimes happen on quit
Fixed lily pads in swamps always rendering in the exact centre of their block and looking unnatural
Drastically reduced the time it takes to run the Occlusion culling job
Fixed some chunks not rendering when you are high in the sky and look at your feet
Source
Changelog.gg summarizes and formats this update. How we read updates.
