Skip to content
Curious Trove
Upgrade Guide Migration OctoShaper 1.2Updated

Upgrading to 1.2

1.2 keeps your existing graphs working. Node IDs, connections and saved values are preserved. A few things moved or became stricter, and one experimental node was removed. This page lists everything you need to check.

Checklist

  1. Back up your project, or commit it to version control.
  2. Import OctoShaper 1.2 and let Unity finish. The dependency installer adds any missing Burst, Collections or Mathematics package.
  3. Replace any experimental Draw Meshes nodes (see below) before regenerating code.
  4. Run Tools > OctoShaper > Generate Graph Code and let Unity compile.
  5. Open your main graphs once. Check the Preview Stage and the Console.
  6. If you call node methods from C#, await the ones that now return ValueTask.

The minimum Unity version is still 2022.3.

Draw Meshes was removed

The experimental Draw Meshes node is gone. Draw Instanced and Draw Instanced Indirect now have an explicit Mesh selector:

Before After
Draw Meshes Realize Meshes → Draw Instanced, Mesh: Attribute mesh
Draw Instanced with a mesh asset Unchanged. Mesh: Constant with your asset

Experimental mesh graphs made during the 1.2 previews may need their affected nodes recreated. See Procedural meshes.

Moved categories

Nodes Now under
Draw Instanced, Draw Instanced Indirect, Assign Mesh, prefab and primitive spawning Rendering
Translate, Rotate, Jitter Positions / Rotation / Scale, Randomize Rotation Spatial (was Mutators)
Material overrides Rendering → Materials
Assign Parents Utilities

Existing graphs keep their connections and behavior. Only the search location changed.

Legacy nodes

These nodes still run in saved graphs but no longer appear in node search:

Legacy node Use instead
Merge ElementSets The built-in Merge node (accepts any number of links)
Create Parent Element, Assign Parent Element Create Assembly Roots, Assign Parents
Sample From Surface, Sample From Surface Grid Sample Mesh Surface, Sample Mesh Surface Grid
Triangulate Points (Expanders) Triangulate Points (Geometry)

The node catalog marks these with a Legacy badge. Use the Legacy filter to list them.

Behavior worth knowing

  • Attract Points To Position now accepts constants or per-point attributes for Target Position, Strength, Radius and Falloff Power. Defaults are unchanged.
  • Generate In Edit Mode now turns on and locks Generate On Enable.
  • Procedural prefabs are created and named directly in the selected Project folder.
  • Colors: the original color type is now labelled Color (Core). New Unity color parameters use UnityEngine.Color, and old graph data is not reinterpreted.

For C# users

  • Heavy geometry and distribution node methods return ValueTask. Await direct calls. Graph-level synchronous execution still works.
  • Evaluate() and EvaluateAsync() join GenerateSync() / GenerateAsync() on the executor.
  • New bindings: ColorValueOrAttribute, TextureValueOrAttribute, Vector2ValueOrAttribute.
  • New editor APIs: read-only GraphPresentation and experimental JSON graph automation.

The full list of changes is in the changelog.

Frequently asked questions

Will my 1.1 graphs still work in 1.2?
Yes. Node IDs and serialized graphs are preserved, and legacy nodes keep working even though they're hidden from search. Regenerate graph code after importing.
What replaces Draw Meshes?
Realize Meshes followed by Draw Instanced or Draw Instanced Indirect, with the Mesh selector set to Attribute and the name mesh.
Did the minimum Unity version change?
No, it is still Unity 2022.3.