Back to Guides

Unity Setup & Materials

Unity is where everything comes together. You'll import your Blender FBX meshes, apply materials and textures, adjust visual effects, and optimize performance. By the end of this section, you'll be able to play your course in GSPro!

Share this article

FacebookLinkedInXEmail

Unity Setup & Materials

Home > Guides > Building GSPro Courses > Unity Setup & Materials


Overview

Unity is where everything comes together. You'll import your Blender FBX meshes, apply materials and textures, adjust visual effects, and optimize performance. By the end of this section, you'll be able to play your course in GSPro!


1. Performance Theory

Unity Performance Theory

πŸ“Ί Unity Performance Theory

Understanding performance optimization from the start will save you headaches later.

Performance Factors:

  • Triangle count: Total mesh complexity
  • Draw calls: How many objects rendered
  • Texture memory: Resolution of materials
  • Vegetation density: Trees and grass
  • Lighting: Real-time shadows and reflections

Target Performance:

  • Smooth 60+ FPS on mid-range gaming PC
  • <5 million triangles total
  • Smart vegetation placement
  • Optimized materials

Fixing the Unity Clipping Bug (V4)

πŸ“Ί Fixing the Unity Clipping Bug (V4)

Apply the clipping fix again if needed (should have done this during setup, but check again).


2. Importing Your Meshes Into Unity

Importing Your FBX Files Into Unity (V4)

πŸ“Ί Unity - Importing Your FBX Files Into Unity (V4)

Import your Blender-exported FBX files into your Unity project.

Import Process:

  1. Create "Meshes" folder in Unity project
  2. Drag FBX files into folder
  3. Unity automatically imports and processes
  4. Check import settings (scale, materials, vertex colors)

Import Settings:

  • Scale Factor: 1 (if exported correctly from Blender)
  • Import BlendShapes: Off (not needed)
  • Import Visibility: On
  • Import Cameras: Off
  • Import Lights: Off
  • Import Materials: On
  • Material Location: Use External Materials (Legacy)

Adding Your FBX Files to Your Scene (Updated 11/2025)

πŸ“Ί Unity - Adding Your FBX Files to Your Scene (updated 11/2025)

Place your imported meshes into your course scene.

Scene Setup:

  1. Open your course scene
  2. Drag FBX into scene hierarchy
  3. Position at origin (0, 0, 0)
  4. Align with terrain
  5. Organize in hierarchy (parent objects for grouping)

Hierarchy Organization:

Scene
β”œβ”€β”€ Terrains
β”‚   β”œβ”€β”€ Inner Terrain
β”‚   └── Outer Terrain
β”œβ”€β”€ Course Meshes
β”‚   β”œβ”€β”€ Tees
β”‚   β”œβ”€β”€ Greens
β”‚   β”œβ”€β”€ Fairways
β”‚   β”œβ”€β”€ Rough
β”‚   β”œβ”€β”€ Bunkers
β”‚   └── Water
└── Objects
    β”œβ”€β”€ Bridges
    β”œβ”€β”€ Bulkheads
    └── Decorative

Fixing Z-Fighting

πŸ“Ί Unity - Fixing Z-Fighting

Eliminate flickering where meshes overlap (z-fighting).

Z-Fighting Causes:

  • Two meshes at same elevation
  • Overlapping geometry
  • Floating point precision issues

Solutions:

  • Offset mesh slightly (0.01-0.05m)
  • Use shader offset (preferred)
  • Adjust camera near/far clipping planes
  • Remove redundant geometry

3. Setting Mesh Materials

The Set Mesh Material tool applies the OPCD MAHS (Multi-Array Height Shader) to your course meshes with appropriate themes.

Set Mesh Material Tool Intro (V4)

πŸ“Ί Unity - Set Mesh Material Tool Intro (V4)

Introduction to the OPCD material assignment workflow.

