@@ -597,29 +597,26 @@ int main(void)
597
597
// Set up the default framebuffer
598
598
FrameBufferSystem::bindDefaultFrameBuffer ();
599
599
#pragma region SETUP & RENDER BRUSH DATA
600
+ const glm::vec2 heightMapRes = heightMapTexData.getRes ();
601
+ glm::vec2 brushAspectRatioHolder;
600
602
if (windowSys.getWindowRes ().x < windowSys.getWindowRes ().y )
601
603
{
602
- const glm::vec2 heightRes = heightMapTexData.getRes ();
603
- brushPanel.getTransform ()->setScale (glm::vec2 ((brushData.brushScale / heightRes.x ),
604
- (brushData.brushScale / heightRes.y ) * aspectRatio) * normalViewStateUtility.zoomLevel * 2 .0f );
605
-
606
- if (heightRes.x > heightRes.y )
607
- brushPanel.getTransform ()->setScale (brushPanel.getTransform ()->getScale () * glm::vec2 (heightRes.x / heightRes.y , 1 ));
604
+ if (heightMapTexData.getRes ().x > heightMapTexData.getRes ().y )
605
+ brushAspectRatioHolder = glm::vec2 (1 .0f , aspectRatio) * glm::vec2 (heightMapTexData.getRes ().x / heightMapTexData.getRes ().y , 1 .0f );
608
606
else
609
- brushPanel. getTransform ()-> setScale (brushPanel. getTransform ()-> getScale () * glm::vec2 (1 , heightRes. y / heightRes. x ) );
607
+ brushAspectRatioHolder = glm::vec2 ( 1 . 0f , aspectRatio) * glm::vec2 (1 , heightMapTexData. getRes (). y / heightMapTexData. getRes (). x );
610
608
}
611
609
else
612
610
{
613
- const glm::vec2 heightRes = heightMapTexData.getRes ();
614
- brushPanel.getTransform ()->setScale (glm::vec2 ((brushData.brushScale / heightRes.x ) / aspectRatio,
615
- (brushData.brushScale / heightRes.y )) * normalViewStateUtility.zoomLevel * 2 .0f );
616
-
617
- if (heightRes.x > heightRes.y )
618
- brushPanel.getTransform ()->setScale (brushPanel.getTransform ()->getScale () * glm::vec2 (heightMapTexData.getRes ().x / heightMapTexData.getRes ().y , 1 ));
611
+ if (heightMapTexData.getRes ().x > heightMapTexData.getRes ().y )
612
+ brushAspectRatioHolder = glm::vec2 (1 .0f / aspectRatio, 1 .0f ) * glm::vec2 (heightMapTexData.getRes ().x / heightMapTexData.getRes ().y , 1 .0f );
619
613
else
620
- brushPanel. getTransform ()-> setScale (brushPanel. getTransform ()-> getScale () * glm::vec2 (1 , heightMapTexData.getRes ().y / heightMapTexData.getRes ().x ) );
614
+ brushAspectRatioHolder = glm::vec2 ( 1 . 0f / aspectRatio, 1 . 0f ) * glm::vec2 (1 , heightMapTexData.getRes ().y / heightMapTexData.getRes ().x );
621
615
}
616
+ brushPanel.getTransform ()->setScale (brushAspectRatioHolder * (brushData.brushScale / heightMapTexData.getRes ().y ) * normalViewStateUtility.zoomLevel * 2 .0f );
617
+
622
618
GL::setBlendingMethod (BlendParam::SRC_ALPHA, BlendParam::ONE_MINUS_SRC_ALPHA);
619
+
623
620
brushPreviewShader.use ();
624
621
brushPanel.getTransform ()->setPosition (((curMouseCoord.x / windowSys.getWindowRes ().x ) * 2 .0f ) - 1 .0f ,
625
622
-(((curMouseCoord.y / windowSys.getWindowRes ().y ) * 2 .0f ) - 1 .0f ));
0 commit comments