|
|
||
|---|---|---|
| v1-30s | ||
| .gitignore | ||
| AGENTS.md | ||
| build_scene.py | ||
| check_music.py | ||
| check_video60.py | ||
| city_split.py | ||
| compose_epic60.py | ||
| end_card.png | ||
| epic_uruk_60s.ogg | ||
| export_world_snapshot.gd | ||
| gilgamesh_uruk_clear.png | ||
| gilgamesh_uruk_heightmap.png | ||
| gilgamesh_uruk_water.png | ||
| make_quarters.py | ||
| make_title.py | ||
| make_video60.sh | ||
| prepare_terrain.py | ||
| README.md | ||
| render_all.py | ||
| sky_equirect.png | ||
| terrain_data.json | ||
| title_card.png | ||
| uruk_city.json | ||
| uruk_snapshot.json | ||
Gilgameš přichází k Ištar — 60s kinematická ukázka celého Uruku (živá data serveru)
Primární zdroj: https://git.vitexsoftware.com/Ishtaria/gilgamesh-cinematic (vývoj probíhá tam). Repozitář není na GitHubu: jde o marketingový nástroj na výrobu propagačního videa, ne o součást hry.
64,5 sekundové video (1440 framů scény, 24 fps, 1280×720, PNG → MP4/H.264 + AAC)
plus úvodní (2,0 s) a závěrečná (2,5 s) klínopisná karta — celkem 64,5 s. Scéna
je postavena z živých dat běžícího serveru (datadisk Gilgamesh, seed
2577465639), ne z ručně stavěné scény: export_world_snapshot.gd exportuje
snapshot světa kolem Uruku (2345 objektů, 61 NPC, 77 props, plán města — brány,
ulice, kanály, pole) a build_scene.py ho v Blenderu 4.3.2 sestaví do scény
v měřítku 1:1 (scene x = client x, scene y = −client z, z = metry nad R − Z0).
Scénář (1 minuta scény):
- S1 (f1–200) — ptačí perspektiva nad celým městem (domy, pole, cesty, zavlažovací kanály), kamera klesá k Ištarské bráně.
- S2 (f201–340) — průlet městskou branou Ishtar (lamassu po stranách).
- S3 (f341–1020) — nízký let nad ulicemi plnými davem (59 NPC), kolem tržiště, až k zigguratu.
- S4 (f1021–1250) — kamera přeletí Gilgameše, který jde mezi dvěma Lamassu ke schodům zigguratu.
- S5 (f1251–1440) — střih na detail: Ištar čeká na ochozu zigguratu.
Pro video jsou Gilgameš a Ištar inscenováni jako 5,4 m polobozi (3× člověk 1,8 m); dav a zvířata drží měřítko hry (~1,8 m lidé). Hra samotná drží své 2,70 m postav — quirk klienta (2,09×) se ve videu vědomě neaplikuje.
Město je stejné jako ve hře. Domy a rozestavěné stavby čte build_scene.py ze seznamu
ishtaria-datadisk-gilgamesh/buildings/uruk.yaml (model, poloha, natočení, měřítko v osách;
základ je nejnižší ze 5 bodů terénu pod parcelou — stejně jako to dělá server), ostatní domy,
kovárny a malé trhy jsou v kvartálech uruk_quarter_*.glb generovaných stejným generátorem
datadisku (make_quarters.py → quarters/). Zem má stejné CC0 textury jako klient
(ishtaria-client/assets/terrain/, datadisk ground: alluvial). Při změně města v datadisku
stačí make city v datadisku a znovu sestavit scénu.
Řeka a kanály se ve hře řeší zvlášť; pro video jsou vykresleny z dat snapshotu (řeka z water masky, kanály jako vodní pásy) — čistě filmový záměr.
Vykresleno v Blender 4.3.2, Cycles CUDA (RTX 2060), 24 vzorků, OPTIX denoiser, motion blur 0.5, AgX – Medium High Contrast, expozice 0.6. Osvětlení: slunce kalibrované podle equirect sky (az 19,6°, elev 10,6°), fill světlo, mlha (mist pass) směrem k barvě horizontu a bodová světla v průchodu Ištarské brány.
Hudba: epic_uruk_60s.ogg (64,5 s) — originální syntéza podle střihu
(compose_epic60.py, syntéza z datadisku Gilgamesh: gish-gudi lyra, zurna,
drone, frame drum + CC0 smyčky z Freesoundu).
Obsah adresáře
| Soubor | Účel |
|---|---|
gilgamesh_ishtar_60s.mp4 |
finální video (64,5 s, H.264 + AAC, 1280×720, 24 fps; ověřeno check_video60.py); není v gitu, vzniká přes make_video60.sh a s vývojem modelu města se renderuje znovu |
uruk_snapshot.json |
export živého světa ze serveru (export_world_snapshot.gd) |
export_world_snapshot.gd |
nástroj exportu (kopie z ishtaria-client/tools/) |
prepare_terrain.py |
převod výškové/water masky na terrain_data.json + gilgamesh_uruk_*.png |
terrain_data.json, gilgamesh_uruk_heightmap/water/clear.png |
terén Uruku pro scénu |
build_scene.py |
stavba scény ze snapshotu (blender -b --factory-startup -P build_scene.py → gilgamesh_ishtar.blend) |
make_quarters.py, city_split.py, uruk_city.json |
kvartály z generátoru datadisku a rozdělení domů (shodné s tools/city_kinds.py datadisku) |
render_all.py |
dávkový render 1440 framů do frames/ (RENDER_SAMPLES=24 blender -b gilgamesh_ishtar.blend -P render_all.py, ~11 h na RTX 2060) |
make_video60.sh |
ffmpeg: 1440 framů + epic_uruk_60s.ogg + karty → gilgamesh_ishtar_60s.mp4 |
check_video60.py |
kontrola finálního videa (délka, kodeky, probe framy) |
compose_epic60.py |
syntéza hudby epic_uruk_60s.ogg (přes tools/compose_music.py datadisku) |
epic_uruk_60s.ogg |
epická hudba, 64,5 s |
make_title.py |
generuje klínopisné title_card.png / end_card.png (styl hliněné tabulky) |
title_card.png, end_card.png |
úvodní (0–2,0 s) a závěrečná (62,0–64,5 s) karta |
check_music.py |
kontrola hudby (délka, RMS průběh, spektrum, ladění) |
sky_equirect.png |
equirect obloha 2048×1024 (InvokeAI, zlatá hodina) |
v1-30s/ |
původní 30s varianta (viz níže) |
Regenerace
- Cesty — konstanty na začátku
build_scene.py(OUT,TEX) arender_all.py(OUT); výchozí hodnota je tento repozitář. - Snapshot světa —
export_world_snapshot.gdspusť v klientu připojeném k serveru s datadiskem Gilgamesh; uložíuruk_snapshot.json. Terén:python3 prepare_terrain.py→terrain_data.json+gilgamesh_uruk_*.png. - Sestavení scény —
blender -b --factory-startup -P build_scene.py(uložígilgamesh_ishtar.blend, ~2 min). - Render —
RENDER_SAMPLES=24 blender -b gilgamesh_ishtar.blend -P render_all.py→frames/f0001.png … f1440.png. - Video —
./make_video60.sh(výchozí vstupyframes/+epic_uruk_60s.ogg), výsledek ověřpython3 check_video60.py gilgamesh_ishtar_60s.mp4.
Poznámky:
gilgamesh_ishtar.blendodkazuje oblohu absolutní cestou (SKYvbuild_scene.py) — po přesunu souborů uprav cestu, nebo scénu přegeneruj.- Scéna je deterministická; opakované sestavení dá stejný výsledek.
v1 — 30s verze (v1-30s/)
Původní ručně stavěná 30s scéna (720 framů, tři záběry A/B/C: pohled na město,
cesta Gilgameše procesní cestou k patě zikkuratu, příjezd k Ištar na ochozu)
včetně skriptů (build_scene.py, render_all.py, render_check.py,
make_video.sh), hudby epic_uruk.ogg, karet a analytických/probe skriptů.
Licenční upozornění: scéna v1 obsahuje lamassu odvozené z CC BY-NC díla
(„Persian Lamassu“, Peter Farell, printables.com, přes Hyper3D Rodin), takže
video z v1 lze šířet pouze nekomerčně. Video v2 výše používá lamassu
z 0 A.D. (CC BY-SA 3.0) a toto omezení nemá.
Zdroje assetů a licence (v2, 60 s)
| Asset ve scéně | Zdroj | Licence |
|---|---|---|
| Architektura Uruku, lamassu, fauna, NPC, textury, postavy | 0 A.D. (Wildfire Games), ishtaria-client/assets/zeroad/; datadisk Gilgamesh 0.3.0 |
CC BY-SA 3.0 / CC BY-SA 4.0 (datadisk) |
| Zvířata, předměty | Quaternius balíčky, ishtaria-client/assets/quaternius/ |
CC0 |
| Ostatní assety (pokud použity) | Kenney balíčky, ishtaria-client/assets/kenney/ |
CC0 |
Obloha (sky_equirect.png) |
generováno přes InvokeAI (zlatá hodina) | dle podmínek InvokeAI |
| Klínopisné znaky na kartách | Noto Sans Cuneiform (Google) | OFL 1.1 |
| Český text na kartách | DejaVu Serif | volná licence (DejaVu) |
Hudba (epic_uruk_60s.ogg) |
originální syntéza (compose_epic60.py přes tools/compose_music.py datadisku) nad CC0 smyčkami z Freesoundu |
originální dílo + CC0 podklad |