totfive 发表于 2020-7-2 10:53:34

求助:osgocean水面黑色问题

使用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::DYNAMIC);
        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;

zxx_debug 发表于 2020-7-28 16:19:56

我也有类似问题,请问找到解决方法没有?

totfive 发表于 2020-9-4 16:45:39

zxx_debug 发表于 2020-7-28 16:19
我也有类似问题,请问找到解决方法没有?

目前还没有

fyj 发表于 2021-6-22 17:12:50

楼主解决了吗

poseidon 发表于 2021-6-29 17:52:46

楼上各位大侠,这个问题解决了吗?

poseidon 发表于 2021-6-29 18:14:39

C:\Users\Administrator.PC-201811072224\Downloads\905097606.jpg
我的是这样的效果,该怎么搞?

poseidon 发表于 2021-6-30 09:27:25

加一行代码:
scene->enableglare(true);
页: [1]
查看完整版本: 求助:osgocean水面黑色问题