Mercurial > games > semicongine
diff tests/test_gltf.nim @ 1423:3b8a736c45a7
did: put almost all global state into a single struct
author | sam <sam@basx.dev> |
---|---|
date | Thu, 09 Jan 2025 23:03:47 +0700 |
parents | 5e5a3311ca44 |
children | 676fc13685a9 |
line wrap: on
line diff
--- a/tests/test_gltf.nim Thu Jan 09 01:03:06 2025 +0700 +++ b/tests/test_gltf.nim Thu Jan 09 23:03:47 2025 +0700 @@ -6,7 +6,7 @@ import ../semicongine -proc test_gltf(time: float32) = +proc test_gltf(time: float32, renderPass: RenderPass) = var renderdata = initRenderData() type @@ -134,8 +134,7 @@ renderdata.assignBuffers(primitive[0]) renderdata.assignBuffers(descriptors) - var pipeline = - createPipeline(Shader(), renderPass = vulkan.swapchain.renderPass, cullMode = []) + var pipeline = createPipeline(Shader(), renderPass = renderPass, cullMode = []) initDescriptorSet(renderdata, pipeline.descriptorSetLayouts[0], descriptors) renderdata.flushAllMemory() @@ -202,11 +201,11 @@ withNextFrame(framebuffer, commandbuffer): withRenderPass( - vulkan.swapchain.renderPass, + renderPass, framebuffer, commandbuffer, - vulkan.swapchain.width, - vulkan.swapchain.height, + frameWidth(), + frameHeight(), vec4(0, 0, 0, 0), ): withPipeline(commandbuffer, pipeline): @@ -220,13 +219,13 @@ ) # cleanup - checkVkResult vkDeviceWaitIdle(vulkan.device) + checkVkResult vkDeviceWaitIdle(engine().vulkan.device) destroyPipeline(pipeline) destroyRenderData(renderdata) when isMainModule: var time = 1000'f32 - initVulkan() + initEngine("Test glTF") var renderpass = createDirectPresentationRenderPass( depthBuffer = true, samples = VK_SAMPLE_COUNT_4_BIT @@ -236,10 +235,10 @@ # showSystemCursor(false) # tests a simple triangle with minimalistic shader and vertex format - test_gltf(time) + test_gltf(time, renderpass) - checkVkResult vkDeviceWaitIdle(vulkan.device) - vkDestroyRenderPass(vulkan.device, renderpass.vk, nil) + checkVkResult vkDeviceWaitIdle(engine().vulkan.device) + destroyRenderPass(renderpass) clearSwapchain() destroyVulkan()