Files
SDL3CPlusPlus/config/seed_runtime.json
johndoe6345789 df19ae9264 feat: Enhance JSON configuration writer and add heartbeat recording to crash recovery service
- Updated JsonConfigWriterService to structure the JSON output with new sections for scripts, window settings, input bindings, paths, rendering, and GUI configurations.
- Introduced a new method in ICrashRecoveryService to record frame heartbeats, allowing for better tracking of long-running operations.
- Refactored existing code to improve readability and maintainability, including the addition of helper functions for adding string members to JSON objects.
2026-01-08 16:57:24 +00:00

138 lines
3.6 KiB
JSON

{
"schema_version": 2,
"launcher": {
"name": "Cube Demo",
"description": "3D cube room with first-person controls, lanterns, and physics interactions",
"enabled": true
},
"window": {
"title": "SDL3 Bgfx Demo",
"size": {
"width": 1024,
"height": 768
},
"mouse_grab": {
"enabled": true,
"grab_on_click": true,
"release_on_escape": true,
"start_grabbed": false,
"hide_cursor": true,
"relative_mode": true,
"grab_mouse_button": "left",
"release_key": "escape"
}
},
"scripts": {
"entry": "scripts/cube_logic.lua",
"lua_debug": false
},
"paths": {
"project_root": "../",
"scripts": "scripts",
"shaders": "shaders"
},
"input": {
"bindings": {
"move_forward": "W",
"move_back": "S",
"move_left": "A",
"move_right": "D",
"fly_up": "Q",
"fly_down": "Z",
"jump": "Space",
"noclip_toggle": "N",
"music_toggle": "M",
"music_toggle_gamepad": "start",
"gamepad_move_x_axis": "leftx",
"gamepad_move_y_axis": "lefty",
"gamepad_look_x_axis": "rightx",
"gamepad_look_y_axis": "righty",
"gamepad_dpad_up": "dpup",
"gamepad_dpad_down": "dpdown",
"gamepad_dpad_left": "dpleft",
"gamepad_dpad_right": "dpright",
"gamepad_button_actions": {
"a": "gamepad_a",
"b": "gamepad_b",
"x": "gamepad_x",
"y": "gamepad_y",
"leftshoulder": "gamepad_lb",
"rightshoulder": "gamepad_rb",
"leftstick": "gamepad_ls",
"rightstick": "gamepad_rs",
"back": "gamepad_back",
"start": "gamepad_start"
},
"gamepad_axis_actions": {
"lefttrigger": "gamepad_lt",
"righttrigger": "gamepad_rt"
},
"gamepad_axis_action_threshold": 0.5
}
},
"rendering": {
"bgfx": {
"renderer": "vulkan"
},
"materialx": {
"enabled": true,
"parameters_enabled": true,
"library_path": "MaterialX/libraries",
"library_folders": [
"stdlib",
"pbrlib",
"lights",
"bxdf",
"cmlib",
"nprlib",
"targets"
],
"materials": [
{
"shader_key": "floor",
"document": "MaterialX/resources/Materials/Examples/StandardSurface/standard_surface_wood_tiled.mtlx",
"material": "Tiled_Wood"
},
{
"shader_key": "wall",
"document": "MaterialX/resources/Materials/Examples/StandardSurface/standard_surface_brick_procedural.mtlx",
"material": "M_BrickPattern"
},
{
"shader_key": "ceiling",
"document": "MaterialX/resources/Materials/Examples/StandardSurface/standard_surface_marble_solid.mtlx",
"material": "Marble_3D"
},
{
"shader_key": "solid",
"document": "MaterialX/resources/Materials/Examples/StandardSurface/standard_surface_brass_tiled.mtlx",
"material": "Tiled_Brass"
}
]
},
"atmospherics": {
"ambient_strength": 0.006,
"fog_density": 0.006,
"fog_color": [0.03, 0.04, 0.06],
"sky_color": [0.02, 0.03, 0.05],
"gamma": 2.2,
"exposure": 1.15,
"enable_tone_mapping": true,
"enable_shadows": true,
"enable_ssgi": true,
"enable_volumetric_lighting": true,
"pbr_roughness": 0.28,
"pbr_metallic": 0.08
}
},
"gui": {
"font": {
"use_freetype": true,
"font_path": "scripts/assets/fonts/Roboto-Regular.ttf",
"font_size": 18.0
},
"opacity": 1.0
},
"config_file": "config/seed_runtime.json"
}