Skip to content

Troubleshooting and Reference

Nothing appears

Read Setup Status first. Confirm the base Text Studio component exists, the active text backend has a font with usable TTF or OTF outlines, at least one layer is enabled, the front face is closed when a visible cap is expected, and the current render pipeline has valid materials.

Geometry looks wrong

Use Live Preview diagnostics for material regions, normals, contour direction, bounds, wireframe, and sockets. Temporarily disable depth sweep, deformers, contour programs, and decorations until the responsible stage is clear.

Animation is expensive

Begin with the Realtime or Massive Text profile. Prefer combined or chunked output. Lower rebuild-heavy Contour Bloom and Bevel Pulse frequency before reducing ordinary transform effects. Use Runtime Statistics only while diagnosing.

Asset and window reference

Customer-facing assets include 3D Themes, Project Theme Settings, Control Themes, 3D Styles, Prepared Fonts, Bevel Profiles, extrusion paths, contour assets, generated contours, contour programs, tube profiles, Material Sets, spatial placements, interactions, layout modules, deformers, spawners, and module inputs. Customer-facing windows include the 3D Gallery, Style Browser, Style Compare, Material Set Browser, Live Preview, Glossary, and Font Baker.

Support

Include the Unity version, render pipeline, Text Studio and Text Studio 3D versions, active backend and font, style or layer asset, performance profile, a screenshot of Setup Status, and a minimal scene when requesting support.

Essential scripting API

TextStudio3DText is the primary runtime facade. Use property setters for normal configuration, ApplyPreset or ApplyPerformanceProfile for a starting point, RebuildGeometry after in-place asset edits, and ScheduleGeometryBuild when several topology edits should coalesce. Unity object and mesh operations are main-thread work.

using TextStudio.ThreeD;

void ConfigureSign(TextStudio3DText sign)
{
sign.ApplyPreset(BuiltInExtrudeStyles.Preset.Bevelled);
sign.ApplyPerformanceProfile(TextStudio3DPerformanceProfile.Realtime);
sign.AutomaticLOD = true;
sign.RebuildGeometry();
}

Prewarm and pool

PrewarmGlyphs warms reusable geometry without changing the visible mesh and reports whether the current configuration is renderer-specific. TextStudioEmitter owns complete temporary 3D hosts, prewarms registered presets, and returns each host only after its normal Hide lifecycle. Use TextStudio3DControlPool only for repeating interactive control prefabs.

emitter.Prewarm();
TextStudioEmissionHandle hit =
emitter.EmitValue(damagePreset, amount, target);
// Optional runtime update or manual dismissal:
hit.SetValue(updatedAmount);
hit.Dismiss();

Runtime overrides and topology

Visibility, tint, compatible material changes, and supported visual channels can update without rebuilding topology. Changes to text, outline source, contours, bevels, body, sweep, decorations, grouped geometry, or topology modules require a build. ScheduleGeometryBuild returns one coalesced request whose state can be queried or canceled before dispatch.

Glyph handles, ranges, raycasts, and materials

TryGetGlyphHandle resolves by visible Text Studio glyph identity and optionally authored layer. A handle becomes stale after topology changes. Use current handles or TextStudio3DGlyphRange for tint, material, force, and interaction commands. EnsureMeshCollider after topology changes before RaycastGlyph.

renderer.EnsureMeshCollider();
if (renderer.RaycastGlyph(ray, 50f, out TextStudio3DGlyphHandle handle,
out MaterialRegion region, out RaycastHit hit))
{
renderer.SetGlyphColorTint(handle, new Color32(255, 180, 40, 255));
}

SetGlyphMaterial works on Per Letter and Physical outputs because those modes own independent renderers. Region-targeted overloads can address Front Face, bevels, sides, back, trim, or Decorations. For Combined output use color tint or material-channel effects unless the complete mesh material assignment is being changed.

Interactions, forces, and sockets

ApplyInteractionPreset and ResetInteraction drive the same retained state used by the no-code controller. Force commands act on current glyph identity and should be reset or contained according to the gameplay lifecycle. Named sockets provide stable attachment points without exposing generated hierarchy details.

