No description
Find a file
CyberVitexus 4650b96b25 docs(gilgamesh-cinematic): update README to reflect marketing tool status
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-11-04 15:32:14 +01:00
v1-30s feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
.gitignore refactor(gilgamesh-cinematic): remove video and update documentation 2026-11-04 14:22:30 +01:00
AGENTS.md refactor(gilgamesh-cinematic): remove video and update documentation 2026-11-04 14:22:30 +01:00
build_scene.py feat(gilgamesh-cinematic): add Uruk city scene with shared models 2026-11-03 13:59:55 +01:00
check_music.py feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
check_video60.py feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
city_split.py feat(gilgamesh-cinematic): add Uruk city scene with shared models 2026-11-03 13:59:55 +01:00
compose_epic60.py feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
end_card.png feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
epic_uruk_60s.ogg feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
export_world_snapshot.gd feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
gilgamesh_uruk_clear.png feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
gilgamesh_uruk_heightmap.png feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
gilgamesh_uruk_water.png feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
make_quarters.py feat(gilgamesh-cinematic): add Uruk city scene with shared models 2026-11-03 13:59:55 +01:00
make_title.py feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
make_video60.sh feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
prepare_terrain.py feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
README.md docs(gilgamesh-cinematic): update README to reflect marketing tool status 2026-11-04 15:32:14 +01:00
render_all.py feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
sky_equirect.png feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
terrain_data.json feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
title_card.png feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00
uruk_city.json feat(gilgamesh-cinematic): add Uruk city scene with shared models 2026-11-03 13:59:55 +01:00
uruk_snapshot.json feat(gilgamesh-cinematic): add initial 60-second cinematic trailer for Ishtaria Gilgamesh 2026-11-01 14:13:12 +01:00

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

  1. Cesty — konstanty na začátku build_scene.py (OUT, TEX) a render_all.py (OUT); výchozí hodnota je tento repozitář.
  2. Snapshot světa — export_world_snapshot.gd spusť 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.
  3. Sestavení scény — blender -b --factory-startup -P build_scene.py (uloží gilgamesh_ishtar.blend, ~2 min).
  4. Render — RENDER_SAMPLES=24 blender -b gilgamesh_ishtar.blend -P render_all.py → frames/f0001.png … f1440.png.
  5. Video — ./make_video60.sh (výchozí vstupy frames/ + epic_uruk_60s.ogg), výsledek ověř python3 check_video60.py gilgamesh_ishtar_60s.mp4.

Poznámky:

  • gilgamesh_ishtar.blend odkazuje oblohu absolutní cestou (SKY v build_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