diff semicongine.nim @ 1420:6f81a41603d9

did: start working on big restructuring
author sam <sam@basx.dev>
date Thu, 09 Jan 2025 01:00:58 +0700
parents 3dbf77ca78b9
children 3b8a736c45a7
line wrap: on
line diff
--- a/semicongine.nim	Wed Jan 01 19:36:55 2025 +0700
+++ b/semicongine.nim	Thu Jan 09 01:00:58 2025 +0700
@@ -13,12 +13,8 @@
 import ./semicongine/image
 export image
 
-import ./semicongine/events
 import ./semicongine/rendering
-import ./semicongine/rendering/vulkan/api
-export events
 export rendering
-export api
 
 import ./semicongine/storage
 import ./semicongine/input
@@ -46,3 +42,15 @@
   export texture_packing
   export collision
   export noise
+
+#### Main engine object
+
+proc initEngine*(appName: string) =
+  engine_obj_internal = Engine()
+  engine_obj_internal.vulkan = initVulkan(appName)
+
+  # start audio
+  engine_obj_internal.mixer = createShared(Mixer)
+  engine_obj_internal.mixer[] = initMixer()
+  engine_obj_internal.audiothread.createThread(audioWorker, engine_obj_internal.mixer)
+  engine_obj_internal.initialized = true