Authoring assets and extension points

Supported authoring contracts include Font3D, Extrude3DStyle, TextStudio3DLayer and its nine specifications, BevelProfile, contour assets and programs, tube profiles, Material Sets, extrusion path assets, module interfaces, style compilation, and explicit geometry validation. Internal generators, caches, renderer bookkeeping, pooled chunks, and the embedded polygon library are not customer APIs.

Inspector and asset reference

  • TextStudio3DText inspector: Setup Status, Style, Geometry Layers, Materials, Output, Quality, Interaction, Geometry Modules, Runtime Statistics, Actions, and Frozen Snapshot.
  • 3D Style and Layer inspector: nine specifications, layer ordering, selection, scope, Stack or Overlay, and validation.
  • Bevel Profile: profile graph, anchors, tangents, samples, snapping, mirroring, and scene handles.
  • Contour Asset, Generated Contour, and Contour Program: reusable shapes and ordered boolean composition.
  • Contour Tube Profile and Contour Repeats: continuous and discrete contour decorations.
  • Material Set and mapping: nine semantic regions and coordinate projection.
  • Spatial Placement and Extrusion Path assets: glyph arrangement versus front-to-back sweep.
  • Prepared Font and Font Baker: runtime outline coverage and multilingual preparation.
  • Interaction, controls, layouts, navigation, pools, deformers, spawners, and module inputs: reusable production systems.
  • Gallery, Style Browser, Style Compare, Material Set Browser, Live Preview, Glossary, Font Baker, and validation samples: customer authoring windows and references.

Inspector coverage, part 1 of 5

Inspector or surface

Controls and ownership

Primary manual coverage

TextStudio3DText main inspector

Setup, style, layers, materials, output, quality, interaction, modules, statistics, actions, and freeze.

First 3D result; geometry model; animation; output

Extrude3DStyle

Shared layer stack, local detachment, order, Stack or Overlay, selection, Solo, and reset.

Geometry model; Build a Style Layer by Layer

TextStudio3DMaterialSet

Assignments for the nine semantic regions without changing geometry or mapping.

Design Materials and Surfaces

BevelProfile

Profile graph, anchors, tangents, samples, smoothing, snapping, mirroring, and handles.

Bevel Profiles and Bevel Profile Assets

QuadraticBezierExtrusionPathAsset

Start, control, end, sampling, banking, roll, taper, and closed state.

Placement Versus Extrusion Sweep

SplineExtrusionPathProvider

Container, curve index, seed up, banking, roll, scale, samples, refresh, and snapshot.

Unity Splines Extrusion; 3D Integrations

TextStudio3DContourAsset

Validated custom vector loops and contour identity.

Choose a Contour Source; SVG Import

TextStudio3DGeneratedContourAsset

Rounded rectangle, pill, plate, shield, badge, banner, and frame generation.

Generated Contours

TextStudio3DContourProgram

Input source plus ordered union, subtraction, intersection, and clipping operations.

Build a Contour Program

TextStudio3DContourTubeProfile

Reusable validated closed section for contour tubes.

Contour Tubes

Inspector coverage, part 2 of 5

Inspector or surface

Controls and ownership

Primary manual coverage

TextStudio3DSpatialPlacement

Helix, cylinder, sphere band, tunnel, staircase, spatial grid, orientation, and presets.

Arrange Text in Space

TextStudio3DInteractionController

Hover, repel, magnet, ripple, blast, gravity, target, strength, radius, reset, and motion policy.

Animate 3D Text and Add Interaction

Font3D

Prepared outline coverage, source ownership, fallback, and optional embedded data.

Prepare Fonts and Languages

Font Baker

Source, target, character set, fallback, spacing, kerning, mesh quality, and validation.

Font Baker Workflow

LayoutElementModule

Post-layout transform without rewriting source or placement.

Build Advanced Reusable Modules

DeformerModule

Ordered deformation stack, semantic space, bounds, falloff, and stable preview.

