materials: look-developed surface materials for every exported asset
Completes "Materials and look development for all exported assets". Every exported surface previously carried a flat Constant3Vector fill, which read as plastic. ensure_material() in Tools/ue_build_demo_map.py now builds a procedural material per surface: - base colour blended between two shades by world-space noise (WorldPosition -> Multiply -> Noise -> Lerp -> BaseColor) for large-scale variation, - an explicit roughness and specular so the surface type is readable. M_Asphalt 0.92, M_Concrete 0.88, M_KerbConcrete 0.85, M_Ground 0.98, M_RoadPaint 0.62, M_FacadeStone 0.72, M_Stucco 0.86 Site meshes take their material by mesh name; the hero facade and the two north-side buildings take theirs by actor label, so they are covered even though other scripts stage them. Materials are deleted and rebuilt on every run, so a look change cannot be masked by a stale asset. Result: the facade reads as warm stone with surface variation, asphalt as dark asphalt with grain, concrete and kerbs lighter and matte, and the north buildings in stucco instead of flat grey. Screenshots re-rendered and approved by the owner. The richer texture-based pass (baked/procedural brick_facade, seamless_concrete, glass, material instances) stays in the 0.1.4 facade patch. Squash of branch materials-lookdev-0.1.0 (PR #5).
This commit is contained in:
1 parent
c626b379d9
commit
62a41bf904
27 files changed
+181
-71
No files matched your search
+10
-5
@@ -23,7 +23,8 @@ and exits — about a minute. The camera list lives in
|
||||
|
||||
## Shot list
|
||||
|
||||
All ☑ approved 2026-11-07.
|
||||
All shots ☑ approved 2026-11-07, including the material look pass that changed
|
||||
every demo surface.
|
||||
|
||||
| # | File | Preview | Map | View | What it shows |
|
||||
| --- | --- | --- | --- | --- | --- |
|
||||
@@ -50,10 +51,14 @@ All ☑ approved 2026-11-07.
|
||||
Z 2 m; both are exactly 1 m — the scale reference.
|
||||
- **Demo map** (`/Game/Hollywood/DemoMap`): fixed daytime — sun at pitch −50 /
|
||||
yaw 120 (intensity 4, warm), sky light 2.6, sky atmosphere, height fog, fixed
|
||||
exposure. Surface colours are assigned explicitly in
|
||||
`Tools/ue_build_demo_map.py` (`M_Asphalt`, `M_Concrete`, `M_Ground`,
|
||||
`M_RoadPaint`) because Blender's flat diffuse colours do not survive the
|
||||
FBX → Unreal import.
|
||||
exposure.
|
||||
- **Materials**: every exported surface carries a look-developed material built
|
||||
in `Tools/ue_build_demo_map.py` (`ensure_material`) because Blender's flat
|
||||
diffuse colours do not survive the FBX → Unreal import. Each has an explicit
|
||||
roughness and a subtle world-space noise blend between two shades:
|
||||
`M_Asphalt` (0.92), `M_Concrete` (0.88), `M_KerbConcrete` (0.85),
|
||||
`M_Ground` (0.98), `M_RoadPaint` (0.62), `M_FacadeStone` (0.72) and
|
||||
`M_Stucco` (0.86) for the north-side buildings.
|
||||
- **Lighting is dynamic-only** (`r.AllowStaticLighting=False`, all lights
|
||||
Movable), so no lighting build is ever required.
|
||||
- **Attribution overlay**: every shot carries the required ODbL credit in the
|
||||
|
||||
Reference in new issue
Block a user