Unreal Engine
Here's my notes on Unreal Engine 5. I'll keep adding to it as I learn more.
Resources
- https://www.udemy.com/course/unreal-engine-course
- https://docs.unrealengine.com/5.0/en-US/lumen-global-illumination-and-reflections-in-unreal-engine/
- https://docs.unrealengine.com/5.0/en-US/nanite-virtualized-geometry-in-unreal-engine/
See addendum for more resources.
Conventions
Rationale
- Always use Lumen (and disable static lighting)
- Always use Nanite (and set Nanite to Enabled for the mesh of each object asset)
- Nanite does not work for non-opaque materials and two-sided meshes
- Get assets from Quixel Bridge
- Use Blueprints for everything that you reuse
Non default settings
Interface
- Open project settings and pin it to the left side of the screen.
Vocabulary
Assets
| Prefix | Term | Description |
|---|---|---|
BP_ | Blueprint | Encapsulates objects and logic |
M_ | Main Material | Template for Material instances |
MI_ | Material Instance | Instance of a Main Material |
SM_ | Static Mesh | Mesh that does not move |
S_ | Skeletal Mesh | Mesh that moves |
T_ | Texture | Image used for materials |
Materials
| Term | Description |
|---|---|
| Base Color | Color of the material |
| Metallic | How metallic the material is |
| Roughness | How rough the material is (smooth vs rough) |
| Normal | How much the material is affected by light |
Concepts
Blueprints
- Use variables to store values. The setting
Instance Editablemakes it possible to change the value in the editor. - Use functions to encapsulate and reuse logic.
- Use custom events to organize logic.
- Use event dispatchers to send events to other blueprints.
Gotchas
- When lighting shows low quality baking, try to increase the lightmap resolution of the mesh.
Important hotkeys
General
Ctrl+Spaceto open Content DrawerCtrl+Bto find related assetsEndto drop the selected asset on the surfaceShift+F1to get the mouse cursor back
Mouse navigation
LMBto moveRMBto pan viewMMBto drag view
Keyboard navigation
Fto focus on selected object
Graph
1+RMBto create a scalar node.2+RMBto create a vector2 node.3+RMBto create a vector3 node.M+RMBto create a multiply node.L+RMBto create a lerp node.- Drag +
Rto create a reroute node.
Important console commands
stat fpsto show fpsstat unitto show frame timestat rhito show gpu mem and triangles count