Ident wrote:That is extremely odd. Glfw just sets up the host window and some OpenGL stuff but this should not have any effect whatsoever on mathematical computations on the GPU, especially with OpenGL3 core profile.
Did you say the application_templates with glfw3 is always broken, already as it is in the repo?
I think it is broken.
My configuration is:
MS Visual Studio 2017 Community, glfw-3.2.1, glew-2.1.0, other dependencies is downloaded as package from
https://bitbucket.org/cegui/cegui-dependencies/get/v0-8.zip. Everything is built as debug version using CMake GUI 3.13.3.
********************************************************************************
* -------- START OF ESSENTIAL SECTION TO BE POSTED ON THE FORUM -------- *
********************************************************************************
---- Version: 0.9999.0 (Build: Feb 20 2019 Debug Microsoft Windows MSVC++ Unknown MSVC++ version 64 bit) ----
---- Renderer module is: CEGUI::OpenGL3Renderer - Official OpenGL 3.2 core based renderer module. TextureTarget support enabled via FBO OGL 3.2 core implementation. ----
---- XML Parser module is: CEGUI::ExpatParser - Official expat based parser module for CEGUI ----
---- Image Codec module is: SILLYImageCodec - Official SILLY based image codec ----
---- Scripting module is: None ----
********************************************************************************
* -------- END OF ESSENTIAL SECTION TO BE POSTED ON THE FORUM -------- *
********************************************************************************
Steps to reproduce:
- Create new project "Classic Windows application"
- Replace VS stub with code from cegui\application_templates\glfw3.cpp
- Change OpenGLRenderer to OpenGL3Renderer in the code (3 lines, 5 occurences)
- Add all appropriate include folders
- Add all appropriate lib folders and libs
- Build
- Copy all appropriate *.dll's to executable folder
- Copy \cegui\datafiles\ to executable folder\datafiles\
- Open application_templates.layout and replace its contents with
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<GUILayout version="4" >
<Window type="DefaultWindow" name="DefaultWindow" >
<Property name="Area" value="{{0,0},{0,0},{1,0},{1,0}}" />
<Property name="MaxSize" value="{{1,0},{1,0}}" />
<Window type="TaharezLook/Button" name="Button" >
<Property name="Area" value="{{0.1,0},{0.05,0},{0.2,0},{0.15,0}}" />
<Property name="Rotation" value="x:45 y:0 z:0"/>
</Window>
</Window>
</GUILayout>
- Run
The output:
![Image](https://i.ibb.co/DY5m94N/bug-reproduced.png)
And setting angle to 90 does not make the button invisible.
At the same time, samples framework + hello world +
Code: Select all
wnd->setRotation(CEGUI::Quaternion::eulerAnglesDegrees(45, 0, 0))
gives:
![Image](https://i.ibb.co/PMrJSMn/samples-output.png)
which is also skewed, but in right way (perspective). Also,
Code: Select all
wnd->setRotation(CEGUI::Quaternion::eulerAnglesDegrees(90, 0, 0))
renders the widget invisible, as expected.