MAHS Shader:

  • Supports multiple textures per mesh
  • Uses vertex colors to blend materials
  • Height-based blending for realism
  • Performance optimized

Set Mesh Material Themes (V4)

πŸ“Ί Unity - Set Mesh Material Themes (V4)

Choose and apply material themes (grass types, bunker sand colors, etc.).

Available Themes:

  • Grass: Bentgrass, Bermuda, Fescue, Ryegrass, etc.
  • Bunker Sand: White, tan, red, brown
  • Cart Paths: Asphalt, concrete, gravel
  • Rough: Various native grasses
  • Water: Blue, green, murky

Theme Selection Tips:

  • Research your course's grass types
  • Match real photos if available
  • Consider geographic region (warm/cool season grass)
  • Consistency across holes

Set Mesh Material Tweaks and Replacement (V4)

πŸ“Ί Unity - Set Mesh Material Tweaks and Replacement (V4)

Fine-tune materials and replace specific textures.

Tweaks:

  • Adjust colors (hue, saturation, brightness)
  • Change texture scale (tiling)
  • Swap textures within theme
  • Adjust roughness/smoothness

4. Game Mode and Performance Check

Game Mode and First Performance Check

πŸ“Ί Game Mode and First Performance Check

Play your course for the first time and check performance!

First Play Test:

  1. Enter Play Mode in Unity
  2. Navigate around course
  3. Check FPS (frames per second)
  4. Look for visual issues
  5. Test playability

Performance Monitoring:

  • Unity Stats window (FPS, triangles, draw calls)
  • Target: 60+ FPS minimum
  • Identify performance bottlenecks

Common Issues on First Play:

  • Low FPS (too many triangles or vegetation)
  • Missing textures (material errors)
  • Floating meshes (alignment issues)
  • Water not rendering (material/shader issues)

5. Post Processing - Visual Effects

Post Processing Volume Overview

πŸ“Ί Post Processing Volume Overview

Add cinematic visual effects to enhance realism.

Post Processing Effects:

  • Bloom: Bright highlights glow
  • Color Grading: Adjust overall color tone
  • Ambient Occlusion: Contact shadows for depth
  • Depth of Field: Blur distant objects (optional)
  • Vignette: Darken screen edges
  • Chromatic Aberration: Lens distortion (subtle)

