Skip to content

Commit ea4465d

Browse files
committed
Check window width and height in render script
Fixes #68
1 parent ae92852 commit ea4465d

File tree

2 files changed

+18
-15
lines changed

2 files changed

+18
-15
lines changed

game.project

-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
[project]
22
title = Orthographic
33
version = 0.9
4-
write_log = 1
54
dependencies#0 = https://github.com/britzl/deftest/archive/2.7.0.zip
65
dependencies#1 = https://github.com/britzl/gooey/archive/refs/tags/10.4.0.zip
76
dependencies#2 = https://github.com/subsoap/defos/archive/refs/tags/v2.7.1.zip

orthographic/render/orthographic.render_script

+18-14
Original file line numberDiff line numberDiff line change
@@ -52,20 +52,24 @@ function update(self)
5252
render.draw_debug3d()
5353
end
5454
end
55-
56-
-- draw gui in screen space using an orthographic projection
57-
render.disable_state(render.STATE_DEPTH_TEST)
58-
render.disable_state(render.STATE_CULL_FACE)
59-
render.enable_state(render.STATE_STENCIL_TEST)
60-
render.set_viewport(0, 0, render.get_window_width(), render.get_window_height())
61-
view = IDENTITY
62-
render.set_view(view)
63-
proj = vmath.matrix4_orthographic(0, render.get_window_width(), 0, render.get_window_height(), -1, 1)
64-
render.set_projection(proj)
65-
frustum = proj * view
66-
render.draw(self.gui_pred, {frustum = frustum})
67-
render.draw(self.text_pred, {frustum = frustum})
68-
render.disable_state(render.STATE_STENCIL_TEST)
55+
56+
local window_width = render.get_window_width()
57+
local window_height = render.get_window_height()
58+
if window_width > 0 and window_height > 0 then
59+
-- draw gui in screen space using an orthographic projection
60+
render.disable_state(render.STATE_DEPTH_TEST)
61+
render.disable_state(render.STATE_CULL_FACE)
62+
render.enable_state(render.STATE_STENCIL_TEST)
63+
render.set_viewport(0, 0, window_width, window_height)
64+
view = IDENTITY
65+
render.set_view(view)
66+
proj = vmath.matrix4_orthographic(0, window_width, 0, window_height, -1, 1)
67+
render.set_projection(proj)
68+
frustum = proj * view
69+
render.draw(self.gui_pred, {frustum = frustum})
70+
render.draw(self.text_pred, {frustum = frustum})
71+
render.disable_state(render.STATE_STENCIL_TEST)
72+
end
6973
end
7074

7175
function on_message(self, message_id, message)

0 commit comments

Comments
 (0)