Mercurial > games > semicongine
comparison semicongine.nim @ 1427:676fc13685a9
did: restructure files and imports
author | sam <sam@basx.dev> |
---|---|
date | Sat, 11 Jan 2025 14:04:39 +0700 |
parents | 0daed956cf9e |
children | d16964858790 |
comparison
equal
deleted
inserted
replaced
1426:075e4197bc95 | 1427:676fc13685a9 |
---|---|
1 import std/tables | |
2 import std/locks | |
3 | |
1 import ./semicongine/core | 4 import ./semicongine/core |
2 export core | 5 export core |
3 | 6 |
4 import ./semicongine/resources | 7 from ./semicongine/rendering import initVulkan |
5 export resources | 8 from ./semicongine/audio import audioWorker |
6 | 9 from ./semicongine/background_loaders import initBackgroundLoader |
7 import ./semicongine/loaders | 10 import ./semicongine/loaders |
8 export loaders | |
9 | |
10 import ./semicongine/background_loader | |
11 export background_loader | |
12 | |
13 import ./semicongine/image | |
14 export image | |
15 | |
16 import ./semicongine/rendering | |
17 export rendering | |
18 | |
19 import ./semicongine/rendering/renderer | |
20 export renderer | |
21 | |
22 import ./semicongine/rendering/swapchain | |
23 export swapchain | |
24 | |
25 import ./semicongine/rendering/renderpasses | |
26 export renderpasses | |
27 | |
28 import ./semicongine/rendering/shaders | |
29 export shaders | |
30 | |
31 import ./semicongine/rendering/memory | |
32 export memory | |
33 | |
34 import ./semicongine/rendering/vulkan_wrappers | |
35 export vulkan_wrappers | |
36 | |
37 import ./semicongine/storage | |
38 import ./semicongine/input | |
39 export storage | |
40 export input | |
41 | |
42 import ./semicongine/audio | |
43 export audio | |
44 | |
45 # texture packing is required for font atlas | |
46 import ./semicongine/text/font | |
47 export font | |
48 | |
49 import ./semicongine/text | |
50 export text | |
51 | |
52 import ./semicongine/gltf | |
53 export gltf | |
54 | |
55 when not defined(WITHOUT_CONTRIB): | |
56 import ./semicongine/contrib/steam | |
57 import ./semicongine/contrib/settings | |
58 import ./semicongine/contrib/algorithms/texture_packing | |
59 import ./semicongine/contrib/algorithms/collision | |
60 import ./semicongine/contrib/algorithms/noise | |
61 export steam | |
62 export settings | |
63 export texture_packing | |
64 export collision | |
65 export noise | |
66 | 11 |
67 #### Main engine object | 12 #### Main engine object |
68 | 13 |
69 proc initEngine*(appName: string) = | 14 proc initEngine*(appName: string) = |
70 engine_obj_internal = Engine() | 15 engine_obj_internal = Engine() |
71 engine_obj_internal.vulkan = initVulkan(appName) | 16 engine_obj_internal.vulkan = initVulkan(appName) |
72 | 17 |
73 # start audio | 18 # start audio |
74 engine_obj_internal.mixer = createShared(Mixer) | 19 engine_obj_internal.mixer = createShared(Mixer) |
75 engine_obj_internal.mixer[] = initMixer() | 20 engine_obj_internal.mixer[] = Mixer() |
21 engine_obj_internal.mixer[].tracks[""] = Track(level: 1) | |
22 engine_obj_internal.mixer[].lock.initLock() | |
76 engine_obj_internal.audiothread.createThread(audioWorker, engine_obj_internal.mixer) | 23 engine_obj_internal.audiothread.createThread(audioWorker, engine_obj_internal.mixer) |
77 engine_obj_internal.initialized = true | |
78 | 24 |
79 engine_obj_internal.rawLoader = initBackgroundLoader(loadBytes) | 25 engine_obj_internal.rawLoader = initBackgroundLoader(loadBytes) |
80 engine_obj_internal.jsonLoader = initBackgroundLoader(loadJson) | 26 engine_obj_internal.jsonLoader = initBackgroundLoader(loadJson) |
81 engine_obj_internal.configLoader = initBackgroundLoader(loadConfig) | 27 engine_obj_internal.configLoader = initBackgroundLoader(loadConfig) |
82 engine_obj_internal.grayImageLoader = initBackgroundLoader(loadImage[Gray]) | 28 engine_obj_internal.grayImageLoader = initBackgroundLoader(loadImage[Gray]) |
83 engine_obj_internal.imageLoader = initBackgroundLoader(loadImage[BGRA]) | 29 engine_obj_internal.imageLoader = initBackgroundLoader(loadImage[BGRA]) |
84 engine_obj_internal.audioLoader = initBackgroundLoader(loadAudio) | 30 engine_obj_internal.audioLoader = initBackgroundLoader(loadAudio) |
85 | 31 |
86 proc setEngine*(e: Engine) = | 32 engine_obj_internal.initialized = true |
87 engine_obj_internal = e |