- assets/audio/music/zombie_industrial_loop.ogg: 57.60 s Ogg Vorbis loop generated locally with YuE2-3B on the Tesla V100 (score written for this track; vocals removed with HTDemucs). The loop is spliced at the track's structural repeat with a 0.6 s crossfade: measured seam dip <= 1.6 dB. - scripts/main.gd: "Music" AudioStreamPlayer at -11 dB, started at boot on desktop and on the start click on Web (browser autoplay policy). It forces stream.loop at runtime because the Web staging step re-imports the OGG with loop=false. - tools/test_music.gd: soundtrack test (loop, length, volume, playback, still playing after player death). - docs/MUSIC.md: source, loop construction, verification, licence. - docs/WEB-DEPLOY.md: release ab6054111f5919a8 notes. Initial commit of the project.
16 lines
863 B
Python
16 lines
863 B
Python
"""Build a GDExtension-free staging project; leaves desktop import plugin intact."""
|
|
from pathlib import Path
|
|
import shutil
|
|
root = Path(__file__).resolve().parents[1]
|
|
stage = root/'build/web-stage'
|
|
if stage.exists():
|
|
shutil.rmtree(stage)
|
|
stage.mkdir(parents=True)
|
|
for directory in ['scripts','scenes','assets']:
|
|
shutil.copytree(root/directory,stage/directory,ignore=shutil.ignore_patterns('*.mdl','*.import','*.uid','half_life_manifest.json','p_9mmar.scn','w_9mmar.scn'))
|
|
config=(root/'project.godot').read_text().replace('enabled=PackedStringArray("res://addons/goldsrc/plugin.cfg")','enabled=PackedStringArray()')
|
|
config=config.replace('renderer/rendering_method="forward_plus"','renderer/rendering_method="gl_compatibility"')
|
|
(stage/'project.godot').write_text(config)
|
|
shutil.copyfile(root/'export_presets.cfg',stage/'export_presets.cfg')
|
|
print(stage)
|