mirror of
https://github.com/nunuhara/xsystem4.git
synced 2026-10-06 22:08:19 +03:00
In addition to DrawDungeon.c, this adds the following files in
{src,include}/dungeon/:
- dgn.{h,c}: Parser for .dgn (map data)
- dtx.{h,c}: Parser for .dtx (textures)
- tes.{h,c}: Parser for .tes (sound IDs associated with textures)
- dungeon.{h,c}: Renderer main routines
- mesh.{h,c}: Renderer for walls and stairs
- skybox.{h,c}: Renderer for background cubemap
- event_markers.{h,c}: Renderer for event markers
And the following changes are made to the existing graphics code:
- sact_Update() calls dungeon_update(), so that event markers animate
- gfx_render_texture() renders vertically flipped image when
texture.flip_y == true (see the comment in dungeon_context_create())
Some features are not implemented yet, including 2D maps and door
animation.
This makes cglm a dependency.
82 lines
2.3 KiB
Meson
82 lines
2.3 KiB
Meson
# sources for xsystem4
|
|
xsystem4 = ['audio.c',
|
|
'cJSON.c',
|
|
'draw.c',
|
|
'effect.c',
|
|
'ffi.c',
|
|
'fnl_render.c',
|
|
'format.c',
|
|
'heap.c',
|
|
'input.c',
|
|
'page.c',
|
|
'resume.c',
|
|
'savedata.c',
|
|
'sprite.c',
|
|
'system4.c',
|
|
'text.c',
|
|
'video.c',
|
|
'vm.c',
|
|
|
|
'dungeon/dgn.c',
|
|
'dungeon/dtx.c',
|
|
'dungeon/dungeon.c',
|
|
'dungeon/event_markers.c',
|
|
'dungeon/mesh.c',
|
|
'dungeon/skybox.c',
|
|
'dungeon/tes.c',
|
|
|
|
'hll/ACXLoader.c',
|
|
'hll/ADVSYS.c',
|
|
'hll/AliceLogo.c',
|
|
'hll/AliceLogo2.c',
|
|
'hll/AliceLogo3.c',
|
|
'hll/AliceLogo4.c',
|
|
'hll/AnteaterADVEngine.c',
|
|
'hll/BanMisc.c',
|
|
'hll/Bitarray.c',
|
|
'hll/CharSpriteManager.c',
|
|
'hll/Confirm.c',
|
|
'hll/Confirm2.c',
|
|
'hll/CrayfishLogViewer.c',
|
|
'hll/DataFile.c',
|
|
'hll/DrawDungeon.c',
|
|
'hll/DrawGraph.c',
|
|
'hll/DrawMovie2.c',
|
|
'hll/DrawPluginManager.c',
|
|
'hll/File.c',
|
|
'hll/Gpx2Plus.c',
|
|
'hll/iarray.c',
|
|
'hll/InputDevice.c',
|
|
'hll/InputString.c',
|
|
'hll/KiwiSoundEngine.c',
|
|
'hll/Math.c',
|
|
'hll/MenuMsg.c',
|
|
'hll/MsgLogManager.c',
|
|
'hll/MsgLogViewer.c',
|
|
'hll/MsgSkip.c',
|
|
'hll/OutputLog.c',
|
|
'hll/PassRegister.c',
|
|
'hll/PlayDemo.c',
|
|
'hll/PlayMovie.c',
|
|
'hll/SACT2.c',
|
|
'hll/SengokuRanceFont.c',
|
|
'hll/StoatSpriteEngine.c',
|
|
'hll/SystemService.c',
|
|
'hll/SystemServiceEx.c',
|
|
'hll/Timer.c',
|
|
'hll/VSFile.c',
|
|
]
|
|
|
|
xsystem4_deps = [libm, zlib, sdl2, sdl2ttf, sdl2mixer, ffi, gl, glew, cglm, libsys4_dep]
|
|
if chibi.found()
|
|
xsystem4_deps += chibi
|
|
xsystem4 += 'debugger.c'
|
|
add_project_arguments('-DDEBUGGER_ENABLED', language : 'c')
|
|
endif
|
|
|
|
executable('xsystem4', xsystem4,
|
|
dependencies : xsystem4_deps,
|
|
c_args : ['-Wno-unused-parameter'],
|
|
include_directories : incdir,
|
|
install : true)
|