Qt 3D c++ (四):设置其他的必要参数

2021-01-04 11:29

阅读:648

标签:one   c++   include   物理   之间   简单   class   设置   代码   

创建一个3D模型程序,到这里基本已经算是完成,接下来只需要再做一点收尾工作,一个简单的3D程序就算完成。

下面是针对相机控制,光线的添加这两部分代码的补充。

编辑main.cpp,在其中添加如下代码

#include 
#include 
#include 


main()
{
    Qt3DInput::QInputAspect *input = new Qt3DInput::QInputAspect;
    view->registerAspect(input);
    //QInputAspect负责创建物理设备并处理相关的作业,处理前端和后端节点之间的映射,负责根据当前输入设置建立要在特定时间运行的作业的对象。

    Qt3DCore::QEntity *lightEntity = new Qt3DCore::QEntity(rootEntity);
    Qt3DRender::QPointLight *light = new Qt3DRender::QPointLight(lightEntity);
    light->setColor("white");
    light->setIntensity(1);
    lightEntity->addComponent(light);
    Qt3DCore::QTransform *lightTransform = new Qt3DCore::QTransform(lightEntity);
    lightTransform->setTranslation(cameraEntity->position());
    lightEntity->addComponent(lightTransform);
    //设置光源

    Qt3DExtras::QFirstPersonCameraController *camController = new Qt3DExtras::QFirstPersonCameraController(rootEntity);
    camController->setCamera(cameraEntity);
    //相机第一人称视角控制
}

之后就可以拖动鼠标从不同的角度观测3D模型。

Qt 3D c++ (四):设置其他的必要参数

标签:one   c++   include   物理   之间   简单   class   设置   代码   

原文地址:https://www.cnblogs.com/leocc325/p/12983692.html


评论


亲,登录后才可以留言!