70 lines
1.6 KiB
Plaintext
70 lines
1.6 KiB
Plaintext
|
|
Import('env')
|
|
|
|
src_files = Split("""
|
|
main.cpp
|
|
|
|
application.cpp
|
|
gui/button.cpp
|
|
gui/label.cpp
|
|
gui/ui_renderer.cpp
|
|
gui/widget.cpp
|
|
post_process/post_processor.cpp
|
|
scene/loader.cpp
|
|
scene/mesh.cpp
|
|
scene/scene.cpp
|
|
scene/scene_renderer.cpp
|
|
util/bitmap.cpp
|
|
util/font_map.cpp
|
|
util/mesh.cpp
|
|
util/texture_atlas.cpp
|
|
|
|
0_clear_swapchain/app.cpp
|
|
1_green_triangle/app.cpp
|
|
2_triangle_with_texcoords/app.cpp
|
|
3_textured_quad/app.cpp
|
|
4_textured_cube/app.cpp
|
|
5_input/app.cpp
|
|
6_ui/app.cpp
|
|
7_3d_scene/app.cpp
|
|
8_post_process/app.cpp
|
|
""")
|
|
|
|
shader_files = env.Glob("#assets/shaders/glsl/*.frag") \
|
|
+ env.Glob("#assets/shaders/glsl/*.vert") \
|
|
+ env.Glob("#assets/shaders/glsl/*.comp")
|
|
|
|
env.Append(CPPDEFINES = ['GLM_FORCE_DEPTH_ZERO_TO_ONE', 'GLM_FORCE_RADIANS', 'GLM_ENABLE_EXPERIMENTAL'])
|
|
prog_app = env.UnityProgram(
|
|
name = 'SDL GPU Test',
|
|
target = env['BIN_DIR'] + '/sdl_gpu_test',
|
|
source = src_files,
|
|
dependencies = {
|
|
'argparse': {},
|
|
'glm': {},
|
|
'mijin': {},
|
|
'SDL': {
|
|
'options': {
|
|
'ref': '76ce83801ade3ac922ad5ba6fddc49764c24206a'
|
|
}
|
|
},
|
|
'spdlog': {},
|
|
'stb': {},
|
|
'tinyobjloader': {},
|
|
'yaml-cpp': {}
|
|
}
|
|
)
|
|
env.Default(prog_app)
|
|
|
|
for shader_file in shader_files:
|
|
spv = env.SpirV(source = shader_file, target=f'{shader_file}.spv')
|
|
env.Default(spv)
|
|
|
|
pack = env.PackTextures(
|
|
target = '#assets/bitmaps/ui.png',
|
|
source = ['#assets/bitmaps/ui_elements.txt']
|
|
)
|
|
env.Default(pack)
|
|
|
|
Return('env')
|