Files
Cubed/src/CMakeLists.txt
zhenyan121 d62b310a21 feature: localization (#32)
* build: add nlohmann/json library

* build(deps): add harfbuzz dependency

* feat(cmake): add guard to reject macOS builds

* feat(font): add HarfBuzz shaping and replace font with unifont

* feat(localization): add i18n support with en_US and zh_CN translations

Implement Localization class to load JSON translation files. Replace hardcoded strings in UI with translation keys and update sliders/combo buttons to use dynamic text.

* feat(localization): detect system locale for language default

* feat(settings): add language selection option with restart notification

* fix: use vckpg to add freetype on windows
2026-07-16 17:11:53 +08:00

88 lines
2.6 KiB
CMake

target_sources(${PROJECT_NAME}
PRIVATE
main.cpp
app.cpp
debug_collector.cpp
camera.cpp
config.cpp
dev_panel.cpp
gameplay/biome.cpp
gameplay/chunk_generator.cpp
gameplay/tree.cpp
render/renderer.cpp
shader.cpp
texture_manager.cpp
tools/cubed_random.cpp
tools/shader_tools.cpp
tools/font.cpp
tools/perlin_noise.cpp
window.cpp
gameplay/builders/biome_builder.cpp
gameplay/builders/plain_builder.cpp
gameplay/builders/mountain_builder.cpp
gameplay/builders/river_builder.cpp
gameplay/builders/desert_builder.cpp
gameplay/builders/forest_builder.cpp
gameplay/cave_carver.cpp
gameplay/cave_path.cpp
gameplay/builders/snowy_plain_builder.cpp
gameplay/river_worm.cpp
gameplay/river_path.cpp
gameplay/block.cpp
gameplay/vertex_data.cpp
gameplay/builders/ocean_builder.cpp
gameplay/network_server.cpp
gameplay/server_world.cpp
gameplay/client_world.cpp
gameplay/server_chunk.cpp
gameplay/client_chunk.cpp
gameplay/server_player.cpp
gameplay/client_player.cpp
gameplay/session.cpp
gameplay/network_client.cpp
render/player_renderer.cpp
audio/audio_engine.cpp
audio/audio_loader.cpp
audio/audio_source.cpp
audio/audio_buffer.cpp
audio/sound_manager.cpp
audio/source_pool.cpp
audio/audio_fade.cpp
audio/audio_filter.cpp
audio/audio_effect.cpp
audio/audio_effect_slot.cpp
render/vertex_buffer.cpp
render/vertex_array.cpp
render/texture.cpp
render/frame_buffer.cpp
render/shader_manager.cpp
render/world_renderer.cpp
ui/widget.cpp
ui/label.cpp
ui/ui_vertex_data.cpp
ui/image.cpp
ui/button.cpp
scene/world_scene.cpp
scene/scene_manager.cpp
ui/world_ui_manager.cpp
ui/main_menu_ui_manager.cpp
scene/main_menu_scene.cpp
ui/column_layout.cpp
ui/rect.cpp
ui/ui_manager.cpp
ui/pause_menu_ui_manager.cpp
scene/credits_scene.cpp
ui/credits_ui.cpp
ui/slider.cpp
ui/settings_ui.cpp
scene/settings_scene.cpp
ui/combo_button.cpp
ui/text_field.cpp
scene/host_game_scene.cpp
scene/join_game_scene.cpp
ui/host_game_ui.cpp
ui/join_game_ui.cpp
ui/error_ui.cpp
localization.cpp
tools/system_locate.cpp
)