diff --git a/KREngine/kraken/KRSprite.cpp b/KREngine/kraken/KRSprite.cpp index 3ee9d93..c9f63c6 100644 --- a/KREngine/kraken/KRSprite.cpp +++ b/KREngine/kraken/KRSprite.cpp @@ -28,7 +28,6 @@ KRSprite::KRSprite(KRScene &scene, std::string name) : KRNode(scene, name) { m_spriteTexture = ""; m_pSpriteTexture = NULL; - m_spriteSize = 0.0f; m_spriteAlpha = 1.0f; } @@ -43,7 +42,6 @@ std::string KRSprite::getElementName() { tinyxml2::XMLElement *KRSprite::saveXML( tinyxml2::XMLNode *parent) { tinyxml2::XMLElement *e = KRNode::saveXML(parent); - e->SetAttribute("sprite_size", m_spriteSize); e->SetAttribute("sprite_texture", m_spriteTexture.c_str()); e->SetAttribute("sprite_alpha", m_spriteAlpha); return e; @@ -52,9 +50,6 @@ tinyxml2::XMLElement *KRSprite::saveXML( tinyxml2::XMLNode *parent) void KRSprite::loadXML(tinyxml2::XMLElement *e) { KRNode::loadXML(e); - if(e->QueryFloatAttribute("sprite_size", &m_spriteSize) != tinyxml2::XML_SUCCESS) { - m_spriteSize = 0.0f; - } if(e->QueryFloatAttribute("sprite_alpha", &m_spriteAlpha) != tinyxml2::XML_SUCCESS) { m_spriteAlpha = 1.0f; } @@ -73,11 +68,6 @@ void KRSprite::setSpriteTexture(std::string sprite_texture) { m_pSpriteTexture = NULL; } -void KRSprite::setSpriteSize(float sprite_size) { - // TODO - Deprecated - This should come from the localScale - m_spriteSize = sprite_size; -} - void KRSprite::setSpriteAlpha(float alpha) { m_spriteAlpha = alpha; @@ -89,7 +79,7 @@ float KRSprite::getSpriteAlpha() const } KRAABB KRSprite::getBounds() { - return KRAABB(KRVector3(-m_spriteSize), KRVector3(m_spriteSize), getModelMatrix()); + return KRAABB(-KRVector3::One() * 0.5f, KRVector3::One() * 0.5f, getModelMatrix()); } @@ -99,7 +89,7 @@ void KRSprite::render(KRCamera *pCamera, std::vector &point_ligh if(renderPass == KRNode::RENDER_PASS_ADDITIVE_PARTICLES) { - if(m_spriteTexture.size() && m_spriteSize > 0.0f && m_spriteAlpha > 0.0f) { + if(m_spriteTexture.size() && m_spriteAlpha > 0.0f) { if(!m_pSpriteTexture && m_spriteTexture.size()) { @@ -128,7 +118,6 @@ void KRSprite::render(KRCamera *pCamera, std::vector &point_ligh KRVector3 rim_color; if(getContext().getShaderManager()->selectShader(*pCamera, pShader, viewport, getModelMatrix(), point_lights, directional_lights, spot_lights, 0, renderPass, rim_color, 0.0f)) { pShader->setUniform(KRShader::KRENGINE_UNIFORM_MATERIAL_ALPHA, m_spriteAlpha); - pShader->setUniform(KRShader::KRENGINE_UNIFORM_FLARE_SIZE, m_spriteSize); m_pContext->getTextureManager()->selectTexture(0, m_pSpriteTexture); m_pContext->getModelManager()->bindVBO(getContext().getModelManager()->KRENGINE_VBO_2D_SQUARE_VERTICES, getContext().getModelManager()->KRENGINE_VBO_2D_SQUARE_INDEXES, getContext().getModelManager()->KRENGINE_VBO_2D_SQUARE_ATTRIBS, true); GLDEBUG(glDrawArrays(GL_TRIANGLE_STRIP, 0, 4)); diff --git a/KREngine/kraken/KRSprite.h b/KREngine/kraken/KRSprite.h index e64be0f..9ddc84e 100644 --- a/KREngine/kraken/KRSprite.h +++ b/KREngine/kraken/KRSprite.h @@ -23,7 +23,6 @@ public: virtual void loadXML(tinyxml2::XMLElement *e); void setSpriteTexture(std::string sprite_texture); - void setSpriteSize(float sprite_size); void setSpriteAlpha(float alpha); float getSpriteAlpha() const; @@ -35,7 +34,6 @@ protected: std::string m_spriteTexture; KRTexture *m_pSpriteTexture; - float m_spriteSize; float m_spriteAlpha; }; diff --git a/KREngine/kraken_standard_assets_ios/Shaders/sprite.vsh b/KREngine/kraken_standard_assets_ios/Shaders/sprite.vsh index 347191e..1e8682a 100644 --- a/KREngine/kraken_standard_assets_ios/Shaders/sprite.vsh +++ b/KREngine/kraken_standard_assets_ios/Shaders/sprite.vsh @@ -32,11 +32,10 @@ attribute mediump vec2 vertex_uv; uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying the model, view, and projection matrices uniform mediump vec4 viewport; -uniform mediump float flare_size; varying mediump vec2 texCoord; void main() { texCoord = vertex_uv; - gl_Position = mvp_matrix * vec4(0.0, 0.0, 0.0, 1.0) + vec4(vertex_uv.x * viewport.w / viewport.z * 2.0 - 1.0, vertex_uv.y * 2.0 - 1.0, 0.0, 0.0) * flare_size; + gl_Position = mvp_matrix * vec4(vertex_uv.x * 2.0 - 1.0, vertex_uv.y * 2.0 - 1.0, 0.0, 1.0); } diff --git a/KREngine/kraken_standard_assets_osx/Shaders/sprite_osx.vsh b/KREngine/kraken_standard_assets_osx/Shaders/sprite_osx.vsh index 347191e..1e8682a 100644 --- a/KREngine/kraken_standard_assets_osx/Shaders/sprite_osx.vsh +++ b/KREngine/kraken_standard_assets_osx/Shaders/sprite_osx.vsh @@ -32,11 +32,10 @@ attribute mediump vec2 vertex_uv; uniform highp mat4 mvp_matrix; // mvp_matrix is the result of multiplying the model, view, and projection matrices uniform mediump vec4 viewport; -uniform mediump float flare_size; varying mediump vec2 texCoord; void main() { texCoord = vertex_uv; - gl_Position = mvp_matrix * vec4(0.0, 0.0, 0.0, 1.0) + vec4(vertex_uv.x * viewport.w / viewport.z * 2.0 - 1.0, vertex_uv.y * 2.0 - 1.0, 0.0, 0.0) * flare_size; + gl_Position = mvp_matrix * vec4(vertex_uv.x * 2.0 - 1.0, vertex_uv.y * 2.0 - 1.0, 0.0, 1.0); }