Best Practices:

  • Use subtle effects (don't overdo it!)
  • Test performance impact
  • Match time of day / weather intent
  • Consistency across course

Post Processing Selector Tool

πŸ“Ί Post Processing Selector Tool

OPCD tool to quickly apply and compare post-processing presets.

Presets Include:

  • Bright sunny day
  • Overcast
  • Golden hour
  • Dramatic contrast
  • Minimal (performance mode)

6. Making Changes to Existing Meshes

Making Changes to Existing Meshes (V4)

πŸ“Ί Unity - Making Changes to Existing Meshes (V4)

Workflow for updating meshes after initial import.

Change Workflow:

  1. Edit in Inkscape/Blender
  2. Re-export FBX
  3. Replace FBX in Unity project folder
  4. Unity auto-updates scene references
  5. May need to re-apply materials

Adding and/or Changing a Mesh (V4)

πŸ“Ί Unity - Adding and/or Changing a Mesh (V4)

Add new features or swap out meshes entirely.

Making Terrain Changes to Existing Meshes (V4)

πŸ“Ί Unity - Making Terrain Changes to Existing Meshes (V4)

Update terrain and re-conform meshes.

When Terrain Changes Needed:

  • Lidar was inaccurate
  • Bunker depths need adjustment
  • Green contours need refinement
  • Tee boxes need leveling

7. Advanced Unity Techniques

Decision Point in Your Course Building Journey (V4)

πŸ“Ί Unity - Decision Point in Your Course Building Journey (V4)

At this point, you can choose to:

  • Continue with defaults (faster, good results)
  • Dive into advanced customization (more control, steeper learning curve)

The following videos cover advanced topics - optional for most users.

Exploring the Components of a Mesh (V4)

πŸ“Ί Unity - Exploring the Components of a Mesh (V4)

Deep dive into Unity mesh components and materials.

Changing Materials on a Mesh and Leveraging Theme Defaults (V4)

πŸ“Ί Unity - Changing Materials on a Mesh and Leveraging Theme Defaults (V4)

Manual material assignment and customization.

Blend Theory (V4)

πŸ“Ί Unity - Blend Theory (V4)

Understanding how material blends work in MAHS shader.

Blend Concepts:

  • Vertex color channels (R, G, B, A)
  • Height-based blending
  • Blend width/falloff
  • Multi-material blends

Creating a New Blend Material

πŸ“Ί Unity - Creating a New Blend Material

Create custom blend materials from scratch.

Creating Another New Blend Material (V4)

πŸ“Ί Unity - Creating Another New Blend Material (V4)

More practice with blend material creation.

Adjusting Blend Colors (V4)

πŸ“Ί Unity - Adjusting Blend Colors (V4)

Fine-tune blend transitions.

Intro to Vert Painting (V4)

πŸ“Ί Unity - Intro to Vert Painting (V4)

Paint material variations directly on meshes in Unity.

Vertex Painting Uses:

  • Add wear patterns
  • Vary grass colors
  • Create dirt/stain effects
  • Enhance realism with subtle variations

Shaders, Materials and Textures Theory (V4)

πŸ“Ί Unity - Shaders, Materials and Textures Theory (V4)

Deep dive into rendering concepts.

OPCD MAHS Shader Theory (V4)

πŸ“Ί Unity - OPCD MAHS Shader Theory (V4)

How the Multi-Array Height Shader works under the hood.

Arrays and Indexes in OPCD MAHS (v4)

πŸ“Ί Unity - Arrays and Indexes in OPCD MAHS (v4)

Understanding material arrays and indexing.

OPCD MAHS Nerd Knobs (V4)

πŸ“Ί Unity - OPCD MAHS Nerd Knobs (V4)

Advanced shader parameters for expert users.

Material Channel Editor (V4)

πŸ“Ί Unity - Material Channel Editor (V4)

Tool for managing MAHS material arrays.

Vert Painting Info Flow: 201 (V4)

πŸ“Ί Unity - Vert Painting Info Flow: 201 (V4)

Intermediate vertex painting workflows.

Vert Painting Flow: 202 (V4)

πŸ“Ί Unity - Vert Painting Flow: 202 (V4)

More vertex painting techniques.

Vert Painting Info Flow: 301 (V4)

πŸ“Ί Unity - Vert Painting Info Flow: 301 (V4)

Advanced vertex painting workflows.

Vert Painting Info Flow: 302 (V4)

πŸ“Ί Unity - Vert Painting Info Flow: 302 (V4)

Expert vertex painting techniques.

Multi Blends (V4)

πŸ“Ί Unity - Multi Blends (V4)

Creating complex multi-material transitions.

Wrap Up and Flow For Finishing Your Course (V4)

πŸ“Ί Unity - Wrap Up and Flow For Finishing Your Course (V4)

Review of advanced techniques and next steps.


8. Water Adjustments

Adjusting Water Plane

πŸ“Ί Adjusting Water Plane

Fine-tune water elevation and appearance.

Water Adjustments:

  • Water level (Y position)
  • Water color and transparency
  • Reflection intensity
  • Wave animation (if enabled)
  • Foam/shore effects

Reflection Probe Adjustments (Optional)

πŸ“Ί Reflection Probe Adjustments (optional)

Improve water reflections with reflection probes.

Reflection Probes:

  • Capture surrounding environment
  • Applied to water surfaces
  • Enhances realism
  • Performance cost (use sparingly)

9. Project Backup

Backing Up Your Entire Project

πŸ“Ί Backing Up Your Entire Project

Critical: Back up your Unity project regularly!

Backup Strategy:

  1. Zip entire Unity project folder
  2. Store on external drive or cloud
  3. Version naming (CourseName_2024-02-09)
  4. Backup before major changes

What to Backup:

  • Unity project folder (entire thing)
  • Blender files
  • Inkscape SVG files
  • QGIS project
  • Raw lidar data (optional, large files)

10. 3D Grass (Stix 3DG)

Stix 3DG adds realistic 3D grass to your course, replacing flat grass textures with actual geometry.

Stix 3DG Introduction (V4)

πŸ“Ί Stix 3DG Introduction (V4)

Overview of 3D grass system.

Benefits:

  • Much more realistic appearance
  • Movement and wind effects
  • Better depth and shadows

Drawbacks:

  • Performance cost (more triangles)
  • Requires careful optimization
  • Not essential for first course

Stix 3DG - Installation (V4)

πŸ“Ί Stix 3DG - Installation (V4)

Install the Stix 3D Grass system.

Stix 3DG - Enabling 3DG on Your Meshes (V4)

πŸ“Ί Stix 3DG - Enabling 3DG on Your Meshes (V4)

Apply 3D grass to fairways, greens, and rough.

Application Tips:

  • Start with greens only (biggest visual impact)
  • Add fairways if performance allows
  • Rough areas can use standard textures
  • Test performance after each addition

Stix 3DG - Experimenting with 3DG Settings (Safely) (V4)

πŸ“Ί Stix 3DG - Experimenting with 3DG Settings (safely) (V4)

Adjust density, height, and color without breaking performance.

Key Settings:

  • Density: Blades per square meter (reduce if FPS drops)
  • Height: Grass blade length (greens: short, rough: tall)
  • Color Variation: Natural variation
  • Wind Strength: Movement amount

11. Building the Course File

Building Your Course File Introduction (Theory)

πŸ“Ί Building Your Course File Introduction (Theory)

Understanding what the Unity "Build" process creates.

Build Output:

  • Course bundle file (.course)
  • Compatible with GSPro
  • Includes all meshes, materials, textures
  • Optimized and compressed

Unload/Purge Auto Fence Builder (If Installed)

πŸ“Ί Unload/Purge Auto Fence Builder (if installed)

If you used Auto Fence Builder, unload it before building.

Building Your Course File (Updated 11/2025)

πŸ“Ί Building Your Course File (updated 11/2025)

Use the OPCD Build tool to create your course file.

Build Process:

  1. Open OPCD Build window
  2. Verify scene setup
  3. Click Build
  4. Unity processes and exports
  5. Generates .course file in output folder

Build Output Location:
Typically: ProjectFolder/Builds/CourseName.course


βœ… Checklist Before Moving Forward

  • Imported FBX meshes into Unity
  • Added meshes to scene and aligned with terrain
  • Fixed any z-fighting issues
  • Applied materials using Set Mesh Material tool
  • Tested in Play Mode (performance check)
  • Applied post-processing effects
  • Adjusted water planes
  • Backed up project
  • Built course file successfully

Optional:

  • Installed and applied Stix 3DG
  • Customized blend materials
  • Vertex painted details

Common Issues and Solutions

Problem: Low FPS in Play Mode
Solution: Check triangle count, reduce vegetation density, disable 3D grass temporarily, simplify outer terrain

Problem: Materials not showing correctly
Solution: Re-apply with Set Mesh Material tool, check shader assignment, verify textures imported

Problem: Water not visible
Solution: Check water material, verify water plane position, ensure water shader assigned

Problem: Build fails
Solution: Check Unity console for errors, verify all meshes have proper materials, remove problematic objects


What's Next?

Your course is visually complete and playable in Unity! Next, you'll add vegetation (trees, bushes) to bring the course to life.

Next Guide: Planting Vegetation β†’


Navigation:
← Back: Blender Workflow | Next: Vegetation β†’

More guides β†’