Unsolved Visual Studio 2013 and Qt3D module
-
@Eddy said in Visual Studio 2013 and Qt3D module:
Microsoft Windows (win32) - Supported
Hi,
I would say (win32) has to be seen in contrast to (arm) not in contrast to 64-bit.
-Michael.
-
my bad : I already compiled a Qt3D app on my box,...
Thanks for correcting me. -
Maybe it's just not yet implemented in VS Tools yet: You can do it "by hand". Just add:
QT += 3dcore 3drender 3dinput 3dextras
to your .pro file. Depending on other things you use in your program, on WINDOWS, may need to add: LIBS += -lopengl32 as well.
-Michael.
-
There is no access to the .pro file, or i haven't found it.
If it's not yet implemented, why is it not documented in this way anywhere ?
-
In VS15 I did it this way. I don't use the english version, so my translation can differ
-right click on the project in the projext explorer
-properties
-choose "configuration"/"C/C++"/"general"
-edit the entry "additional Includes" and add:
$(QTDIR)\include\Qt3DExtras
$(QTDIR)\include\Qt3DRender
$(QTDIR)\include\Qt3DLogic
$(QTDIR)\include\Qt3DInput
$(QTDIR)\include\Qt3DCore -
Yes...and under Linker/Input corresponding "additional dependencies" i.e. *.lib-files.
These are the entries that qmake generates when you add "QT += 3dcore 3drender 3dinput 3dextras 3dlogic" to your .pro-file.
-Michael.
-
Ok I will give this a try !
Thanks -
So ! I have created a new Qt5 Application Projet.
I added these includes :
$(QTDIR)\include\Qt3DRender
$(QTDIR)\include\Qt3DLogic
$(QTDIR)\include\Qt3DInput
$(QTDIR)\include\Qt3DCore
(I don't have any Qt3DExtras folder here)
I added these libs to the linker :
Qt53DCore.lib
Qt53DRenderer.lib
Qt53DInput.lib
Qt53DLogic.lib
(no Qt53DExtras.lib either here)And this code crash at launch.
#include <QGuiApplication> #include <Qt3DRenderer/QWindow> int main(int argc, char *argv[]) { QGuiApplication a(argc, argv); Qt3D::QWindow view; view.show(); return a.exec(); }
did i do something wrong ?
The call stack by the way :
opengl32.dll!glGetIntegerv() qwindowsd.dll!QWindowsGLContext::QWindowsGLContext(QOpenGLStaticContext * staticContext, QOpenGLContext * context) qwindowsd.dll!QOpenGLStaticContext::createContext(QOpenGLContext * context) qwindowsd.dll!QWindowsIntegration::createPlatformOpenGLContext(QOpenGLContext * context) Qt5Guid.dll!QOpenGLContext::create() Qt53DRendererd.dll!Qt3D::Render::Renderer::initialize(QOpenGLContext * context) Qt53DRendererd.dll!Qt3D::Render::RenderThread::run() Qt5Cored.dll!QThreadPrivate::start(void * arg) msvcr120d.dll!_callthreadstartex() msvcr120d.dll!_threadstartex(void * ptd) kernel32.dll!0000000077a759cd() ntdll.dll!0000000077baa561()
One more detail, i got theses errors with the same code under QtCreator :
Qt3D.Core.Nodes: void Qt3D::QEntity::addComponent(Qt3D::QComponent*) Qt3D::QCameraLens(0x3e2b50) Qt3D.Core.Nodes: void Qt3D::QEntity::addComponent(Qt3D::QComponent*) Qt3D::QTransform(0x3e2b60) Failed to load scene parser plugin "C:/Qt/Qt5.5.1/5.5/mingw492_32/plugins/sceneparsers/assimpsceneparser.dll" Failed to load scene parser plugin "C:/Qt/Qt5.5.1/5.5/mingw492_32/plugins/sceneparsers/gltfsceneparser.dll"
-
Hi,
There's something fishy here, your title talks about VS2013 but you are using a MinGW installation of Qt. So all in all which one is it ?
-
Hey,
I want to use it under VS2013.
After having the crash with Visual Studio, i wanted to give a try to QtCreator with MinGW Qt Version. Just to check if it comes from the visual compilation or not.
-
You are aware that you can also use Qt Creator to build your application with the VS2013 compiler ?
-
Yep I know, but it's not an option on my project.
By the way, i got the exact same behavior using the VS2013 compiler.
The scene parser plugin that fails to load (the dll files) are well present in the folder.