docs(review): split into ReviewMap and DemoMap, with one status table
The review file now separates the two questions it was mixing: ReviewMap - assets staged on their own: individual objects, the Blender import, camera angles and the lighting comparison. Nothing from the game map is involved. DemoMap - the actual game map in development: street, buildings, player, vehicle in place. One status table at the top covers both parts, with a Part column, and remains the only place approval and issue notes are recorded. Between them sits the Blender-vs-UE comparison, which now pairs ReviewMap captures as well as DemoMap ones, followed by the ReviewMap image grid and the existing in-game shot sections. Tools/ue_build_review_map.py also stages the LATEST vehicle assets (five systems plus the hatch paint) and two new cameras - a three-quarter view of the car and a ground-level look at the character's feet - so the staging map never drifts from what the Blender tools last produced. Tools/render_screenshots.sh gained a second capture pass that renders ReviewMap into Screenshots/review/, after the demo collection because that pass clears the engine's screenshot folder.
This commit is contained in:
1 parent
a983dfdcdf
commit
72d5bab427
54 files changed
+254
-112
No files matched your search
@@ -23,6 +23,7 @@ import shutil
|
||||
import subprocess
|
||||
|
||||
DEMO_DIR = "Screenshots/demo"
|
||||
REVIEW_DIR = "Screenshots/review"
|
||||
BLENDER_DIR = "Screenshots/blender"
|
||||
OUT = "Screenshots/README.md"
|
||||
BEGIN = "<!-- blender-comparison:begin -->"
|
||||
@@ -43,6 +44,12 @@ SHOT_ALIASES = {
|
||||
}
|
||||
|
||||
|
||||
def review_shots():
|
||||
if not os.path.isdir(REVIEW_DIR):
|
||||
return []
|
||||
return sorted(f for f in os.listdir(REVIEW_DIR) if f.endswith(".png"))
|
||||
|
||||
|
||||
def demo_shots():
|
||||
if not os.path.isdir(DEMO_DIR):
|
||||
return []
|
||||
@@ -95,15 +102,15 @@ def image_cell(path, width=520):
|
||||
|
||||
|
||||
def build():
|
||||
shots = demo_shots()
|
||||
shots = review_shots() + demo_shots()
|
||||
renders = blender_renders()
|
||||
lines = [
|
||||
"## Blender vs in-game",
|
||||
"### Blender vs in-game",
|
||||
"",
|
||||
"Regenerated by `Tools/build_comparison_md.py`; everything between the markers is",
|
||||
"rewritten, so edit outside them.",
|
||||
"",
|
||||
f"- In-game captures: `{DEMO_DIR}/` ({len(shots)} files)",
|
||||
f"- Captures: `{REVIEW_DIR}/` and `{DEMO_DIR}/` ({len(shots)} files)",
|
||||
f"- Blender renders: `{BLENDER_DIR}/` ({len(renders)} files), made by `Tools/blender_screenshots.py`",
|
||||
"",
|
||||
"Left is what the engine draws, right is what Blender has. A gap between them is the",
|
||||
@@ -121,7 +128,7 @@ def build():
|
||||
match = best_blender_match(shot, renders)
|
||||
paired[shot] = match
|
||||
lines.append(
|
||||
f"| {image_cell(f'{DEMO_DIR}/{shot}')} "
|
||||
f"| {image_cell(f'{REVIEW_DIR if shot in review_shots() else DEMO_DIR}/{shot}')} "
|
||||
f"| {image_cell(f'{BLENDER_DIR}/{match}' if match else None)} "
|
||||
f"| `{shot}` |")
|
||||
if not shots:
|
||||
|
||||
Reference in new issue
Block a user