OSGEarth新手学习随笔 --- 星空的显示
OSGEarth新手学习随笔 — 星空的显示
过程中发现的问题:
1.地球上没有变天和夜晚的明暗变化(图1)
2.地球上的黑夜部分太黑,看不到任何东西(图2)
3.设置时间后发现和实际不对应
//---------------------------------------------
osgEarth::DateTime dateTime(2020, 11, 11, 3);sky_node = osgEarth::Util::SkyNode::create(mapNode);sky_node->setName("sky");sky_node->setDateTime(dateTime);sky_node->setLighting(true);sky_node->attach(viewer, 0);mRoot->addChild(sky_node);
在某处找了添加星空的代码(如上),运行后发现没有白天黑夜的明暗变化。(效果如下图)
上面的代码中直接将skyNode添加到了根节点中,查找资料发现有人说与mapNode和SkyNode添加到节点中有先后顺序有关,经测试发现不管用。后边发现使用insertGroup 方法可以解决该问题,修改如下:
osgEarth::DateTime dateTime(2020, 11, 11, 3);
sky_node = osgEarth::Util::SkyNode::create(mapNode);
sky_node->setName("sky");
sky_node->setDateTime(dateTime);
sky_node->setLighting(true);
sky_node->attach(viewer, 0);
osgEarth::insertGroup(sky_node,mapNode->getParent(0));
//mRoot->addChild(sky_node);
这样修改完后可以显示明暗(具体原因不清楚),但是夜间部分特别的黑 如下图:
经过查找发现skyNode创建时有一个参数,通过他可以控制夜间部分黑暗的程度,修改如下:
osgEarth::DateTime dateTime(2020, 11, 11, 3);//格林尼治时间
osgEarth::Util::SkyOptions skyOptions;
skyOptions.ambient()=0.4;//控制黑夜部分明暗程度
sky_node = osgEarth::Util::SkyNode::create(skyOptions,mapNode);
sky_node->setName("sky");
sky_node->setDateTime(dateTime);
sky_node->setLighting(true);
sky_node->attach(viewer, 0);
osgEarth::insertGroup(sky_node,mapNode->getParent(0));
至于问题3,时间不对应问题,经测试发现skyNode中使用的时间是格林尼治时间,与中国的东八区相差8个小时。转换一下即可。
OSGEarth新手学习随笔 --- 星空的显示相关推荐
- Delphi面向对象学习随笔一:类与对象的关系
Delphi面向对象学习随笔一:类与对象的关系 作者:巴哈姆特 http://www.cnpack.org (转载请注明出处并保持完整) 工作几年了,总想做点总结,于是有了这篇东西,叫随笔吧呵 ...
- Java新手学习路线
------Java新手学习路线------ 第一阶段:J2SE(java基础部分) java开发前奏; . ①计算机基本原理,Java语言发展简史以及开发环境的搭建,体验Java程序的开发,环境变量 ...
- Vue学习随笔+商城项目【上】
更新日期:2021-02-10 晚 [新年快乐] 附:Vue学习随笔+商城项目[下] 目录(部分) (一)ES6补充 1.1块级作用域 1.1.1 什么是变量作用域 1.1.2 没有块级作用域造成的问 ...
- Markdown标记语法Typora编辑器零基础入门新手学习使用总结教程
Markdown标记语法Typora编辑器零基础入门新手学习使用总结教程 下载链接 官方网址:https://typora.io Typora快捷键整合 快捷键 作用 Ctrl+1 一阶标题 Ctrl ...
- PyQt(Python+Qt)学习随笔:Qt Designer中部件的accessibleDescription和accessibleName辅助阅读属性
accessibleDescription和accessibleName属性都是用于残疾人辅助阅读的,这两个属性都有国际化属性(关于国际化请参考<PyQt(Python+Qt)学习随笔:Qt D ...
- typeScript学习随笔(一)
TypeScript学习随笔(一) 这么久了还不没好好学习哈这么火的ts,边学边练边记吧! 啥子是TypeScript TypeScript 是 JavaScript 的一个超集,支持 es6 标准 ...
- 新手学习常见问题总结回答
新手学习常见问题总结回答 www.sandflee.net 2002-9-3 灰色轨迹 很早就想总结一下新手常见的问题和回答了.但一直没有空出时间来做.在论坛久了,发现一个不得不解决的问题,就是重 ...
- Vue 新手学习笔记:vue-element-admin 之入门开发教程(v4.0.0 之前)
说实话都是逼出来的,对于前端没干过ES6都不会的人,vue视频也就看了基础的一些 但没办法,接下来做微服务架构,前端就用 vue,这块你负责....说多了都是泪,脚手架框架布了都没看过 干就完事,不过 ...
- JavaSwing仿QQ登录界面,注释完善,适合新手学习
使用说明: 这是一个java做的仿制QQ登录界面,界面仅使用一个类, JDK版本为jdk-11 素材包的名字为:素材(下载)请在项目中新建一个名字为"素材"的文件夹. 素材: ht ...
最新文章
- shell中break的使用案例
- 【Linux部署】Greenplum数据库6.13.0单机版【重启实录】(5次报错问题及解决的避坑指南+日志文件查看方法)
- 蓝桥杯之貌似化学(g背包)
- 理解总结篇—List、Set、Map
- 前端学习(2764):v-bind和v-for
- python中变量名后的逗号_Python中逗号的三种作用实例分析
- 入门级XML学习(三)
- ViBe算法原理详解
- 计算机右键 管理,鼠标右键菜单管理方法?
- 毕业两年,工作三年Java程序员的一点点体会与建议
- mongodb关联表查询
- 经常性无法访问某些国内网站的问题(by quqi99)
- 网络游戏数据同步的实现 一:状态同步、帧同步的基本原理概述
- matlab语言帮助系统题目,西电 matlab语言考试题2009年
- 统计 Git 代码行数
- 中国武术高手要在郑州开比武大会?还请了马云做裁判?
- chromium 14 chromium命令行
- 考研 英语一 大作文-图画作文 (一)----第一段描述图画写作攻略
- 实时更新:TIOBE世界编程语言排行榜(2021年11月份)
- OpenCV进阶(3)基于OpenCV的贪吃蛇游戏