Deformer Stacks; Module Mental Model

SpawnModule

One prefab per rendered glyph, sockets, delay, lifetime, limits, and retained instances.

Glyph Prefab Spawner

Variable holder and module inputs

Designer-controlled values mapped into reusable module assets.

Module Inputs and Custom Modules

3D Gallery and Style Compare

Search, compare, apply, duplicate, detach, and validate real style recipes.

Learn From the Shipped Samples; 80-Style Gallery

Material Set Browser

Browse reusable looks and inspect region assignments before applying.

Material Sets; Learn From the Shipped Samples

Inspector coverage, part 3 of 5

Inspector or surface

Controls and ownership

Primary manual coverage

Freeze and Frozen Snapshot

Persistent static output, ownership, validation, unfreeze consequences, and player stripping.

Freeze a Finished Title

Runtime Statistics

Glyph, entry, vertex, triangle, mesh, renderer, material, cache, and rebuild state.

Runtime Statistics

Glyph Sockets

Center, front, back, top, bottom, and contour-fraction attachment poses.

Named Glyph Sockets

Module3DBase

Typed roles, stages, channels, cache impact, bounds, lifecycle, and material-region registration.

Module Mental Model; Developer Reference

Mesh export

Output ownership, real generated mesh, materials, pipeline family, and validation.

Strict Freeze; Output and Performance

TextStudio3DButton

Click behavior and normal, hover, pressed, selected, disabled, and validation states.

World-Space UI

TextStudio3DToggle

Boolean value, state visuals, callbacks, and navigation.

Buttons, Toggles, Sliders, Lists, and Selectors

TextStudio3DSlider

Range, value, step, visual fill, callbacks, and pointer or navigation input.

Buttons, Toggles, Sliders, Lists, and Selectors

TextStudio3DList

Items, selection, navigation, events, and pooled presentation.

Buttons, Toggles, Sliders, Lists, and Selectors

TextStudio3DInputField

Value, placeholder, length, validation, focus, caret, and optional keyboard path.

Input Field

Inspector coverage, part 4 of 5

Inspector or surface

Controls and ownership

Primary manual coverage

TextStudio3DSelector

Option value, previous or next input, display, and change events.

Buttons, Toggles, Sliders, Lists, and Selectors

TextStudio3DPointerRaycaster

Camera, layers, distance, hover, press, selection, and world-space ray input.

Pointer, Navigation, Layout, and Pools

TextStudio3DNavigationGroup

Ordered focus traversal and independent selected value.

Pointer, Navigation, Layout, and Pools

TextStudio3DControlLayout

Linear, grid, circular, spline, or volume placement with shared spacing and orientation.

Pointer, Navigation, Layout, and Pools

TextStudio3DControlTheme

Shared label, surface, depth, scale, and interaction-state treatment.

Control Foundation and States

TextStudio3DControlPool

Bounded prefab reuse with restored value, validation, focus, events, and framing.

Pointer, Navigation, Layout, and Pools

TextStudioEmitter

Shared temporary host emission with profiles, values, stacking, following, prewarming, lifecycle events, and bounded pooling.

Prewarming and Bounded Caches

3D Authoring Glossary

Product vocabulary for layers, contours, surfaces, paths, output, caches, and modules.

Troubleshooting and Reference

Input System integration

Action-reference mappings for pointer, navigation, submit, and text entry.

3D Integrations

XR Interaction Toolkit integration

XR hover, select, ray, and lifecycle bridge for world-space controls.

3D Integrations

Inspector coverage, part 5 of 5

Inspector or surface

Controls and ownership

Primary manual coverage

UniText 3D sample

Shaped mixed-script text converted into matching 3D outlines.

Prepare Fonts and Languages; 3D Integrations

Unity Splines integration

Base spatial placement plus guarded depth-extrusion provider.

Placement Versus Extrusion Sweep; 3D Integrations

Runtime public API

Presets, output, rebuild, prewarm, pools, overrides, handles, raycasts, regions, and sockets.

Essential Scripting API