3
1
Fork
You've already forked qt3d
0
No description
  • C++ 87%
  • QML 5.7%
  • CMake 4.6%
  • GLSL 2.2%
  • Python 0.2%
  • Other 0.2%
Mauro Persano 5e71f1e4cd RHI: fix incorrect swapchain resize on high DPI screens
We were comparing the size of the swapchain to QWindow::size() *
QWindow::devicePixelRatio() to decide whether to resize the swapchain.
This may not always match the size of the swapchain: see for instance
the implementation of QGles2SwapChain::surfacePixelSize.
It's better to use QRhiSwapchain::surfacePixelSize instead.
Pick-to: 6.12 6.11 6.8
Fixes: QTBUG-148251
Fixes: QTBUG-142683
Change-Id: I5995e68b99cf0e71082cd68e16333b2d76ca0c88
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
2026年07月14日 11:36:29 +00:00
cmake Change the license of all CMakeLists.txt and *.cmake files to BSD 2022年08月24日 01:53:10 +02:00
coin Make module ready for source SBOM checking 2025年03月20日 13:34:56 +01:00
config.tests Change the license of all CMakeLists.txt and *.cmake files to BSD 2022年08月24日 01:53:10 +02:00
dist Remove year from Qt Copyright in REUSE.toml 2025年07月14日 09:47:52 +02:00
examples Doc: Add alt text for \image tags for qt3d 2025年11月06日 13:55:47 +00:00
LICENSES Add REUSE.toml files and missing licenses 2024年11月11日 08:02:29 +01:00
src RHI: fix incorrect swapchain resize on high DPI screens 2026年07月14日 11:36:29 +00:00
tests manual-tests: fix uniform types in simple-shaders-qml 2026年07月10日 21:21:35 +00:00
tools/utils Change license for tools files 2024年04月19日 12:30:46 +00:00
usecases Change the license of all CMakeLists.txt and *.cmake files to BSD 2022年08月24日 01:53:10 +02:00
.clang-format .clang-format: remove column limit 2022年12月19日 08:50:12 +01:00
.cmake.conf Bump version to 6.13.0 2026年06月07日 20:58:40 +00:00
.gitattributes Update the git-archive export options 2012年09月11日 09:25:30 +02:00
.gitignore Update .gitignore for new Qt Creator behavior 2024年08月05日 11:18:04 +01:00
.gitmodules Update assimp submodule 2021年06月02日 15:19:37 +03:00
.gitreview Add .gitreview file 2025年02月25日 15:39:41 +01:00
.qt-license-check.exclude Exclude developer qtcreator templates from license checks 2016年01月01日 09:57:41 +00:00
.tag Update the git-archive export options 2012年09月11日 09:25:30 +02:00
CMakeLists.txt Move qt_internal_project_setup as early as possible 2025年06月20日 15:24:49 +02:00
config_help.txt 3DCore: rip away the configure option and static choice of SIMD 2023年01月19日 19:18:52 -08:00
configure.cmake Change the license of all CMakeLists.txt and *.cmake files to BSD 2022年08月24日 01:53:10 +02:00
CONTRIBUTING.md Add CONTRIBUTING.md file 2026年04月21日 07:21:14 +00:00
dependencies.yaml Update dependencies on 'dev' in qt/qt3d 2026年07月10日 01:02:18 +00:00
licenseRule.json Add CONTRIBUTING.md file 2026年04月21日 07:21:14 +00:00
qt_cmdline.cmake Change the license of all CMakeLists.txt and *.cmake files to BSD 2022年08月24日 01:53:10 +02:00
README Add comment about assimp to readme 2015年05月24日 10:20:53 +00:00
REUSE.toml manual-tests: restore audio-visualizer-qml assets 2026年07月10日 19:30:00 +00:00

This directory contains the Qt3D project for Qt5:
 * Qt3D QML bindings and
 * Qt3D C++ APIs
Building Qt3D
==================
Qt5 is a rapidly changing bleeding edge environment. This branch is our initial
support for it and thus is also rapidly changing and bleeding edge.
This branch is experimental, and unsupported. This information is provided for
advanced use only.
No guarantees about API stability or even if this works at all are supplied, use
at your own risk.
First fetch the Qt5 source tree and Qt3D master branch:
 cd ~/depot
 git clone ssh://codereview.qt-project.org:29418/qt/qt5.git
 cd qt5
 ./init-repository --codereview-username <username> \
 --module-subset=qtbase,qtsvg,qtdeclarative,qttools,qtxmlpatterns,qtdoc,qlalr,qtrepotools,qtqa,qtlocation,qt3d
 git submodule foreach "git fetch gerrit && git reset --hard gerrit/master"
 cd qt3d
 scp -p -P 29418 codereview.qt-project.org:hooks/commit-msg .git/hooks/
 git fetch gerrit
 git checkout --track -b master gerrit/master
If you are reading this file then somehow you probably already got this far anyway.
Now build Qt5, which will also build Qt3D as a module:
 cd ~/build
 mkdir qt5
 cd qt5
 ~/depot/qt5/configure -developer-build -opensource -confirm-license -no-webkit -no-phonon -nomake tests \
 -nomake examples -declarative -opengl -svg && make -j 4
What's in Qt3D
==================
Directory structure:
src/threed/
 This is the main library of the Qt3D project, containing abstractions
 for cross-platform GL, shaders, lighting models, and so on.
src/plugins/
 Scene format loading plugins.
src/imports/
 QML import plugins.
util/
 Various utilities that are useful when working with Qt3D.
examples/
 Some examples of using Qt3D QML bindings and Qt3D C++ API.
demos/
 Some more complex demos of using Qt3D QML bindings and Qt3D C++ API.
tests/auto/qml3d/
 Unit tests for the QML bindings.
tests/auto/threed/
 Unit tests for the C++ API
doc/
 Documentation.
devices/symbian/
 Symbian deployment file
Documentation
=============
The documentation can be generated with "make docs". It will be placed
into "doc/html" in the build directory.
Packages
========
This section is only for those developing Qt3D. Read on to discover how
the building of packages works. This section is also important if you want to
change how the structure of the Qt3D pro files work.
To build Qt3D, run:
 qmake && make
The .pro files will cause the toolchain to place the libraries, QML files and
meshes of Qt3D directly into place, as part of the compile process. The files
go into the bin/ directory, and the executables can be run directly from there.
If you are doing a developer build, plugins will be installed in such a way
that Qt will find them.
After building the tree the install step is invoked using the INSTALL_ROOT environment
export to cause the installation rules to place all the files into a sandboxed
install tree, ready for packaging:
 INSTALL_ROOT=tmp make install
Examples
========
Some examples require assimp library to parse the content. Go to http://assimp.sourceforge.net/
and build and install the assimp library. Then configure Qt3D to include assimp and
run qmake && make.