Generating Terrains, Objects, and Assets
Infinity Creator provides powerful procedural tools to generate terrains, objects, and assets efficiently. This guide outlines step-by-step methods to create dynamic game environments, procedural objects, and reusable assets.
1. Generating Procedural Terrains
Terrains can be generated either at Editor-Time or Runtime using the Node Graph.
Setting Up a Procedural Terrain
Use the prebuilt "Basic 3D Landscape" template to quickly create a landscape generator.
If using the "Basic 3D Landscape" template, steps 1. and 2. can be skipped.
- Build a Terrain System
- Build a custom system by dragging the following nodes into the Node Graph:
- Noise Image (for terrain randomness)
- Create Mesh (for the Landscape itself)
- Texture Deform (for terrain deformation scale)
- Create Render Object (for showing results in the 3D Scene)
- Build a custom system by dragging the following nodes into the Node Graph:
- Connect and Adjust Nodes
- Link Create Mesh → Texture Deform → Create Render Object.
- Link Noise Image → Texture Deform → Create Render Object.
- Adjust parameters in the Inspector Panel (e.g., height scale).
- Bake or Preview the Terrain
- Click Run System to test it in the 3D Scene View.
- Click Deploy for use in your application or game.
2. Creating Procedural Objects
Objects such as buildings, vegetation, or props can be generated, modified, and replicated procedurally.
Generating a Procedural Object
- Use Object-Based Nodes
- Drag the following from the Toolbox and connect them:
- Create Mesh (to generate a base shape)
- Mesh Deform (Noise) (to apply deformation)
- RenderObject (to render the final object)
- Drag the following from the Toolbox and connect them:
- Modify Object Properties
- In the Inspector Panel, tweak scale, rotation, and subdivisions.
- Instantiate Multiple Objects
- Drag the following from the Toolbox and connect them:
- Sampled3D (to sample multiple points in 3D space)
- Create Transforms (to convert the raw 3D points to an
Array<Transforms>) - Instances (to create multiple instances of the base mesh)
- Link RenderObject → Instances.
- Drag the following from the Toolbox and connect them:
- Run the System
- View the rendered output in the 3D Scene.
- Export as a complete scene
- Click the file button in the File Menu and select Export → Export 3D Scene....
3. Generating and Managing Procedural Assets
Procedural assets include textures, materials, and environmental effects.
Creating Procedural Textures
- Use Image-Based Nodes
- Drag nodes from Toolbox → Images:
- Gradient (for base coloring)
- Colorize (to add color variations)
- Tile (to make seamless textures)
- 3-Tone Linear Gradient (to create a three colored noise)
- 3-Tone Masked Linear Gradient (to create a three colored noise mask)
- Drag nodes from Toolbox → Images:
- Run the System
- Click nodes to see their output in the Inspector.
- Save as an Asset
- Right-click in the inspector and select Save to Asset.
4. Optimizing Procedural Content
Once assets and terrains are generated, optimize them for performance.
Optimization Techniques
Bake Procedural Elements - Convert procedural objects to static assets if they don't need runtime changes.
Reduce Complexity - Use lower resolution noise maps for non-detailed areas.
Instance Objects - Use the Instances node to avoid duplicating large meshes.
Use Hybrid Generation - Pre-generate base content and modify dynamically at runtime.
5. Exporting and Using Procedural Assets
After generation, procedural assets can be exported for use in game engines.