Skip to content

Commit f7d9335

Browse files
committed
Better handling of viewport defaults
Fixes #44
1 parent 30fd860 commit f7d9335

File tree

1 file changed

+9
-10
lines changed

1 file changed

+9
-10
lines changed

orthographic/camera.lua

+9-10
Original file line numberDiff line numberDiff line change
@@ -382,17 +382,16 @@ function M.update(camera_id, dt)
382382
local viewport_left = go.get(camera.url, "viewport_left")
383383
local viewport_bottom = go.get(camera.url, "viewport_bottom")
384384
local viewport_right = go.get(camera.url, "viewport_right")
385-
if viewport_top ~= 0 or viewport_left ~= 0 or viewport_bottom ~= 0 or viewport_right ~= 0 then
386-
camera.viewport.x = viewport_left
387-
camera.viewport.y = viewport_bottom
388-
camera.viewport.z = viewport_right - viewport_left
389-
camera.viewport.w = viewport_top - viewport_bottom
390-
else
391-
camera.viewport.x = 0
392-
camera.viewport.y = 0
393-
camera.viewport.z = WINDOW_WIDTH
394-
camera.viewport.w = WINDOW_HEIGHT
385+
if viewport_top == 0 then
386+
viewport_top = WINDOW_HEIGHT
387+
end
388+
if viewport_right == 0 then
389+
viewport_right = WINDOW_WIDTH
395390
end
391+
camera.viewport.x = viewport_left
392+
camera.viewport.y = viewport_bottom
393+
camera.viewport.z = math.max(viewport_right - viewport_left, 1)
394+
camera.viewport.w = math.max(viewport_top - viewport_bottom, 1)
396395

397396
go.set_position(camera_world_pos + camera_world_to_local_diff, camera_id)
398397

0 commit comments

Comments
 (0)