diff options
Diffstat (limited to 'examples/opengl/textures')
-rw-r--r-- | examples/opengl/textures/CMakeLists.txt | 38 | ||||
-rw-r--r-- | examples/opengl/textures/glwidget.cpp | 8 | ||||
-rw-r--r-- | examples/opengl/textures/main.cpp | 2 |
3 files changed, 26 insertions, 22 deletions
diff --git a/examples/opengl/textures/CMakeLists.txt b/examples/opengl/textures/CMakeLists.txt index 1e7d1a402f..2765355c5a 100644 --- a/examples/opengl/textures/CMakeLists.txt +++ b/examples/opengl/textures/CMakeLists.txt @@ -1,16 +1,13 @@ +# Copyright (C) 2022 The Qt Company Ltd. +# SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause + cmake_minimum_required(VERSION 3.16) project(textures LANGUAGES CXX) -set(CMAKE_AUTOMOC ON) - -if(NOT DEFINED INSTALL_EXAMPLESDIR) - set(INSTALL_EXAMPLESDIR "examples") -endif() - -set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/opengl/textures") - find_package(Qt6 REQUIRED COMPONENTS Core Gui OpenGL OpenGLWidgets Widgets) +qt_standard_project_setup() + qt_add_executable(textures glwidget.cpp glwidget.h main.cpp @@ -22,12 +19,12 @@ set_target_properties(textures PROPERTIES MACOSX_BUNDLE TRUE ) -target_link_libraries(textures PUBLIC - Qt::Core - Qt::Gui - Qt::OpenGL - Qt::OpenGLWidgets - Qt::Widgets +target_link_libraries(textures PRIVATE + Qt6::Core + Qt6::Gui + Qt6::OpenGL + Qt6::OpenGLWidgets + Qt6::Widgets ) # Resources: @@ -48,7 +45,14 @@ qt6_add_resources(textures "textures" ) install(TARGETS textures - RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" - BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" - LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION . + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} +) + +qt_generate_deploy_app_script( + TARGET textures + OUTPUT_SCRIPT deploy_script + NO_UNSUPPORTED_PLATFORM_ERROR ) +install(SCRIPT ${deploy_script}) diff --git a/examples/opengl/textures/glwidget.cpp b/examples/opengl/textures/glwidget.cpp index 9c6828b902..cca08f4c91 100644 --- a/examples/opengl/textures/glwidget.cpp +++ b/examples/opengl/textures/glwidget.cpp @@ -46,9 +46,6 @@ void GLWidget::initializeGL() makeObject(); - glEnable(GL_DEPTH_TEST); - glEnable(GL_CULL_FACE); - #define PROGRAM_VERTEX_ATTRIBUTE 0 #define PROGRAM_TEXCOORD_ATTRIBUTE 1 @@ -91,6 +88,9 @@ void GLWidget::paintGL() glClearColor(clearColor.redF(), clearColor.greenF(), clearColor.blueF(), clearColor.alphaF()); glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); + glEnable(GL_DEPTH_TEST); + glEnable(GL_CULL_FACE); + QMatrix4x4 m; m.ortho(-0.5f, +0.5f, +0.5f, -0.5f, 4.0f, 15.0f); m.translate(0.0f, 0.0f, -10.0f); @@ -98,6 +98,8 @@ void GLWidget::paintGL() m.rotate(yRot / 16.0f, 0.0f, 1.0f, 0.0f); m.rotate(zRot / 16.0f, 0.0f, 0.0f, 1.0f); + vbo.bind(); + program->bind(); program->setUniformValue("matrix", m); program->enableAttributeArray(PROGRAM_VERTEX_ATTRIBUTE); program->enableAttributeArray(PROGRAM_TEXCOORD_ATTRIBUTE); diff --git a/examples/opengl/textures/main.cpp b/examples/opengl/textures/main.cpp index c1e91e6257..7e5f0646cb 100644 --- a/examples/opengl/textures/main.cpp +++ b/examples/opengl/textures/main.cpp @@ -8,8 +8,6 @@ int main(int argc, char *argv[]) { - Q_INIT_RESOURCE(textures); - QApplication app(argc, argv); QSurfaceFormat format; |