From d5d545887569f9b11fa6aa16eee524afec3da19e Mon Sep 17 00:00:00 2001 From: Paweł Redman Date: Thu, 26 Apr 2018 15:43:37 +0200 Subject: Fix ambience being calculated incorrectly (regression from 4cfe1361f). --- src/game/game.cpp | 6 ++---- src/game/game.hpp | 3 ++- src/game/interface.cpp | 2 ++ src/game/pseudostate.cpp | 2 +- 4 files changed, 7 insertions(+), 6 deletions(-) (limited to 'src/game') diff --git a/src/game/game.cpp b/src/game/game.cpp index b10bc08..3adfd85 100644 --- a/src/game/game.cpp +++ b/src/game/game.cpp @@ -528,15 +528,13 @@ void state_t::tick(ntime_t time_) #define XRES 9 #define YRES 9 -void state_t::compute_ambience(render::state_t *render) +void state_t::compute_ambience(void) { const size_t samples = XRES * YRES; - rectf_t area; + rectf_t area = interface.world_view; v2f_t origins[AMBIENT_COUNT]; size_t hits[AMBIENT_COUNT]; - area = render->window_in_world_space(); - for (size_t i = 0; i < AMBIENT_COUNT; i++) { origins[i] = v2f_t(0, 0); hits[i] = 0; diff --git a/src/game/game.hpp b/src/game/game.hpp index 4066b02..c378524 100644 --- a/src/game/game.hpp +++ b/src/game/game.hpp @@ -94,6 +94,7 @@ namespace interface { void stop_following(void); public: + rectf_t world_view; v3f_t camera_3d; // for audio void tick(double dt); @@ -134,7 +135,7 @@ namespace game { void start(void); void stop(void); void tick(ntime_t time); - void compute_ambience(render::state_t *render); + void compute_ambience(void); void pause(void); void resume(void); diff --git a/src/game/interface.cpp b/src/game/interface.cpp index f6106e2..10ab751 100644 --- a/src/game/interface.cpp +++ b/src/game/interface.cpp @@ -285,6 +285,8 @@ void state_t::tick(double dt) if (pie_menu.is_open) pie_menu.update(mouse); + + world_view = render::window_bounds(window); } void state_t::print(std::string str) diff --git a/src/game/pseudostate.cpp b/src/game/pseudostate.cpp index 0f2d0c5..5b64b9e 100644 --- a/src/game/pseudostate.cpp +++ b/src/game/pseudostate.cpp @@ -57,7 +57,7 @@ void pseudostate_t::render_interface_to(render::state_t *render) { pimpl->interface.render_to(render); - pimpl->compute_ambience(render); + pimpl->compute_ambience(); audio::update(pimpl->interface.camera_3d, pimpl->paused); } -- cgit