[Interest] Qt3D - Setting the Camera's ViewMatrix Directly

Philip Schuchardt vpicaver at gmail.com
Mon Dec 5 17:37:59 CET 2016


Awesome! Thanks! I really like the entity and component system in qt3d! It
just takes time to understand all the components and how they play together
with each other. If I aggregate the QTransform and QCameraLens into my own
camera code, do I need to subclass framegraph node to select my custom
camera?


On Mon, Dec 5, 2016 at 3:52 AM Sean Harmer <sean.harmer at kdab.com> wrote:

> Hi,
>
> I see you found it already but I'll explain for posterity. All Qt 3D
> wants from a "camera" is a view matrix and a projection matrix. These
> come from the QTransform and QCameraLens components respectively, which
> are aggregated by QCamera. QCamera itself is not special, it is just an
> entity with these components and provides some API for common
> operations. If QCamera doesn't suit your needs you can subclass QEntity,
> aggregate these components, plus any others you want (perhaps a light
> source), and add whatever API you like.
>
> Cheers,
>
> Sean
>
> On 04/12/2016 20:49, Philip Schuchardt wrote:
> > Nevermind, I figured it out. The QCamera can be accessed changed
> > directly through QCamera::transform()->setMatrix().
> >
> >
> >
> > On Sun, Dec 4, 2016 at 9:54 AM Philip Schuchardt <vpicaver at gmail.com
> > <mailto:vpicaver at gmail.com>> wrote:
> >
> >     In the next step of porting my OpenGL application to Qt3D, I trying
> >     to use my existing camera and interaction code. My interaction code
> >     creates and manipulates QMatrix4x4's for projection and view
> >     matrixes. It seems like Qt3D's camera doesn't provide direct access
> >     of ViewMatrix. My question is how do I set this directly? Can I
> >     subclass QCamera and control it directly? Could I make my code
> >     Camera an entry and not use QCamera? How would Qt3D interpret my
> >     camera as a QCamera and set the necessary uniforms in the shaders.
> >     Also, how would this play with CameraSelector nodes in the
> >     framegraph? Would I have to make a custom CameraSelector framegraph
> >     node?  The nice thing about direct control of the ViewMatrix is
> >     there's no mystery about how the math works. Without direct access
> >     to the ViewMatrix, it'll take me a decedent amount to port my camera
> >     code...
> >
> >     Also, how do you unproject a point on the screen using the QCamera
> >     and the viewport in Q3D? This is necessary for my interactions to
> >     work correctly.
> >
> >     Thanks,
> >     Phi|ip
> >     --
> >     Phi|ip
> >
> > --
> > Phi|ip
> >
> >
> > _______________________________________________
> > Interest mailing list
> > Interest at qt-project.org
> > http://lists.qt-project.org/mailman/listinfo/interest
> >
>
> --
> Dr Sean Harmer | sean.harmer at kdab.com | Managing Director UK
> KDAB (UK) Ltd, a KDAB Group company
> Tel. +44 (0)1625 809908 <+44%201625%20809908>; Sweden (HQ) +46-563-540090
> <+46%20563%2054%2000%2090>
> Mobile: +44 (0)7545 140604 <+44%207545%20140604>
> KDAB - Qt Experts
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
>
-- 
Phi|ip
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20161205/65bc7b3b/attachment.html>


More information about the Interest mailing list