You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{ "date": "2026-02-16", "summary": "Enhanced 3D model documentation with animation controls, material types, origin/center points, and shadow configuration" }
Copy file name to clipboardExpand all lines: docs/gdevelop5/objects/3d-model/index.md
+74-5Lines changed: 74 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,25 +9,94 @@ If you need to create walls, plane grounds or other rectangular/cubic 3D objects
9
9
10
10

11
11
12
-
## Lighting
12
+
## Animations
13
+
14
+
3D models can include animations that are embedded in the GLB file. Each model can have multiple animations (walking, running, jumping, idle, etc.), and you can control which animation plays during the game.
15
+
16
+
### Managing animations
17
+
18
+
When you add a 3D model object, you can configure its animations in the object properties:
19
+
20
+
- Each animation has a **name** (how you reference it in events), a **source** (the animation name from the GLB file), and a **loop** setting (whether the animation repeats).
21
+
- The first animation in the list plays automatically when the object is created.
22
+
- You can switch between animations during gameplay using actions in the events sheet.
23
+
24
+
### Animation playback control
25
+
26
+
You can control animation playback using actions and conditions:
27
+
28
+
-**Switch animations**: Change to a different animation by name or index.
29
+
-**Pause and resume**: Stop and restart animation playback without resetting the animation.
30
+
-**Animation speed**: Speed up or slow down animations (values greater than 1 make animations faster, values less than 1 make them slower).
31
+
-**Animation timing**: Get or set the current playback position within an animation, or check the total animation duration.
32
+
-**Crossfade duration**: Set how smoothly animations transition from one to another (default is 0.1 seconds).
33
+
34
+
### Animation conditions
35
+
36
+
You can check the animation state in conditions:
37
+
38
+
- Check if a specific animation is currently playing.
39
+
- Check if the animation has finished playing (useful for non-looping animations).
40
+
- Check if the animation is paused.
41
+
42
+
!!! tip
43
+
44
+
Use the "Animation finished" condition with non-looping animations to trigger events when an action completes, such as playing an attack animation and then dealing damage when it finishes.
45
+
46
+
## Material and lighting
13
47
14
48
Lighting can be set up through [layers effects](../../interface/scene-editor/layer-effects). Ambient and directional light effects allow to configure basic lighting for 3D layers.
15
49
16
-
The model can be set up to react to lighting in different ways. The GLTF format can include data about light reflection. The 3D model can either use this data or use a forced configuration.
50
+
The model can be set up to react to lighting in different ways through the **Material type** property:
51
+
52
+
-**Basic**: No lighting or shadows are applied. The model uses its base colors without any lighting calculations. Use this for stylized looks or UI elements.
53
+
-**Standard without metalness**: Lighting is enabled, but metalness properties are removed from the material. This often produces better-looking results for most game assets and is the recommended default.
54
+
-**Keep original**: Preserves the original material properties from the GLB file, including metalness and roughness values. Use this if your 3D model was carefully authored with specific material properties.
17
55
18
56
## Shadows
19
57
20
58
3D models can cast and receive shadows. To display shadows:
21
59
22
60
- Ensure the layer has a **Directional Light** effect. New layers in new games include this effect along with an Ambient Light by default.
23
-
- Set the object's material to **Standard** (not **Basic**, which ignores lighting).
24
-
- Enable **Shadow casting** and **Shadow receiving** in the object's properties (enabled by default for new assets from the store).
61
+
- Set the object's material to **Standard without metalness** or **Keep original** (not **Basic**, which ignores lighting).
62
+
- Enable **Shadow casting** and **Shadow receiving** in the object's properties (both enabled by default for new assets from the store).
25
63
26
64
Shadows are computed around the camera with a range suitable for most games. You can adjust the light intensity, shadow quality and range by editing the Directional Light effect in the layer's effects.
27
65
66
+
!!! note
67
+
68
+
Shadow casting and shadow receiving can be controlled independently. For example, you might want a flying object to cast shadows on the ground but not receive shadows from other objects.
69
+
70
+
## Origin and center points
71
+
72
+
The 3D model object has two important configuration points that affect how it's positioned and rotated:
73
+
74
+
### Origin location
75
+
76
+
The **origin location** determines where the object's position (X, Y, Z coordinates) is anchored. This affects where the object appears when you set its position in events or place it in the scene editor. You can choose from:
77
+
78
+
-**Model origin**: Uses the origin point defined in the 3D modeling software (default for models from the asset store).
79
+
-**Object center**: Centers the position at the middle of the object's bounding box.
80
+
-**Bottom center (Z)**: Places the origin at the bottom center of the object, useful for characters standing on the ground.
81
+
-**Bottom center (Y)**: Places the origin at the bottom center using the Y axis, useful for certain camera angles.
82
+
-**Top-left**: Places the origin at the top-left corner of the bounding box.
83
+
84
+
### Center location
85
+
86
+
The **center location** determines the point around which the object rotates and scales. This is separate from the position anchor and affects rotation behavior. You can choose from:
87
+
88
+
-**Model origin**: Uses the origin point from the 3D model file.
89
+
-**Object center**: Rotates around the middle of the object's bounding box.
90
+
-**Bottom center (Z)**: Rotates around the bottom center, useful for objects that should pivot at their base.
91
+
-**Bottom center (Y)**: Rotates around the bottom center using the Y axis.
92
+
93
+
!!! tip
94
+
95
+
For characters, setting the origin to "Bottom center (Z)" makes it easy to place them on the ground, as the object's Z position will represent the ground level where the character stands.
96
+
28
97
## File format
29
98
30
-
GDevelop supports 3D models saved in the **GLB (.glb) format**. It is a standardized file format used to share 3D data. Notably, it includes the 3D mesh of the object, as well as its textures or material specifications. This format is also sometimes called **GLTF**, for "GL Transmission Format". You can sometimes find .gltf files, but only the **.glb** files are supported by GDevelop, as they can embed the textures whereas .gltf files can't do this.
99
+
GDevelop supports 3D models saved in the **GLB (.glb) format**. It is a standardized file format used to share 3D data. Notably, it includes the 3D mesh of the object, as well as its textures, material specifications, and animations. This format is also sometimes called **GLTF**, for "GL Transmission Format". You can sometimes find .gltf files, but only the **.glb** files are supported by GDevelop, as they can embed the textures and animations whereas .gltf files require separate files.
0 commit comments