Skip to content

Build Advanced Reusable Modules

Use ordinary Text Studio effects first. Use 3D modules when a reusable design must change contour, relief, sweep, deformation, decoration, post-processing, lifecycle behavior, layout, or spawned glyph objects.

  • Layout Transform modules reshape placement after the base layout.
  • Deformer Stack assets package ordered topology-preserving deformation.
  • Glyph Prefab Spawners attach repeated objects to glyphs or sockets.
  • Module Inputs expose reusable designer-controlled values.
  • Custom modules can register semantic material regions and reuse provided scratch buffers.

Keep the user guide simple: Module API names belong in the developer appendix. The main workflow should begin with the visible result and the asset that produces it.

Module mental model

Use ordinary Text Studio effects for presentation. Use 3D modules when a reusable design must change contour, relief, sweep, deformation, decoration, post-processing, lifecycle behavior, layout, or spawned glyph objects. Typed module roles use the existing staged pipeline rather than creating a second plug-in system.

Layout Transform and Deformer modules

Layout Transform modules reshape placement after the base layout. Deformer Module packages an ordered topology-preserving stack with spaces, bounds, and falloff. Stable combined, chunked, and hybrid output can reuse cached source geometry for warmed built-in deformation.

Glyph Prefab Spawner

Spawn Module owns one prefab instance per rendered glyph rather than per geometry layer. It can use glyph positions or named sockets, authored delay and lifetime in Play Mode, and a bounded maximum of 256 instances per module and host. Lowering the limit trims retained instances.

Module Inputs and custom modules

Module Inputs expose designer-controlled values on a reusable module. Custom modules may register semantic material regions, request retained scratch buffers, and declare stages, cache impact, required channels, bounds behavior, threading support, and geometry impact. Reusable ScriptableObject modules must keep per-host mutable state on a host-owned runtime object.