查看: 191|回复: 2

求助:osgocean水面黑色问题

[复制链接]

该用户从未签到

发表于 2020-7-2 10:53:34 | 显示全部楼层 |阅读模式
使用osgocean生成的水面是黑色的,添加雾效和反射均无效果,效果图和代码已贴上,望大佬帮我看看!

        osg::ref_ptr<osgViewer::Viewer> viewer = new osgViewer::Viewer;

        //添加海洋
        osg::ref_ptr<osgOcean::FFTOceanSurface> oceanSurface = new osgOcean::FFTOceanSurface(64, 256, 17, osg::Vec2f(1.1f, 1.1f), 12.0f, 1000.0f, 0.8, 1e-8, true, 2.5, 10.f, 256);
        osg::ref_ptr<osgOcean::OceanScene> oceanScene = new osgOcean::OceanScene(oceanSurface.get());
        viewer->addEventHandler(oceanSurface->getEventHandler());
        viewer->addEventHandler(oceanScene->getEventHandler());

        //添加天空盒
        osg::ref_ptr<osg::TextureCubeMap> cubMap = loadCubeMapTexture();
        osg::ref_ptr<SkyDome> skyDome = new SkyDome(1900.0f, 16, 16, cubMap);
        skyDome->setNodeMask(oceanScene->getReflectedSceneMask() | oceanScene->getNormalSceneMask());
        osg::MatrixTransform *transform = new osg::MatrixTransform;
        transform->setDataVariance(osg::Object:YNAMIC);
        transform->setMatrix(osg::Matrixf::translate(osg::Vec3f(0, 0, 0)));
        transform->setCullCallback(new CameraTrackCallback);
        transform->addChild(skyDome);
        oceanScene->addChild(transform);

        //添加雾效与反射
        oceanScene->setAboveWaterFog(0.0012, osg::Vec4f(0.67, 0.87, 0.98, 1.0)); //雾浓度 雾颜色
        oceanScene->enableReflections(true);
        oceanSurface->setEnvironmentMap(cubMap);

        osgGA::TrackballManipulator* tb = new osgGA::TrackballManipulator;
        tb->setHomePosition(osg::Vec3f(0.0, 0.0f, 20.0f), osg::Vec3f(0.0f, 20.0f, 20.0f), osg::Vec3f(0, 0, 1));
        viewer->setCameraManipulator(tb);
        viewer->setSceneData(oceanScene);
        viewer->run();

        return 0;

新建位图图像 - 副本.bmp
新建位图图像.bmp

该用户从未签到

发表于 2020-7-28 16:19:56 | 显示全部楼层
我也有类似问题,请问找到解决方法没有?

该用户从未签到

 楼主| 发表于 2020-9-4 16:45:39 | 显示全部楼层
zxx_debug 发表于 2020-7-28 16:19
我也有类似问题,请问找到解决方法没有?

目前还没有
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表