Errant Biomes 1.6 adds new features like a Rotation Mask for Species or converting Species to foliage actors, as well as improved support across various platforms and many other fixes and improvements. It also introduces a more intuitive behavior for Sub-Biomes that output zero in their mask.
New Platforms
The plugin compiles and runs correctly on Unreal Engine 5.4 Preview. We will provide precompiled binaries as soon UE 5.4 is officially released.
Users who own Errant Biomes source code can now develop on MacOS and Linux! We also fixed issues preventing Runtime Spawning from running on iOS and Android. We plan to start providing precompiled binaries in the near future.
New Features
- New Rotation Mask for Species enables procedural control over the rotation of spawned instances. For example it's possible to align the spawned instances with slope or based on splatmaps/hand-painted masks.
- Instanceable Blueprints can now spawn all types of components, not just meshes, which opens the door for spawning all kinds of interesting structures.
- Spawned Species can now be converted to foliage actors as part of the freezing process. It means you can use the Foliage Tool to refine and complete your level.
- A new Flatness Check material function allows finding out whether a terrain is uneven at a given position, which is useful when deciding whether to spawn a large object or a partial enclosed mesh.
Improvements
We added a fallback server for license validation which is used in case of the main infrastructure failure. Aside from minimizing the chance of failure it also gives us more control in mitigating the situation.
Sub-biome behavior is now more intuitive - only Sub-Biomes that output positive values in their Masks can spawn at a given area. As a result, there is no need to add an Empty Sub-biome (without any Species) to keep certain parts of the map empty. Biomes created in previous versions of the plugin will continue using the previous behavior, until switched to the new setting. See the documentation for more details.
Species can now spawn Level Instances.
We added a new "Common" section in Species that gathers the most frequently used settings in one place, including checkboxes for shadows, collision and culling.
- Bounds input node can now filter actors and components by tags.
Game logic can now read various Biome-specific Masks through the
BiomesPCGWorldSubsystem
C++ interface (seeGetMaskDataSynchronous
andSampleMaskDataSynchronous
functions). It's possible to access Sub-biome Masks, Species Masks (Growth/Asset-Selection/Scale) and locations for where Species spawned (including the mesh). Eventually we plan to release a more performant method of accessing that information, but current way may serve as a useful temporary solution.We added icons that distinct masks coming from different plugins. We also enabled opening a context menu for masks coming from Errant Paths and Errant Landscape. Masks can now be cleared or renamed more easily.
- We introduced a toggle for previewing the mask value under the cursor in the Mask Tool.
Enhanced error reporting and validation through the use of the Message Log window, making errors more visible and providing direct links to problematic assets.
Generation can now be forced when holding Shift while pressing the Generate button (also on Shift + Alt + G).
Automated conversion of masks to GUID format in older versions of Errant Biomes, enhancing performance and fixing renaming issues.
Added warnings for duplicate GUIDs in masks, which should theoretically never occur but have been reported.
Improved sensitivity of the
Landscape Slope-Facing Alignment
feature for better slope detection.Added error handling for infinite loops in Instanceable Blueprints.
Added validation warnings for disproportionate draw and cull distances. To catch potential performance problems.
Defaulted to adding a single instance in
BiomesInstancedStaticMeshComponentWithSpawningInfo
to simplify usage.Introduced
errant.biomes.ForceRecompileAllSpeciesMaterials
command for recompiling all species materials to solve occasional Unreal material cache problems.Hidden
Instance Component Template
property in theBiomes[..]ComponentWithSpawningInfo
components. The properties are taken from the base component in that case and showing the template leads to confusion.
Fixes
- Resolved improper mesh merging from Instanceable Blueprints.
- Fixed various GPU synchronization and shader compilation issues, including those specific to METAL and mobile devices.
- Fixed spawner actors being marked "dirty" without changes during generation.
- Addressed async mask loading issues, especially over large areas.
- Fixed issues of instance component properties not getting copied when using freezing functionality.
- Solved the issue of instances from Instanceable Blueprints generated on the edges of generation not getting removed correctly and getting duplicated on regeneration.
- Fixed malfunctioning force generation button.
- Resolved unintended landscape modifications when the landscape option in
Generate Mask
was disabled. - Improved performance when saving empty mask assets, particularly beneficial for Errant Landscape.
- Addressed preview value indicator misplacement in mask paint and preview tools.
- Corrected multiple issues for upcoming UE5.4 compatibility.
- Fixed issues with material functions in species/sub-biome masks.
- Fixed crashes related to material updates in species materials.
- Improved UI usability and fixed several bugs in mask painting.
Patches
1.6.1
Support for Unreal Engine 5.4 and minor UI fixes.
1.6.2
Fixed a crash when entering PIE with runtime biomes instances.
1.6.3
Fixed Biomes masks not loading.
1.6.4
Fixed a crash in UE5.4 when re-generating.
1.6.5
Fixed limitation where runtime spawned instances needed to have Max Draw Distance
set to a value smaller than the size of the landscape component.
When this value was smaller than the component size it resulted in flickering.
This allows you to set short view distances for species for better performance.