Text Studio — 3D API Reference
This reference is generated from the shipped Text Studio — 3D assemblies and their XML documentation.
TextStudio.ThreeD
Section titled “TextStudio.ThreeD”- Back3DSpec: Back-cap closure, tessellation, and relief authoring for one layer.
- BevelJoinType: Bevel join types for polygon offsetting.
- BevelProfile: 2D cross-section of a bevel, swept around a glyph contour. A profile is an ordered list of (offsetXY, offsetZ) samples that define a polyline…
- BevelSides: Which ends of a layer’s extrusion receive a bevel. When layers are stacked, bevels only belong on the outward-facing ends of the overall solid…
- BevelSpec: One end of a layer’s bevel (either front or back cap), with independent size, thickness, offset, profile, join style, and miter-limit controls.
- Body3DSpec: Depth, cross-section, and sweep authoring for the layer body.
- BodyShell3DMode: Whether the swept glyph body is solid or reduced to a bounded wall shell.
- BodyShell3DSpec: Independent wall recipe for the extruded body cross-section.
- BodySweep3DMode: How the extruded body travels from its back face to its front face.
- BodySweep3DSpec: Body sweep selection independent from front-face treatment.
- BuiltInBevelProfiles: Code-defined library of reusable TextStudio.ThreeD.BevelProfile assets. Instances are lazily allocated as hidden scriptable objects…
- BuiltInBevelProfiles.Id: Enum-friendly IDs for the built-in profiles.
- BuiltInExtrudeStyles: Code-defined 3D extrusion preset library. No shipped .asset files required. Resolved at runtime when no TextStudio.ThreeD.Extrude3DStyle is…
- BuiltInExtrudeStyles.Preset: API type
- BuiltInExtrudeStyles.PresetCategory: API type
- BuiltInExtrudeStyles.Recipe: Public-data description of a built-in style. Every call to TextStudio.ThreeD.BuiltInExtrudeStyles.GetRecipe(TextStudio.ThreeD.BuiltInExtrudeStyles.Pr…
- BuiltInMaterials: Shared runtime material library used by the built-in 3D styles. Shipped material assets live under Resources so they can be resolved from any Asset…
- BuiltInMaterialSets: Curated, package-relative material sets for beginner-friendly surface styling.
- BuiltInMaterialSets.Preset: API type
- Cap3DMode: Whether one end of the extruded layer is closed by a cap or intentionally open.
- CapRefinement3DMode: Controls how a closed cap is tessellated before optional relief deformation.
- CapRefinement3DSpec: Independent topology refinement recipe for one closed cap.
- CompiledTextStudio3DStyle: Validated, resolved snapshot consumed by the runtime geometry pipeline. Authored stroke inheritance is flattened once when the style changes rather…
- Contour3DSpec: Contour selection, expansion, and outline-ring authoring for one layer.
- ContourLoop: A single closed contour loop (sequence of 2D points).
- ContourRepeat3DCornerPolicy: Policy applied to sharp points on a repeated contour path.
- ContourRepeat3DDistribution: Rule used to resolve the number of repeated contour attachments.
- ContourRepeat3DProvider: Built-in geometry providers repeated at deterministic physical intervals around contours.
- ContourRepeat3DSpec: Discrete geometry repeated at stable physical intervals around selected cap contours.
- ContourState: Normalized contour data for a single glyph. Outer loops are CCW, inner loops (holes) are CW.
- ContourTube3DSpec: A closed circular or custom cross-section swept around glyph contours.
- ContourTube3DSurface: Terminal cap surfaces that can receive a contour tube.
- Decoration3DProfileRecipe: Built-in cross-sections for material-addressable cap decorations.
- Decoration3DSpec: Geometry attached to or emitted from the primary layer surfaces.
- Deformation3DSpec: Topology-stage deformation applied through the depth of one layer.
- Deformer3DAxis: API type
- Deformer3DSpace: API type
- Deformer3DSpec: An ordered, inspectable deformation operation in a TextStudio.ThreeD.DeformerModule.
- Deformer3DType: API type
- DeformerBounds3D: Bounds and edge falloff used by one mesh deformer. Automatic bounds follow the selected semantic coordinate space; custom bounds are expressed…
- DeformerModule: Applies an ordered stack of continuous, topology-preserving operations to every generated 3D glyph region before mesh assembly.
- DepthShape: Depth-axis shape modifiers applied to the body between bevels. These turn a straight extrusion into a tapered column, twisted shaft, or bulging…
- Edge3DSpec: Bevel and boundary-edge treatment shared by the front and back ends.
- Extrude3DStyle: Reusable 3D text style preset. Controls extrusion, bevels, and material assignment. Create via Assets → Create → Text Studio → 3D → Extrude Style…
- ExtrusionPathAsset: Serializable extrusion-path contract for reusable authoring assets. Implementations must expose a deterministic identity that changes whenever their…
- ExtrusionPathFrameSample: Additional cross-section controls layered over a path’s sampled frame.
- FaceRelief3DMode: Cap-face shaping independent from the layer’s body sweep.
- FaceRelief3DSpec: Controls the relief surface generated across the front cap.
- Font3D: Generated source-outline companion for a TMP font. It contains only the exact font bytes and their provenance. Reusable generated geometry lives in…
- Front3DSpec: Front-cap closure, tessellation, and relief authoring for one layer.
- GlyphMeshData: Raw mesh data for a single generated glyph, before assembly into final Unity Mesh.
- IExtrusionPath: Abstraction for a 3D extrusion path used by TextStudio.ThreeD.BodySweep3DMode.Path. Implementations sample a position + orientation frame at…
- IExtrusionPathCacheIdentity: Stable content identity for extrusion paths that may participate in shared geometry caches. Implementations must change…
- IExtrusionPathFrameProfile: Optional advanced frame contract for an TextStudio.ThreeD.IExtrusionPath. Existing path implementations remain valid without it and receive an open…
- ITextStudio3DAuthoring: Focused authoring and style contract for a Text Studio 3D renderer.
- ITextStudio3DBuilds: Focused geometry build, validation, and prewarming contract.
- ITextStudio3DContourModifier: Extends the pre-geometry pipeline by editing glyph contours through a build-scoped module context.
- ITextStudio3DDecorationProvider: Adds module-owned decorative geometry to generated glyph entries.
- ITextStudio3DDeformer: Transforms generated glyph buffers after per-glyph geometry has been built.
- ITextStudio3DFaceReliefProvider: Supplies custom front or back face relief during the geometry build.
- ITextStudio3DFeedbackOutput: Optional interaction adapter that translates generic control feedback into device haptics.
- ITextStudio3DForces: Focused force and physical-letter control contract.
- ITextStudio3DGlyphs: Focused stable-handle contract for querying and changing generated glyph output.
- ITextStudio3DLifecycleModule: Receives host attachment and activity transitions for reusable module assets.
- ITextStudio3DOutgoingHandoffModule: Participates in the outgoing half of an overlapping text replacement. This capability is independent of the module’s normal geometry, visual, and…
- ITextStudio3DOutgoingMotionDriver: Exclusive outgoing capability for the module that owns retained-glyph motion. One enabled driver is selected by execution priority; non-driver…
- ITextStudio3DPostProcessor: Processes the final assembled mesh after glyph geometry has been combined.
- ITextStudio3DSweepPathProvider: Configures a custom depth sweep path before glyph body generation.
- ITextStudio3DTextInputTarget: Accepts focus, editing, selection, and submission commands from a spatial keyboard or input adapter.
- ITextStudio3DVisualModule: Observes final per-frame glyph state without mutating the shared animation pipeline.
- LayerScope3DMode: Semantic group that receives a layer when its selection matches.
- LayerSelection3DMode: How an authored layer chooses the visible glyphs it affects.
- LayerSelection3DSpec: Selects which visible glyphs receive a layer without changing the layer’s geometry recipe. Selection is evaluated before stacking, so omitted layers…
- LayerStacking3DMode: How an authored layer relates to the preceding depth stack.
- LayoutElementModule: Applies curve-weighted position, rotation, and scale after base text placement and before mesh assembly.
- LayoutModuleScope: API type
- LinearExtrusionPath: Identity path: reproduces the original straight-Z extrusion. Useful as a default and for tests.
- LODParams: Computed LOD parameters for a specific distance/quality band.
- MaterialRegion: Built-in material regions for submesh assignment. Active custom modules may register build-local values beginning after…
- MeshOutputMode: Output modes for 3D mesh assembly.
- Module3DBase: Base class for Text Studio 3D modules that plug into the TextStudio.ThreeD.TextStudio3DText geometry pipeline. Modules are for genuinely 3D-specific…
- ModuleContext: Context passed to modules during pipeline execution. Contours are detached copies of the font-outline cache, so pre-geometry edits cannot corrupt…
- ModuleExecutionStage: API type
- ModuleVariableType: API type
- OutgoingGlyphModule: Retains the rendered 3D glyphs when the hub replaces text in Overlap Handoff mode. The module is a stateless asset. Every host owns its own bounded…
- PathMaterialMapping3DMode: UV policy for surfaces that travel along an extrusion path.
- Placement3DSpec: Layer-to-layer placement independent from contour and geometry construction.
- QuadraticBezierExtrusionPath: Quadratic Bézier path between (0,0,0) → (0,0,-depth), with an optional mid- control point that bends the path out of the straight line. Useful for…
- QuadraticBezierExtrusionPathAsset: Reusable quadratic extrusion sweep with deterministic content identity. Inspector edits and TextStudio.ThreeD.QuadraticBezierExtrusionPathAsset.Confi…
- QualityTier: Quality tiers for 3D geometry generation.
- QualityTierSelector: LOD-based quality tier selector for Text Studio 3D rendering. Automatically adjusts geometry quality based on screen-space size.
- SpawnModule: Spawns pooled objects at generated glyph positions after mesh assembly.
- StrokeAlignment: Alignment mode for the stroke (true outline) ring, relative to the source glyph silhouette. Picture a pen of width width tracing the glyph boundary…
- StrokeInheritMode: Cascade policy controlling how a layer’s strokes relate to the previous (already-resolved) layer’s strokes. Works like CSS inheritance: Override…
- StrokeSpec: Parameters for the “true outline” stroke pass. When TextStudio.ThreeD.StrokeSpec.width is greater than zero, the geometry generator replaces the…
- SubmeshRange: A contiguous range of indices corresponding to a single TextStudio.ThreeD.MaterialRegion.
- Surface3DSpec: Material assignments and mapping for every currently supported layer region.
- SurfaceMapping3DMode: Texture-coordinate projection used by one layer’s generated surfaces.
- SurfaceMapping3DOverride: Overrides texture mapping for one built-in semantic surface.
- SurfaceMapping3DSet: Default texture mapping plus optional semantic-surface overrides. Surface boundaries use the same region metadata as materials, exports, LODs, and…
- SurfaceMapping3DSpec: Projection and transform policy for generated surfaces.
- TextStudio3DAnimationBackend: API type
- TextStudio3DAttachmentOrientation: Primary direction used by contour attachments and named socket rotations.
- TextStudio3DBackingShape: Canonical generated backing silhouettes.
- TextStudio3DBoundsBehavior: API type
- TextStudio3DBoundsContourSource: Canonical contour fitted dynamically around the incoming text contour bounds.
- TextStudio3DBuildRequest: Renderer-owned token for a coalesced deferred geometry build. Requests can be canceled only before dispatch.
- TextStudio3DBuildRequestState: API type
- TextStudio3DBuiltInEffectIds: Stable identifiers for effects included with Text Studio 3D.
- TextStudio3DButton: Provides a pressable 3D control that renders a text label and raises a click event on activation.
- TextStudio3DChannels: Defines and registers the stable material, vertex, and topology channel IDs supported by Text Studio 3D effects.
- TextStudio3DConcurrentPressPolicy: API type
- TextStudio3DContourAsset: Reusable serialized 2D contour data for logos, symbols, and program operands.
- TextStudio3DContourIssue: Problems that make a 2D contour unsafe for deterministic 3D geometry generation.
- TextStudio3DContourLoopInfo: Immutable information about one arc-length-parameterized contour loop.
- TextStudio3DContourProgram: Reusable ordered contour composition. It can begin from the incoming text contour, its fitted bounds, or a contour asset, then apply transformed…
- TextStudio3DContourProgramOperation: One ordered boolean or clipping operation in a contour program.
- TextStudio3DContourProgramSource: Starting contour used by a reusable contour program.
- TextStudio3DContourProgramStep: Serializable parameters for one reusable contour-program operation.
- TextStudio3DContourSample: A position and stable local frame sampled at physical distance along a contour loop.
- TextStudio3DContourSampler: Detached, immutable arc-length parameterization of a canonical contour. Outer loops are indexed first, followed by holes. Sampling wraps around each…
- TextStudio3DContourSourceAsset: Reusable contour source accepted by contour programs.
- TextStudio3DContourTubeProfile: Reusable closed cross-section swept along a glyph contour by TextStudio.ThreeD.ContourTube3DSpec. Points use normalized radial (X) and face-normal…
- TextStudio3DContourUtility: Opt-in contour validation and repair for imported or procedurally authored outline data. Normal text generation does not run this diagnostic pass…
- TextStudio3DContourValidationReport: Detailed result from an explicit contour validation or repair pass.
- TextStudio3DControl: Interaction-system-independent base for spatial controls. Every pointer keeps an independent hover and press session, while controls decide whether…
- TextStudio3DControlLayout: Arranges an ordered set of spatial controls in linear, grid, circular, spline, or volume layouts.
- TextStudio3DControlLayoutMode: API type
- TextStudio3DControlPool: Owns a bounded Unity object pool for reusable world-space control prefab instances.
- TextStudio3DControlState: API type
- TextStudio3DControlTheme: Maps combined hover, focus, press, selection, disabled, and error states to reusable control visuals.
- TextStudio3DControlVisual: Applies a control’s resolved theme state to label geometry, surface renderers, and specialized moving parts.
- TextStudio3DControlVisualKind: API type
- TextStudio3DControlVisualStyle: Describes label, surface, scale, and depth feedback for one combined control state.
- TextStudio3DDropdown: Combines a selected 3D option label with a reusable list panel that can be opened and closed.
- TextStudio3DDwellIndicator: Tracks uninterrupted gaze hover, presents normalized dwell progress, and optionally activates its control.
- TextStudio3DEntryCollection: Allocation-free indexed and pattern-enumerable view over all generated glyph-layer entries in a module build.
- TextStudio3DEntryCollection.Enumerator: Pattern enumerator over build-scoped generated entry views.
- TextStudio3DEntryView: Read-only view over one generated glyph-layer entry. The view references the active module context and allocates no wrapper objects.
- TextStudio3DFeedbackKind: API type
- TextStudio3DFeedbackRequest: Describes semantic control feedback and an optional normalized haptic impulse requested for one interaction.
- TextStudio3DFeedbackRequestEvent: Unity event that publishes generic visual, audio, or haptic feedback requests.
- TextStudio3DForceMode: API type
- TextStudio3DGeneratedContourAsset: Reusable procedural backing source for contour programs.
- TextStudio3DGeometryCacheStats: Read-only occupancy, memory, hit, insertion, replacement, and eviction counters for the shared glyph-geometry cache.
- TextStudio3DGeometryImpact: API type
- TextStudio3DGeometryValidationReport: Aggregate result from validating one or more generated glyph meshes.
- TextStudio3DGeometryValidator: Reusable, allocation-stable validator for generated glyph mesh buffers. One validator instance owns its scratch storage and can be reused across…
- TextStudio3DGlyphCollection: Allocation-free indexed and pattern-enumerable view over visible glyph identities in a module build.
- TextStudio3DGlyphCollection.Enumerator: Pattern enumerator over build-scoped visible-glyph views.
- TextStudio3DGlyphEntryCollection: Allocation-free pattern-enumerable view over the generated layer entries belonging to one visible glyph.
- TextStudio3DGlyphEntryCollection.Enumerator: Pattern enumerator over generated entries for one visible glyph.
- TextStudio3DGlyphHandle: Stable reference to one visible-glyph and authored-layer entry that becomes stale when its owner replaces topology.
- TextStudio3DGlyphHandleCollection: Allocation-free view of every generated layer entry addressed by a visible-glyph range. Enumerated handles remain stable until the owning renderer…
- TextStudio3DGlyphHandleCollection.Enumerator: Pattern enumerator that resolves current handles without allocating a collection.
- TextStudio3DGlyphLibraries: Explicit ownership for prepared geometry loaded from AssetBundles or Addressables. Dispose the returned token before unloading the content that owns…
- TextStudio3DGlyphLibrary: Persistent, material-neutral geometry for exact font, topology, and quality variants. A library can serve multiple fonts and styles without…
- TextStudio3DGlyphLibraryRegistration: Owns one runtime glyph-library registration and releases it when disposed.
- TextStudio3DGlyphRange: Topology-versioned selection of consecutive Text Studio visible glyph identities. The range becomes stale when the renderer replaces or clears its…
- TextStudio3DGlyphView: Read-only build-scoped view of one visible glyph and all generated layer entries that belong to it.
- TextStudio3DHandedness: API type
- TextStudio3DInputContentType: API type
- TextStudio3DInputField: Provides a focusable spatial text field with caret, selection, content filtering, masking, validation, and submission.
- TextStudio3DInteractionContext: Immutable pointer snapshot carrying interaction identity, phase, world pose, pressure, time, and optional feedback output.
- TextStudio3DInteractionContextEvent: Unity event that publishes immutable spatial interaction snapshots.
- TextStudio3DInteractionController: No-code controller that applies a tuned force or motion preset to a Text Studio 3D renderer, optionally tracking a world-space target for continuous…
- TextStudio3DInteractionPhase: API type
- TextStudio3DInteractionPreset: API type
- TextStudio3DInteractionSource: API type
- TextStudio3DKeyboardCommand: API type
- TextStudio3DKeyboardKey: Maps activation of a spatial control to one character-editing or keyboard command.
- TextStudio3DLayer: Single layer in a Text Studio 3D layer stack. Controls extrusion depth, bevels, depth-axis shaping, material assignment, and topology. Its…
- TextStudio3DLifecycleEvent: Allocation-free lifecycle notification emitted by TextStudio.ThreeD.TextStudio3DText. A build request ID of zero means the topology was produced by…
- TextStudio3DLifecycleState: API type
- TextStudio3DList: Presents an ordered option collection as selectable 3D text rows with disabled-item handling.
- TextStudio3DMaterialRegionDefinition: Describes one semantic material region registered by a custom 3D module.
- TextStudio3DMaterialRegionRegistry: Per-renderer, per-build registry for semantic regions emitted by custom geometry modules. Built-in region values remain stable at 0-8; custom values…
- TextStudio3DMaterialSet: Reusable material assignments for all built-in 3D surface regions. Applying a set changes materials only and preserves the layer’s mapping policy.
- TextStudio3DMenuAction: UnityEvent-friendly menu command for a 3D Button.
- TextStudio3DMenuActionType: API type
- TextStudio3DMenuController: Shows one spatial menu panel at a time and maintains bounded push/pop navigation history.
- TextStudio3DMenuFactory: Instantiates production spatial UI prefabs resolved through a caller-supplied library.
- TextStudio3DMenuPrefabLibrary: Resolves package-provided production prefabs by stable spatial UI role without requiring a fixed package path.
- TextStudio3DMenuTransition: Animates a spatial panel between hidden and shown local poses using unscaled time.
- TextStudio3DMeshChannels: API type
- TextStudio3DMeshDetailPreset: Coordinated polygon-detail presets for procedural 3D text.
- TextStudio3DModuleDescriptor: Immutable capability report for one extension module. The conservative defaults on TextStudio.ThreeD.Module3DBase keep raw callback modules safe…
- TextStudio3DModuleRole: API type
- TextStudio3DModuleThreading: API type
- TextStudio3DNamedSocket: A reusable named socket definition. The semantic anchor is resolved from the current rendered glyph, then the offset and Euler rotation are applied…
- TextStudio3DNavigationDirection: API type
- TextStudio3DNavigationGroup: Owns focus navigation across spatial controls using explicit links, order, or position-based scoring.
- TextStudio3DNavigationLinks: Defines optional per-direction focus targets that override a navigation group’s spatial resolution.
- TextStudio3DOption: Stores a stable ID, label, presentation assets, interactability, and application metadata for one selectable item.
- TextStudio3DOptionEvent: Unity event that publishes a defensive option snapshot after selection changes.
- TextStudio3DOptionPresentation: Arranges authored option controls as a flat list, depth stack, rotary wheel, or radial menu.
- TextStudio3DOptionPresentationMode: API type
- TextStudio3DOutgoingHandoffContext: Read-only context supplied before the base text plan is replaced. Modules must copy any state that needs to survive the callback and use…
- TextStudio3DOutgoingSimulationMode: Simulation backend used for text retained during an overlapping replacement.
- TextStudio3DOutlineCacheStats: Observable ownership and lifetime counters for one renderer’s parsed font-provider registry, glyph-outline LRUs, and parser-specific codepoint…
- TextStudio3DPerformanceProfile: API type
- TextStudio3DPlacementPattern: API type
- TextStudio3DPlacementPreset: API type
- TextStudio3DPointerButton: API type
- TextStudio3DPointerCapturePolicy: API type
- TextStudio3DPointerRaycaster: Routes scripted, mouse, touch, ray, gaze, and direct pointer sessions to colliders owned by spatial controls.
- TextStudio3DPrewarmResult: Reports bounded exact-glyph preparation, reuse, unavailable variants, invalid geometry, truncation, and unsupported configurations.
- TextStudio3DProgressBar: Presents a bounded numeric value through a 3D label and an optional local-scale fill transform.
- TextStudio3DProjectSettings: Canonical Text Studio 3D project configuration. Prepared font bindings and reusable authoring coverage live here while the prepared mesh payload…
- TextStudio3DReleaseActivationPolicy: API type
- TextStudio3DRepositionHandle: Moves a target transform along a pointer-defined drag plane while retaining the standard spatial control lifecycle.
- TextStudio3DRuntimeGeometryPolicy: Determines whether one text object may generate missing glyph geometry or must resolve exact variants from the canonical project store or registered…
- TextStudio3DRuntimeOverrideFields: API type
- TextStudio3DRuntimeOverrides: Immutable, non-destructive runtime layer for visibility, depth, tint, material, and bounded quality overrides.
- TextStudio3DSelector: Cycles through an ordered option collection and publishes index, item, and label selection events.
- TextStudio3DSlider: Maps pointer movement or programmatic activation onto a bounded numeric range and optional 3D thumb.
- TextStudio3DSocketKind: Semantic anchors available on every current glyph handle.
- TextStudio3DSocketPose: Immutable world-space socket pose resolved from the current rendered glyph state. Direct semantic lookup uses the outward normal as up and the face…
- TextStudio3DSpatialGridFlow: API type
- TextStudio3DSpatialKeyboard: Dispatches spatial key commands to an explicit input field or the field that currently owns global text focus.
- TextStudio3DSpatialPlacement: Component-provided spatial placement for the shared Text Studio placement pipeline. It computes only position/orientation; ordinary Text Studio…
- TextStudio3DSpatialPrefabEntry: Associates a spatial UI role with the production prefab used to instantiate that control or menu.
- TextStudio3DSpatialPrefabKind: API type
- TextStudio3DSpawnAttachment: API type
- TextStudio3DSpawnTrigger: API type
- TextStudio3DStats: Read-only snapshot of current geometry, output, animation, physics, and recent rebuild workload.
- TextStudio3DStyleCompiler: Validates authored 3D layers and resolves inheritance into deterministic runtime geometry and material snapshots.
- TextStudio3DStyleDirtyFlags: API type
- TextStudio3DStyleFingerprint: Separates deterministic topology, material, and complete-content identity for a compiled style.
- TextStudio3DStyleIssue: Reports one informational, warning, or error condition found while resolving an authored style layer.
- TextStudio3DStyleIssueSeverity: API type
- TextStudio3DText: 3D text renderer add-on. This component no longer owns text, reveal, placement, animation, font choice, or layout. The central…
- TextStudio3DTextBoundsComposition: How the incoming text contour composes with a generated text-bounds backing.
- TextStudio3DTheme: Reusable project theme that supplies a shared font, prepared 3D font data, default and named extrusion styles, and interaction visuals for themed…
- TextStudio3DThemeAction: UnityEvent-friendly action that applies one theme to a scope.
- TextStudio3DThemeScope: Supplies an inheritable 3D theme to descendant text and controls, falling through when no theme is assigned.
- TextStudio3DThemeStyleBinding: API type
- TextStudio3DThemeStyleVariation: Read-only named style variation stored by a reusable 3D theme.
- TextStudio3DToggle: Provides a two-state spatial control with separate labels and a value-changed event.
- TextStudio3DVisualModuleContext: Read-only final-frame context passed to visual-only 3D modules.
- TextStudio3DWritableBuffer
: Retained writable scratch storage owned by one module context. Request the same element type and slot on later builds to reuse capacity without… - VariableHolder: Typed variables shared by 3D modules on a text object.
- VariableHolder.Variable: Immutable-at-runtime typed module input with a case-insensitive lookup key.