Introduction
Meshes define the 3D geometry of objects, while materials determine how they appear visually. Godot provides powerful tools for importing 3D models, applying materials, and creating stunning visuals using PBR (Physically Based Rendering) workflows.MeshInstance3D
MeshInstance3D is the node used to display 3D geometry in your scene. It takes a Mesh resource and renders it in the 3D world.
Basic Usage
Built-in Primitive Meshes
Godot includes several primitive mesh types for quick prototyping:BoxMesh
Rectangular cuboid
SphereMesh
UV sphere
CylinderMesh
Cylinder or cone
CapsuleMesh
Capsule shape
PlaneMesh
Flat plane
PrismMesh
Triangular prism
Importing 3D Models
Godot supports multiple 3D file formats:- glTF 2.0 (.gltf, .glb) - Recommended format
- FBX (.fbx) - Widely used in game development
- Collada (.dae) - Open standard
- Wavefront OBJ (.obj) - Simple format, no animations
glTF 2.0 is the preferred format as it’s an open standard with excellent support for modern features like PBR materials, animations, and skinning.
Import Process
1
Import the Model
Drag and drop your 3D file into the FileSystem dock. Godot will automatically import it.
2
Configure Import Settings
Select the file and adjust settings in the Import dock (meshes, materials, animations).
3
Instantiate in Scene
Drag the imported scene into your level or instantiate it via code:
Materials Overview
Materials control the visual appearance of meshes. Godot’sMaterial class is the base for all material types (doc/classes/Material.xml:2).
Material Types
- StandardMaterial3D
- ORMMaterial3D
- ShaderMaterial
The most common material type with PBR support. Provides a comprehensive set of properties without writing shaders.
StandardMaterial3D Properties
Albedo (Base Color)
The base color or texture of the material:Metallic and Roughness (PBR)
These properties define the physically-based rendering characteristics:Metallic = 0.0
Non-metallic surfaces like wood, plastic, fabric
Metallic = 1.0
Metallic surfaces like iron, gold, chrome
Roughness = 0.0
Smooth, mirror-like surfaces
Roughness = 1.0
Matte, diffuse surfaces
Normal Mapping
Add surface detail without additional geometry:Emission
Make objects glow:Textures and UV Mapping
UV Coordinates
UV coordinates map 2D textures onto 3D surfaces. Most 3D modeling software generates UVs automatically.Texture Filtering
Texture Filter Modes
Texture Filter Modes
TEXTURE_FILTER_NEAREST: Pixelated lookTEXTURE_FILTER_LINEAR: Smooth interpolationTEXTURE_FILTER_LINEAR_WITH_MIPMAPS: Smooth with distance optimizationTEXTURE_FILTER_LINEAR_WITH_MIPMAPS_ANISOTROPIC: Best quality for angled surfaces
Triplanar Mapping
Project textures from three axes (useful for terrain):PBR Workflow
The Physically Based Rendering workflow uses real-world material properties:1
Set Albedo
Define the base color without lighting information
2
Configure Metallic
Determine if the surface is metallic
3
Adjust Roughness
Control surface glossiness
4
Add Normal Map
Enhance surface detail
5
Apply Ambient Occlusion
Add depth to crevices
Surface Override Materials
Meshes can have multiple surfaces, each with its own material:Advanced Material Features
Transparency
Refraction
Simulate glass and water:Subsurface Scattering
For skin, wax, marble:Rim Lighting
Create edge highlights:Blend Shapes (Morph Targets)
Animate mesh deformations:Skeletal Animation
For animated characters:Creating Collision Shapes
Generate physics collision from mesh geometry:Material Optimization Tips
Use Texture Atlases
Use Texture Atlases
Combine multiple textures into one atlas to reduce draw calls:
Disable Unused Features
Disable Unused Features
Only enable material features you actually use:
Use ORMMaterial3D for Packed Textures
Use ORMMaterial3D for Packed Textures
When you have ORM-packed textures, use ORMMaterial3D:
Optimize Texture Sizes
Optimize Texture Sizes
Use appropriate texture resolutions:
- Small objects: 512x512 or 1024x1024
- Medium objects: 2048x2048
- Large objects/terrain: 4096x4096
Common Material Recipes
Shiny Metal
Rough Wood
Glowing Emissive
Transparent Glass
Debugging Meshes
Related Topics
3D Overview
Learn 3D fundamentals
Lighting
Illuminate your 3D scenes
Physics
Add collision and physics
Shaders
Write custom shaders
Resources
- Standard Material 3D Documentation
- 3D Material Testers Demo
- MeshInstance3D Reference: doc/classes/MeshInstance3D.xml
- BaseMaterial3D Reference: doc/classes/BaseMaterial3D.xml