From bf1ebebdf7e9b2f9a73b94722c331dea1f4c688a Mon Sep 17 00:00:00 2001 From: samuncle Date: Wed, 1 Apr 2015 04:30:17 +0200 Subject: [PATCH 1/3] Add a particle system --- data/gfx/gfx_sparkBlue_a.xml | 37 ++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 data/gfx/gfx_sparkBlue_a.xml diff --git a/data/gfx/gfx_sparkBlue_a.xml b/data/gfx/gfx_sparkBlue_a.xml new file mode 100644 index 00000000000..533b01ce831 --- /dev/null +++ b/data/gfx/gfx_sparkBlue_a.xml @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + From 6eab62fbd900e50a77bb36f3061840a11ac79a95 Mon Sep 17 00:00:00 2001 From: Marianne Gagnon Date: Tue, 7 Apr 2015 19:11:49 -0400 Subject: [PATCH 2/3] Fix #2068 --- src/achievements/achievement.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/achievements/achievement.cpp b/src/achievements/achievement.cpp index f9e66d04520..9fd6e6ba743 100644 --- a/src/achievements/achievement.cpp +++ b/src/achievements/achievement.cpp @@ -19,7 +19,7 @@ #include "achievements/achievement.hpp" - +#include "achievements/achievements_manager.hpp" #include "achievements/achievement_info.hpp" #include "guiengine/message_queue.hpp" #include "io/utf_writer.hpp" @@ -199,8 +199,13 @@ void Achievement::check() if(m_achievement_info->checkCompletion(this)) { //show achievement - core::stringw s = _("Completed achievement \"%s\".", - m_achievement_info->getName()); + // Note: the "name" variable is required, see issue #2068 + // calling _("...", info->getName()) is invalid because getName also calls + // _() and thus the string it returns is mapped to a temporary buffer + // in theory, it should return a copy of the string, but clang tries to + // optimise away the copy + core::stringw name = m_achievement_info->getName(); + core::stringw s = _("Completed achievement \"%s\".", name); MessageQueue::add(MessageQueue::MT_ACHIEVEMENT, s); // Sends a confirmation to the server that an achievement has been From aedb96caf48a459bd40953994b746853672ead2b Mon Sep 17 00:00:00 2001 From: Marianne Gagnon Date: Thu, 9 Apr 2015 19:58:07 -0400 Subject: [PATCH 3/3] Tentative fix for #2079 --- src/graphics/render.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/graphics/render.cpp b/src/graphics/render.cpp index 7f81098c521..7ccba658d87 100644 --- a/src/graphics/render.cpp +++ b/src/graphics/render.cpp @@ -390,7 +390,8 @@ void IrrDriver::renderScene(scene::ICameraSceneNode * const camnode, unsigned po // Bind() modifies the viewport. In order not to affect anything else, // the viewport is just reset here and not removed in Bind(). const core::recti &vp = Camera::getActiveCamera()->getViewport(); - glViewport(vp.UpperLeftCorner.X, vp.UpperLeftCorner.Y, + glViewport(vp.UpperLeftCorner.X, + irr_driver->getActualScreenSize().Height - vp.LowerRightCorner.Y, vp.LowerRightCorner.X - vp.UpperLeftCorner.X, vp.LowerRightCorner.Y - vp.UpperLeftCorner.Y); glClear(GL_DEPTH_BUFFER_BIT);