Hi,

I insert a light source in a scene (headlight) and connect its position to the camera position.

But now, when I use camera->viewAll() the bounding volume of the scene is enlarged to include the light position. camera->viewAll() changes the camera position. And as the light source is connected to the camera position, the bounding volume is enlarged every time I do a camera->viewAll().

        auto lightEntity = new Qt3DCore::QEntity(rootEntity());
        auto light = new Qt3DRender::QPointLight(lightEntity);
        light->setColor(QColor::fromRgbF(1.0, 1.0, 1.0));
        light->setIntensity(1.);
        light->setConstantAttenuation(1.);
        light->setLinearAttenuation(0.);
        light->setQuadraticAttenuation(0.);
        lightEntity->addComponent(light);
        auto lightTransform = new Qt3DCore::QTransform(lightEntity);
lightTransform->setTranslation(camera()->position());
        lightEntity->addComponent(lightTransform);

        connect(camera(), SIGNAL(positionChanged(QVector3D)), lightTransform, SLOT(setTranslation(QVector3D)));

So the question is: How can I model a headlight that is located at the camera position and not included in bounding volume calculation?


Cheers, Volker

--
_______________________________________________
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest

Reply via email to