没有合适的资源?快使用搜索试试~ 我知道了~
首页VS2010中OSG 3D开发教程详解
VS2010中OSG 3D开发教程详解
需积分: 50 1 下载量 17 浏览量
更新于2024-07-26
收藏 371KB DOC 举报
《OSG开源教程》是一份详细的指南,旨在帮助读者在Visual Studio 2010环境中利用OpenSceneGraph (OSG) 3.0.1进行三维开发。该教程由荣明和王伟编撰,主要针对初次接触或重新审视OSG的开发者,特别强调了OSG相较于早期开源软件的进步,尽管其文档不足是主要短板,但OSG的3D渲染能力已经相当强大,可以媲美甚至超越部分商业软件。 教程的初衷是为了克服开源软件文档匮乏的问题,通过整理和补充美国海军研究生院的官方教程,提供了一个系统的学习路径,包括十一章内容,每章都结合实例程序,逐步讲解如何进行OSG的编程实践。作者在编写过程中得到了王伟的代码调试和教材编辑修订的支持,同时感谢实验室学生杨宇蒙等人提出的宝贵修改意见。 教程覆盖了核心主题,如使用几何体和StateSet实现纹理处理,形状变换,以及如何从文件加载模型和应用osgText、HUD( Heads-Up Display,抬头显示器)等功能。此外,还涉及如何搜索和控制节点,如开关和DOF(自由度)。该教程不仅提供了技术知识,还鼓励读者在个人学习和交流中分享资源,强调了学习OSG编程的实际应用价值。 《OSG开源教程》是一本实用的教材,对于想要深入理解和掌握OSG的开发者来说,无论是初学者还是有一定经验的程序员,都能从中受益匪浅。通过阅读和实践教程中的内容,读者不仅能提升编程技能,还能感受到开源社区的力量和OSG在3D图形领域的潜力。
资源详情
资源推荐
![](https://csdnimg.cn/release/download_crawler_static/4991154/bg9.jpg)
-3%(".CD%-<:.2
-3%(".CD%-E<:.2
-3%(".CD%-<:.2
&"%&56%(7"8&-:%(".2
注:一下部分可能错误。
;;"%F%"
11%8%%%0"3&"#B@4
#11%8%%%0"-.2
;;=%!G""7!"G%!"%!110%
;;""%!%!"%!%""%!
;;&""!"%!%
%56""7!"-&"#B@.2
&"#B@56""7!"-&"".2
;;"%F%%!%!
;;%%!%9"%!
11&"#%-<::.2
&"#B@56%%-&"#%.2
既然我们生成了一个 %& 节点并将它加到了场景中,我们就可以重用这个 %&。
例如,如果我们想让另一个 &" 在第一个的右侧 < 个单位处,我们就可以在我们的
! 中将这个 " 加到 % 节点的子节点上。
最后一步,建立并进入一个仿真循环。
'#%=#-"011#118*8+)*.2
'#%%-%.2
'#F-.2
#!-H'#"-..
/
'#&-.2
'#0"%-.2
'#-.2
I
2.使用 StateSet 产生有纹理的几何体
本章目标
为教程 中介绍的由 基本绘制单位定义的几何体添加纹理。
4
![](https://csdnimg.cn/release/download_crawler_static/4991154/bga.jpg)
背景
前一节教程介绍了包含由 基本单位产生的基本形状的视景。本节讲解如何为这些形
状添加纹理。为了使代码更方便使用,我们将 &" 的代码放到一个函数中,产生 " 并
返回它的指针。下面的代码来自教程 。
11"3%&"-.
/
11"3&""4#11"-.2
11%&3&"%&4#11%&-.2
&""56""#$-&"%&.2
;;&%!'%1
118&3&"%4#118&2
&"%560!$9-11-::..2;;%%
&"%560!$9-11-::..2;;%!%
&"%560!$9-11-::..2;;$9!%
&"%560!$9-11-::..2;;$9%
&"%560!$9-11-::..2;;9
;;8%%!%'%#%!%!%&%"#%!%!
;;"#"""%%!
&"%&56%%(8&-&"%.2
;;7%?=8%'%!$$&&%!
;;'%0'%(%%!%90%!?=81
11#%=)%3&">4
#11#%=)%-11%'%11?=8:.2
&">560!$9-.2
&">560!$9-.2
&">560!$9-.2
&">560!$9-.2
;;8""%!%'%%!%&1
&"%&56""%'%-&">.2
;;"%%%!!H
;;-'"%':%0%%#.
118&34#118&2
560!$9-11-:::..2;;"("
560!$9-11-:::..2;;"(
560!$9-11-:::..2;;"($0
560!$9-11-:::..2;;"(#!%
11%)"(8&
A0"%:118&11=)%8&&::63)"(8&2
)"(8&4
#11%)"(8&A0"%:118&11=)%8&&::62
5
![](https://csdnimg.cn/release/download_crawler_static/4991154/bgb.jpg)
)"(8&560!$9-.2;;'%("&%
)"(8&560!$9-.2;;'%("&%
)"(8&560!$9-.2;;'%("&%
)"(8&560!$9-.2;;'%("&%
)"(8&560!$9-.2;;'%("&%
&"%&56%78&-.2
&"%&56%7)"-)"(8&.2
&"%&56%7>"-11%&11>)*++B.2
;;%!'%%%(%0"%1:
;;#"G%"%0"(&%'%%%(%0
;;"%J"%"%&#%!%!G%(7"8&G
;;%!"%!%&
;;!%!"%9'$%!%&%#"
;;'%-11.!'$"%!'%!
;;0$%0%&!'%!&%
;;"K%!%(%0"%%!"'%(%!
;;'%(&
118&3%("4#118&-<.2
-3%(".CD%-:.2;;%("'%(
-3%(".CD%-<:.2;;%("'%(
-3%(".CD%-<:.2;;LL
-3%(".CD%-E<:.2;;LL
-3%(".CD%-<:.2;;LL
&"%&56%(7"8&-:%(".2
%0&""2
I
加载纹理,生成状态集合并将他们附加到节点上
渲染基本单位的方法是使用 StateSet。这节代码演示了怎样从文件中加载纹理,产生此纹理起
作用的一个 StateSet,并将这个 StateSet 附加到场景中的一个节点上。前面开始的代码和上一节教
程中的一样,初始化一个 viewer 并建立有一个 pyramid 的场景。
%-.
/
"011#'#2
;;0%%%"1
1103%4#110-.2
11"3&""4%&"-.2
%56""7!"-&"".2
现在,准备加纹理。这里我们会声明一个纹理实例并将它的数据不一致性设为 ‘DYNAMIC'。
6
剩余50页未读,继续阅读
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
liushjsuper
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- AirKiss技术详解:无线传递信息与智能家居连接
- Hibernate主键生成策略详解
- 操作系统实验:位示图法管理磁盘空闲空间
- JSON详解:数据交换的主流格式
- Win7安装Ubuntu双系统详细指南
- FPGA内部结构与工作原理探索
- 信用评分模型解析:WOE、IV与ROC
- 使用LVS+Keepalived构建高可用负载均衡集群
- 微信小程序驱动餐饮与服装业创新转型:便捷管理与低成本优势
- 机器学习入门指南:从基础到进阶
- 解决Win7 IIS配置错误500.22与0x80070032
- SQL-DFS:优化HDFS小文件存储的解决方案
- Hadoop、Hbase、Spark环境部署与主机配置详解
- Kisso:加密会话Cookie实现的单点登录SSO
- OpenCV读取与拼接多幅图像教程
- QT实战:轻松生成与解析JSON数据
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)