Logs
V3.3.0
New features
- Seal: Preserve manual edits inside a polygon while Vista regenerates the surrounding terrain. Seal protects geometry, textures, trees, grass, and details on Unity Terrain and Polaris, warns before Generate All when a Seal is inactive, and is available from the Vista Wizard.
- Stroke Painter: Paint graph-based terrain effects directly in the Scene view on Unity Terrain and Polaris. Reusable Stroke Actions and multi pass sequences can shape terrain, paint textures, cut holes, and edit population in one stroke, with selectable terrain layers and templates, scene-aware graph inputs, previews, seeds, channel-specific writes, and Undo and Redo. The built-in catalog includes everyday painting tools and larger effects such as Clear Site, River, Hydraulic Erosion, Thermal Erosion, Convexity, and Concavity. Stroke Graph, Stroke Action, Action Sequence, and Painter creation are integrated into the Vista Wizard.
- Terrain generation Undo and Redo: Vista Manager generation now participates in editor Undo and Redo for Unity Terrain and Polaris.
- Split nodes: Split Positions distributes instances between outputs without changing their total count, while Split Mask divides one mask proportionally between outputs. Integer weights control the relative distribution.
- Scene height and normal probe: Added a Scene view overlay tool for inspecting terrain height, slope, and surface normal beneath the cursor.
- Input node fallback: Texture inputs can provide a fallback texture when graph execution does not supply the requested external input. The node displays a warning whenever the fallback is used.
- Seed history controls: Seed fields in Vista Painter and Local Procedural Biome now provide previous and next buttons. Next generates a random seed, while both buttons navigate seeds used by that component during the current editor session.
Improvements
- Polaris grass population: Grass instances are grouped by patch before population, substantially reducing repeated patch searches on large instance sets.
- Wizard feedback: Scene creation actions now provide confirmation feedback.
Changes
- Template variants: Tree, Detail, and Object Template variant lists remain serialized for compatibility but are no longer used during terrain population. Create one template per prefab or texture, then use Split Positions for instance outputs or Split Mask for detail-density outputs.
- Generic graph outputs: Generic output names must now be unique within a graph so one resource cannot silently replace another.
Fixes
- Slope masks: Fixed the full 0 to 90 degree slope range producing invalid results on flat terrain.
- Unity Terrain holes: Hole maps now use a 0.5 threshold, preventing existing holes from expanding slightly when terrain data is captured and populated again.
- 2D viewport sampling: Fixed incorrect pixel values reported for graph textures such as Split Mask outputs.
V3.2.3
Improvements
- Scene asset organization: Terrain grids and biomes created from the Vista Wizard are now saved in
TerrainsandBiomessubfolders inside a shared folder named after the scene. - Graph editor layout: Graph preview and node-property windows now open in more useful positions and snap more consistently when dragged.
- Editor interface: Snackbar notifications now have clearer borders.
- Detail density default: New Vista Managers now use a default detail density resolution of 512.
Fixes
- Terrain seams: Fixed visible seams between neighboring terrain tiles and along blended biome geometry.
- Scene Height Input: Fixed the graph editor failing to provide scene height to unsaved or overridden graphs.
V3.2.2
Improvements
- Selective biome regeneration: Editing a Local Procedural Biome now regenerates only terrain tiles covered by its previous or current footprint instead of every tile managed by the Vista Manager.
- Automatic biome updates: Transform, anchor, hex-grid, Inspector, and graph changes now trigger targeted biome regeneration.
- Scene-aware tile priority: Terrain tiles visible in the Scene View are generated first, followed by the remaining tiles in order of distance from the Scene View camera.
Fixes
- Local Procedural Biome overlap: Fixed Inner falloff overlap checks missing terrain tiles covered by the biome's fade region.
- Graph transient resource: Allow duplicated resource clean up registration.
V3.2.1
New features
- Crater biome template: Added a ready-to-use Crater template to the biome template gallery.
- Scene View toolbar: Added a Vista button to the Scene View overlay for opening the Vista Wizard.
Improvements
- Generation cancellation: Starting generation again now cancels obsolete graph work and runs the latest request after cleanup, preventing overlapping generation passes and stale results.
- Graph resource cleanup: Temporary graph resources are now tracked per execution and released when the execution completes or is cancelled.
- Terrain population memory: Reduced temporary memory usage when applying detail density, grass instances, and hole maps to Unity Terrain and Polaris tiles.
Fixes
- Multi-biome texture blending: Fixed upper biomes retaining texture weights from lower biomes. Replace and Height Win blending now preserve the incoming biome's own texture-layer proportions while removing covered lower-biome weights.
- Biome templates: Fixed spawned biome templates resetting the prefab's position, rotation, and scale when parented under a Vista Manager.
V3.2.0
New features
- Vista Wizard: A new hub window that gathers everything you need to start and manage a terrain in one place. Open it from Window > Vista > Wizard or GameObject > 3D Object > Vista > Wizard. It has a persistent left navigation with four destinations:
- Home: A dashboard showing your pinned Quick Actions, the biomes you worked on recently, and a System Status report.
- Create in Scene: Create a Vista Manager, a terrain grid, or a new biome from templates or from scratch.
- Create Asset: Create terrain graphs, content templates, terrain layers, and data providers directly in your current Project folder, with inline rename.
- Tools: A catalog of setup and integration tools.
- Get Started onboarding: On first import, Vista opens a Get Started page that walks you through the basics. It shows once per project, and you can replay it any time from Window > Vista > Get Started.
- Biome Templates: A new asset type and template gallery for creating biomes. Pick a template, preview its screenshot and usage guide, and Vista spawns a fully editable, self-contained biome under your Vista Manager. Nothing stays linked to the template, so you are free to change everything afterward. Vista ships with Blank, Mountain, Mesa, Dunes, and Flower Patches templates, and you can author your own with Create > Vista > Biome Template. A template points at a biome prefab, so it captures the whole biome setup—the graph, blend mode, external inputs, and any child objects—not just a graph.
- Quick Actions: A grid of one-click actions on the Home dashboard, covering common jobs such as creating a biome, scene setup, and opening help. Pin the ones you use and hide the rest. Custom actions can be added from your own editor scripts with the
[VistaQuickAction]attribute. - Terrain grid creation: A dedicated page for laying out a terrain grid using a terrain backend supported by the current project. Set rows, columns, tile size, and height, start from a built-in preset, or save your own configurations for reuse across projects.
- Multi Terrain Management page: A guide to the multi-terrain workflows already provided by Unity Terrain Tools and Polaris, with buttons to open the relevant windows directly.
- Splines Setup and MicroSplat Setup tools: Guided setup pages for connecting scene splines to your terrain graphs (Pro) and wiring MicroSplat to a Vista Manager (Indie and Pro). Both appear on the Wizard's Tools page.
- Curvature node (Masking/Curvature): Measures how much each point rises above or sinks below the average height around it, with separate Convexity and Concavity outputs. Radius and deviation are defined in world meters, so the mask looks the same regardless of graph resolution or biome size.
- Scatter node (General/Scatter): Scatters points across a biome driven by a density mask, combining a jittered point grid with density-based thinning. A single node now replaces the usual Point Grid, Spread, and Thin Out chain. Feed it into any instance output node, such as Detail Instance Output.
- Generic Mountain node (Generators/Generic Mountain): Generates a mountainous base shape from two noise layers at different scales—a fast starting point for a new height graph.
- Thermal Erosion 3 node (Nature/Thermal Erosion 3): A rewritten thermal erosion simulation with a Hardness input, plus Sediment and Exposure outputs for texturing the result. Erosion Rate is the amount of loose soil produced per iteration, so the effect scales predictably with the iteration count. It is far faster than the previous thermal nodes, thanks to groupshared-memory kernels and a coarse-to-fine simulation that settles the broad shape cheaply before refining detail.
- Hydraulic Erosion 2 node (Nature/Hydraulic Erosion 2): A rewritten hydraulic erosion simulation with a Hardness input and a Soil output that marks everywhere the surface has been scoured or buried, ready to drive texture and grass masks. It is also built on groupshared-memory kernels, and it simulates at the scale you request rather than at full resolution, so biomes bake quickly.
- Drainage size in world meters: Feature Size is the smallest erosion feature you want resolved, in meters. Raise it for broad valleys and faster bakes, or lower it for fine channels. Flow follows true world-space slope rather than pixel height difference, so the same settings give the same drainage pattern at any graph resolution, biome size, or aspect ratio.
- Missing node recovery: Opening a graph that uses a node type your project does not have—a Pro node in a Personal install, a removed integration, or a node from a newer version—no longer loses that node. It appears as a Missing node with the original type name, keeps its connections visible, and preserves its data on save, so the graph works again once the node type is restored.
- Read-only graph preview: Terrain graph and template assets now show their actual node graph in the Inspector, laid out exactly as in the editor but not editable, so you can see what a graph does before opening it.
Improvements
- Faster generation: A Vista Manager now determines what its tiles can actually consume and generates only that data, skipping work whose result nothing would use.
- Responsive erosion bakes: Thermal Erosion 3 and Hydraulic Erosion 2 support an automatic iterations-per-frame mode, so a heavy simulation is spread over multiple frames and the editor stays responsive instead of freezing until the bake finishes.
- Live preview during simulation: The graph editor's 2D and 3D viewports now update while a long-running simulation is still running, instead of staying frozen until it finishes.
- Node searcher: Superseded nodes are collected under a Legacy group that is pushed to the bottom of the browse tree and search results, so the node you probably want comes first. Subgraphs with no output node are no longer offered because they cannot be used.
- Template graph safety: Opening a graph that belongs to a shipped biome template now warns you before editing, so you do not accidentally change the template every new biome starts from.
- Polaris tiles: Clearer warnings appear when a graph outputs more splat layers than the tile can render or when the tile's texturing setup does not match what the graph produces.
- Editor interface: A pass over the whole editor interface for a consistent look, including new section headers, navigation and selection cards, action tiles, modal dialogs, and non-blocking snackbar notifications for action feedback.
- Recent biomes: Vista remembers the biomes you worked on most recently and offers them for one-click reopening from the Home dashboard.
- System Status: A report of your environment, graphics API, compute shader support, Unity version, required packages, and detected integrations, so setup problems are visible before you start building.
- Inspectors: Updated inspectors for Vista Manager, Local Procedural Biome, Real World Biome, terrain graphs, and the tree, detail, and object template assets.
Changes
- Legacy nodes: The following nodes have moved to the Legacy group in the node searcher: Erosion (exp), Hydraulic Erosion, Thermal Erosion, Thermal Erosion 2 (exp), Point Grid, and Ridged Mountain. They still work exactly as before and existing graphs are untouched, but new graphs should prefer Hydraulic Erosion 2, Thermal Erosion 3, Scatter, and Generic Mountain.
- Wizard menu: Window > Vista > Wizard now opens the new hub window.
Fixes
- Unity 6.3, 6.4, and 6.5: Fixed compile errors and warnings in the biome mask painting handler, Vista Manager and Local Procedural Biome inspectors, and debugger window.
- Local Procedural Biome: Fixed the anchor editing tool selecting the object underneath instead of the anchor you clicked.
- Local Procedural Biome: Scene handles are no longer drawn when the biome is being inspected as a prefab asset rather than a scene object.
- Vista Manager: Fixed the editor blocking when generation was started with no biome present.
- Scatter node: Fixed incorrect point output.
- Spline integrations: Fixed assembly references for the Dreamteck, Curvy, and Yasirkula spline packages, and added a helper that repairs spline module compilation from the Tools page.
V3.1.2
Fixes
- Fixed scripting errors and warnings in Unity 6.3, 6.4, and 6.5.
V3.1.1
Fixes
- MicroSplat Integration: Fixed a compile error on importing MicroSplat caused by a missing assembly reference.
V3.1.0
New features
- Biome Blending Pipeline Rewrite: Completely revised the multi-biome blending pipeline. Each output channel—height, holes, splat weights, albedo, metallic, detail density maps, generic textures, and instance buffers—now has its own set of use-case-driven blend modes. Biome world position and Y-scale are now factored into height-based blending for accurate results with vertically offset or scaled biomes. Vista Manager also exposes a Missing Output policy per data category, letting you choose whether a biome that produces no output for a given channel should leave the terrain unchanged or clear it to zero.
- Vista Debugger: New diagnostic system with a graph recorder and Debugger window. Captures textures, buffers, asset reference names, and variable names at each node during graph execution. Supports importing and inspecting debug sessions at runtime.
- Graph Execution Cache: Graph nodes can now cache their output and skip re-execution when inputs have not changed. The cache is backed by a GPU texture comparator for accurate invalidation. Supported on Erosion, Thermal Erosion 2, and the LPB execution pipeline.
- Height Win Blend Mode: New multi-biome blend mode for textures and population output, where output data are kept if the height-map pixel at that location wins the Keep Higher or Keep Lower height blend mode.
- Grass Shape Selector for Polaris Terrain: Detail Template now exposes a Grass Shape option—Quad, Cross, TriCross, or Clump—when rendering texture-based grass on Polaris terrain. Previously, the shape was hardcoded to Clump.
- Terrain Layer Solid Color Prototype Tool: New editor utility window for quickly prototyping terrain layers by generating a solid-color diffuse texture without external art assets. This is useful for quick color production before investing in expensive PBR texture sets.
- Input and Output Nodes, Viewport Display: Input and Output nodes can now show their data directly in the graph editor viewport panels.
- Output Nodes, Data Passthrough: Generic Output nodes and data-channel output nodes—height map, weight map, and others—now support data passthrough for simpler graph wiring. Tree, Grass Instance, and Object output nodes are excluded.
- Set/Get Variable Nodes, Viewport Display and Data Passthrough: Set Variable and Get Variable nodes can now preview their texture or buffer data in the viewport. Set Variable also supports data passthrough to simplify graph wiring.
- Append Node, Unlimited Inputs: The Append node now accepts more than two input slots.
Improvements
- Processed Biome Mask as Graph Input: The fully processed biome mask—including falloff, painted regions, and polygon shapes—is now passed as input to the graph editor and terrain graph execution, replacing the previous raw polygonal and painted map.
- LPB, Default Biome Mask Graph on Creation: Newly created Local Procedural Biomes automatically use the default biome mask graph.
- LPB Inspector and Gizmos Update: Improved scene-handle drawing and gizmo display in the Local Procedural Biome Inspector.
- Node Optimizations, Erosion, Thermal Erosion 2, Remap, Slide, Spread, Thin Out: Performance and quality improvements across several computation-heavy nodes. Erosion and Thermal Erosion 2 also support graph execution cache, skipping re-simulation when their inputs have not changed.
- Erosion and Thermal Erosion 2, Immediate Execution: These nodes now support immediate execution directly from the node editor.
- Graph Editor, Keyboard Shortcuts for Sub-Windows: Press 1, 2, 3, or 4 to toggle the corresponding sub-window panels in the graph editor.
- Debug and Preview Config Sync: Debug and preview configuration is now kept in sync between the biome Inspector and graph editor.
- TerrainTile, RFloat Hole Map: The hole map is now populated using an RFloat render texture instead of R8, improving precision and compatibility.
- Compute Shaders, Exclude GLES3: Added GLES3 exclusion pragmas across all compute shaders for broader platform compatibility.
- Weight Blend Node, Default to 4 Slots: The Weight Blend node now defaults to four input slots instead of two.
- TerrainTile, Density Map Population Optimization: Reduced redundant work when populating detail density maps on terrain tiles.
- Erosion Node, Revised Default Values: Tweaked default parameter values for a better out-of-the-box erosion result.
Fixes
- SplineExtract Region Output with Unity Spline Container: Fixed an issue where the Region output from SplineExtract produced incorrect results when using a Unity Spline Container component containing many splines.
- Scene Height Collecting Loop: Fixed a logic error where an early return was used instead of continue, causing the height scan to stop prematurely on invalid tiles.
- Noise Node, OpenSimplex with Large Seeds: Fixed a pattern-generation issue in the OpenSimplex noise algorithm that produced incorrect output for large seed values.
- Biome Data Copy, Stale Canvas Texture: Canvas textures are now cleared before data is copied into them, preventing residual pixels from prior blending passes from leaking through.
- New Allocation Textures Not Cleared: Newly allocated render textures are now explicitly cleared before use across multiple systems—biome blending, erosion, and terrain tile—preventing garbage data from causing visual artifacts.
- Shape Node, Hemisphere Incorrect Output: Fixed a shader bug in the Hemisphere shape variant that produced an incorrect shape.
- Permute Graph, Not Marking Graph as Dirty: Permuting a graph now correctly marks it as modified, ensuring the Save Asset operation picks up the changes.
- Graph Editor, Window Closing on Maximize/Restore: Fixed a bug where the graph editor window unexpectedly closed when switching between maximized and normal window states.
- Graph Editor, Save Asset Error with Shared Graphs: Fixed an exception thrown when clicking Save Asset in a scene where multiple biomes share the same graph asset.
- Expose Property, Vector Override Not Applied: Fixed a bug where overriding a Vector-type exposed property had no effect.
- Centralize Pivot Point, Ignoring Rotation and Scale: The Centralize Pivot Point tool now correctly accounts for the object's rotation and scale when computing the pivot offset.
- RT Readback, Active Render Texture Corruption: Fixed render texture readback across Unity and Polaris terrain tiles incorrectly setting the active render texture to null after reading, which could corrupt rendering state mid-pipeline. The previous active render texture is now properly saved and restored.
- PolygonMask Shader, Uninitialized Variable Warning: Fixed an uninitialized variable warning in the PolygonMask shader.
V3.0.0
Note
Vista is stepping away from year-based version numbers. This is not a major update. However, the folder structure changed so files are grouped by edition: Personal, Indie, and Pro. From this version, all sample scenes are set up for URP first.
Back up your project before performing a clean update.
New features
- Node: N-gon Node, which generates a pyramid mask with a predefined edge count such as pentagon, hexagon, or octagon.
- Sample asset: New pine tree and grass texture.
Improvements
- Codebase: Most parts now have proper XML comments and implementation details.
- Documentation: New documentation site with User Guide, Scripting API, and Sample Codes available at https://docs.pinwheelstud.io/vista.
- Editor: Several UI/UX improvements, including the resolution selector.
- Editor: Fixed a Math Node editor error.
- Editor: Open Documentation in the node editor now points to the new documentation site.
- IDs: Use simpler ID strings.
- LPB: The Collect Scene Height toggle has been removed. The biome determines that automatically based on graph content.
Fixes
- Shader: Added proper array-bounds checks for the ClearBuffer shader.
- Spline: Enforced multiple-of-eight rules for world anchors and world-points output.
- Graph Editor: Fixed errors when pasting nodes from one graph to another, especially nodes with asset references such as Texture Output and Tree Output.
V2024.2.0
New features
- Hexgrid editing: use the local biome's anchors as a hexagonal grid with adjustable hex size and orientation (right-top), snap the biome's position to the hexgrid, and easily create procedural hexagonal terrains.
- New nodes: CopyToRT, DistanceField, and RidgedMountain.
- Shape node: added a hexagon shape.
- Noise node: added the OpenSimplex noise type.
- Editor: added an AutoSave button to the graph editor.
- Added more demo graphs.
Improvements
- Removed keywords in node shaders and used static branching.
- General UI, UX, and editor improvements.
Fixes
- Fixed an issue with the biome mask (polygon mask) renderer.
- Biome blending: fixed a texture-blending artifact where colors from lower biomes appeared on upper biomes.