Vulkan black screen

I’ve been unable to find a solution (other than abandoning this for now & moving on to working on other parts of the game)

this seems to be the problem code:

-- if rt then
-- 	render.set_render_target(rt)
-- 	render.clear(self.clear_buffers)
-- end

clear(self, self.width, self.height)

local cameras = camera.get_cameras()
if #cameras > 0 then
	render.set_view(camera.get_view(cameras[1]))
else
	render.set_view(IDENTITY)
end
	
local zoom = get_zoom(self, window_width, window_height)
local w, h = self.width * zoom, self.height * zoom
-- if zoom == 1 then
-- 	w, h = self.width * 2, self.height * 2
-- end
-- local hw, hh = w / 2, h / 2
-- render.set_viewport(-w/2, -h/2, w, h)
-- render.set_projection(vmath.matrix4_orthographic(-hw, hw, -hh, hh, -ZDEPTH, ZDEPTH))

Originally, with OpenGL, none of the above would be commented out. It’d draw the game to a render texture, then upscale that & draw it to the screen. Everything works.

In order for Vulkan to display anything at all, though, I have to skip the render texture part (and the upscaling, naturally), as well as the little bit at the end there that scales the viewport & sets the projection. I’m not sure why this isn’t working.