Mercurial > games > semicongine
diff test2.nim @ 1160:836dc1eda5e3 compiletime-tests
did: some stuff
author | sam <sam@basx.dev> |
---|---|
date | Wed, 19 Jun 2024 09:17:24 +0700 |
parents | e7cbb13999e4 |
children | dbca0528c714 |
line wrap: on
line diff
--- a/test2.nim Mon Jun 17 22:21:59 2024 +0700 +++ b/test2.nim Wed Jun 19 09:17:24 2024 +0700 @@ -1,10 +1,41 @@ +import std/os + +import semicongine/platform/window +import semicongine/core/vulkanapi +import semicongine/vulkan/instance +import semicongine/vulkan/device +import semicongine/vulkan/physicaldevice +# import ./vulkan/shader + +import semicongine/core/vector +import semicongine/core/matrix + type - ShaderInputA = object - positions {.VertexAttribute.}: seq[Vec3f] - colors {.VertexAttribute.}: seq[Vec3f] - transforms {.InstanceAttribute.}: seq[Vec3f] - other: bool + MeshA = object + positions: seq[Vec3f] + colors: seq[Vec3f] + transparency: float32 + ArrayData = object + transforms: seq[Vec3f] + Enemy = object - shaderData: ShaderInputA + mesh: MeshA + enemies: ArrayData + +let e = Enemy() +echo e -proc initEnemy() +let w = CreateWindow("test2") +putEnv("VK_LAYER_ENABLES", "VALIDATION_CHECK_ENABLE_VENDOR_SPECIFIC_AMD,VALIDATION_CHECK_ENABLE_VENDOR_SPECIFIC_NVIDIA,VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXTVK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT,VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT") +let i = w.CreateInstance( + vulkanVersion = VK_MAKE_API_VERSION(0, 1, 3, 0), + instanceExtensions = @[], + layers = @["VK_LAYER_KHRONOS_validation"], +) + +let selectedPhysicalDevice = i.GetPhysicalDevices().FilterBestGraphics() +let d = i.CreateDevice( + selectedPhysicalDevice, + enabledExtensions = @[], + selectedPhysicalDevice.FilterForGraphicsPresentationQueues() +)