您的位置:首页 > 其它

OSGChina推出的视频的教程章节

2015-11-26 11:44 260 查看
第一部分:应用篇

第1讲:OSG概述

简单的介绍OSG。讲述了OSG的发展历史,OSG学习资料的获取OSG在国内的发展现状。

第2讲:OSG开发环境搭建 介绍了OSG从源码下载到编译、开发环境部署的过程,以及OSG开发环境包含的几个部分。最后编写了一个HelloWorld程序验证了开发环境搭建的正确性。

第3讲:osgViewer应用基础上 介绍了osgViewer类的架构和功能。并添加了几个osg中的事件。并自己派生了一个osg事件类,添加到Viewer当中,该事件类实现的功能为点击键盘上的一个键在OSG的渲染屏幕上显示一些输入的信息。

第4讲:osgViewer应用基础下 结合osgViewer的渲染循环介绍了如何获取当前的帧速,以及如何控制当前的帧速。

第5讲:基本图元上 介绍了如何绘制osg的基本图形,以及给图形加材质、设置透明度、贴纹理、设置颜色等等。

第6讲:基本图元下 介绍了如何像OPENGL那样,给定顶点,设置法向量,设置关联方式绘制三角形、折线,并设置点的大小,线的宽度等等。

第7讲:矩阵操作上 介绍了利用矩阵对模型的各种操作,如旋转,缩放,移动,绕直线环绕等等。

第8讲:矩阵操作下 本节实现了一个类,该类实现了以下方法:将模型移动的某一位置,得到模型的当前位置,将模型缩放到合适大小等等。

第9讲:漫游上 本节实现了一个类,该类为一个操作器,类似游戏中的操作器的功能。

第10讲:漫游下 本节完善了上一节的类,实现了一个比较完善的操作器,完成了在一栋楼中漫游的具体功能。

第11讲:碰撞检测上 介绍了如何求解空间中直线与模型的交点,并输出了一条直线与模型所有的交点,在交点处画了一个球形。

第12讲:应用-上楼梯算法 结合漫游那一节,和上一节的碰撞检测内容,我们实现了一个上下楼梯的功能。

第13讲:碰撞检测下 介绍了如何判断场景中两个物体相碰,以及实现检测鼠标点击碰撞到的模型。

第14讲:窗口 介绍了OSG在WIN32下生成窗口的过程,以及如何控制生成窗口的效果,大小、边框、位置等等。

第15讲:超级指针 OSG使用超级指针管理内存,本节详细的介绍了超级指针的原理,并实现了一个自己的超级指针实例。

第16讲:NodeVisitor 介绍了OSG中重要的NodeVisitor的使用,实现了一个类和一个场景树,使用这个类访问到了场景树中所有结点,以剖析NodeVisitor的访问路径和场景树的组织。

第二部分:原理篇

第17讲:OpenThreads 本节开始着重讲述OSG的原理知识。介绍了OpenThreads在OSG中的使用,并以实例讲解了OpenThreads中线程、互斥、条件和壁垒的用法。

第18讲:操作系统接口 本节讲述了OSG之所以能够跨平台的原因,以WINDOWS为例讲述了OSG与操作系统的接口,涉及生成窗口、事件传递等内容。

第19讲:Control 本节讲述了osgViewer、view,
viewerBase, GUIActionAdapter的作用,结合实例来说明其是如何控制场景渲染的。

第20讲:osgDB(1)读文件 本节介绍了OSG读取文件的原理,实现了一个自己的文件格式插件可供OSG来读取。

第21讲:应用-文件读取进度 结合上一节的内容,本节介绍了如何精确的获取一个文件的读取进度并显示出来,要精确的显示往往是非常困难的,但是有方法就很简单。

第22讲:osgDB(2)写文件 本节介绍了OSG写文件的原理,实现了往自己的文件格式中写文件的操作。并介绍了OSG各种文件格式之间的转换,osgConv的使用方法。

第23讲:应用-文件加密 在上一节的基础上,本节介绍了一种文件加密的非常实用方法,保密性强,安全可靠。

第24讲:事件响应 从原理上介绍了OSG如何能够进行事件响应,以及编写实例进行键盘和鼠标的事件响应,多键组合键的响应,以及介绍了进行方向盘等外设的编程思路。

第25讲: 分页数据管理 本节介绍了OSG分页数据管理的原理,以及从实例上来讲解OSG页数据的使用和释放时刻,以及如何设置这些内容。

第26讲:拣选 本节介绍了OSG的一个极为重要的操作-拣选,配合实例介绍了拣选在OSG程序中对渲染树是如何起作用的,以及它作用在哪些时刻。

第三部分:相机篇

第27讲:相机基础 本节讲述了相机的基础知识,并以实例讲解了如何在一个场景中添加一个相机或多个相机实现前后左右视图等等。

第28讲:HUD基础 本节介绍了HUD的基础知识,以实例讲解了如何在OSG渲染屏幕上贴图,写字。

第29讲:HUD应用-菜单 本节介绍了HUD的一个应用,使用HUD做一个菜单,具有点击响应贴图等所有菜单应该有的功能。

第30讲:HUD应用-前景与背景 本节介绍了如何给程序设置前景与背景的知识,很多在屏幕上飞花或流星或夜幕星辰的效果都是通过这个简单的方法实现而来。

第31讲:RTT 本节介绍了RTT的基本知识,结合实例讲解了如何将相机烘赔出来当做纹理贴在场景的一个普通平面上。

第32讲:RTT应用-瞄准镜 本节使用RTT实现了一个阻击枪的圆型瞄准镜,或叫放大镜也可以。很多汽车后视镜等的实现方法也同此类。

第33讲:RTT应用-导航图 本节实现了一个程序中极为常用的右上角的半透明实时显示漫游者位置的导航图。

第34讲:路径漫游 本节实现了如何在场景中收集关键点来设置一些路径,让镜头以我们预先设置的速度来漫游这些固定的路径。这个应用非常广泛,漫游路径不用软件基本是不可实现的。

第35讲:跟随 本实介绍了如何实现一个跟随镜头的物体。

第四部分:UI篇

第36讲:OsgWidgets-菜单 本节实现了一个基于osgWidgets的成熟的菜单系统。

第37讲:OsgWidgets-支持中文 本节实现了如何让osgWidgets支持中文。

第38讲:OsgWidgets-显示模型信息 本节实现了点击某模型时,在屏幕上显示该模型的图片简介。其实显示文字介绍也是非常简单的,那就是把文字做成图。

第39讲:OsgWidgets-水晶按钮序列 本节实现了一个非常漂亮的水晶按钮的序列。

第40讲:OsgWidgets-按钮提示信息 本节实现了当鼠标停在某个按钮上时,在屏幕上显示一些提示信息说明这个按钮是做什么的功能。

第41讲:osgCEGUI-开发环境搭建 从本节开始介绍osg与CEGUI的结合来实现UI。本节详细的介绍了osgCEGUI开发环境的搭建,以及最终编写一个helloworld用来验证开发环境是否搭建成功。

第42讲:osgCEGUI-HelloWorld 在本节中我们将osg与CEGUI结合起来,在界面上实现一个对话框做为我们学习osgCEGUI的开始。

第43讲:osgCEGUI-事件 任何一个UI都要响应事件的,本节结合实例介绍了如何使用CEGUI的控件来调用一些代码,完成一些功能。

第44讲:osgCEGUI-菜单 本节介绍了如何使用CEGUI来为OSG实现了一个好看的菜单,并结合实例讲解如何响应菜单中的功能。

第45讲:osgCEGUI-弹出窗口 本节介绍了如何制做弹出窗口,当点击某处时,弹出一个窗口来完成一些功能。

第46讲:osgCEGUI-控件 本节介绍了CEGUI的常用控件在OSG中的使用,比如单选框,输入框,进度条等等,所有的控件使用都是相似的。

第47讲:osgCEGUI-支持中文 本节介绍了如何让CEGUI支持中文。

第五部分:Shader篇

第48讲:着色器编程简介 本节结合渲染管线来介绍着色器编程对渲染流程起作用的原理,以及在OSG写一个着色器的基本步骤,并实现了一个只有几行的着色器的helloWorld用来对一个飞机根据其顶点的位置来着色。

第49讲:经典例子-砖块着色器 本节介绍了一个经典的着色器,其中涉及顶点和片元着色器以及光照的计算等等很多着色器编程必须掌握的内容。

第50讲:噪声 本节介绍了柏林噪声,以及从数学上怎么来实现一个柏林噪声,最终我们使用柏林噪声生成了一串看上去非常饱满的随机曲线。最终我们把这个噪声输出成一个图像,以供其它程序使用。

第51讲:噪声应用-大理石 本节在上一节的基础上,使用噪声来实现了一个大理石的效果。

第52讲:木纹 与上一讲差不多,本节实现了一个木纹的效果。

第53讲:图像过滤 本节介绍了使用卷积的方法来过滤图像的基本原理,介绍了一个能够起模糊和锐化效果的卷积内核以及其实现原理。

第54讲:景深 本节实现了景深效果,就是某视野范围内清楚,越远越模糊。

第55讲:HDR-全屏泛光 本节实现了HDR-全屏泛光的效果。学习本节和上一节必须要学习第53讲图像过滤的基本知识在先。

第56讲:凸凹贴图 本节介绍了如何让一个平面看起来有凸凹感的方法,也就是所谓的凸凹贴图,该方法是实现凸凹贴图众多方法中的一种。

第六部分:动画篇

第57讲:关键帧动画MD2-角色读取 本节介绍了关键帧动画模型MD2的读取。MD2模型曾经是非常疯狂的一种模型。

第58讲:关键帧动画MD2-角色控制-阴影 本节介绍了如何让上一节读取的模型根据你按钮的不同来实现跑步、蹲下、开枪、受伤等一系列动作。

第59讲:关键帧动画MD2-角色循环路径 本节实现了一个路人甲,他不断的在场景中沿某一个路线绕圈圈,完成这个实例使人明白了:芸芸众生、皆是过客。

第60讲:骨骼动画 本节实现了一个最简单的骨骼动画,从其它地步读取骨骼动画也都符合对这个骨骼动画的控制。

第61讲:粒子动画结构 本节介绍了粒子动画的制做的基本方法,以及OSG中粒子动画的基本结构是怎样的。

第62讲:粒子动画操作 在本节中,实现对粒子动画进行控制,以实例来说明如何控制粒子的时间、大小、外部风速、粒子重量、地球引力等。

第63讲:雾-雨-雪 本节介绍了如何实现雾雨雪,懂得的人都知道,是非常简单而又方便逼真的,当然这是在OSG2.N以后才得以如此方便的。

第64讲:运动模糊 本节介绍了运动模糊的实现原理,并结合实例完成了一个运动模糊效果的编写。

第七部分:海洋地形篇

第65讲:osgOcean-编译 本节详细介绍了osgOcean的编译,以及成功的运行了osgOcean中自带的非学点炫酷的例子。

第66讲:osgOcean-HelloWorld 本节只写了两句话便在OSG中实现了一个水面,这就是osgOcean的方便之处。

第67讲:osgOcean-反射 本节介绍了如何让上一节的水面有反射的效果,从而需要一个天空盒,以及实现从水下折射天空的效果。

第68讲:osgOcean-飘移 本节介绍了如何实现船只如何在波涛汹涌的海面上飘流,随着波浪的高低而逼真的运动。

第69讲:osgEarth-编译 本节介绍了osgEarth的编译,以及如何搭建osgEarth开发环境,运行了osgEarth自带的例子来说明环境配置的正确性。

第70讲:osgEarth-语法-实例地球云图 本节介绍了osgEarth
map的基本语法,以及介绍了osgEarth可以做什么,适合做哪方面的应用。并运行了一个实例地球云图。

第71讲:osgEarth-CS模式的地球实例 本节继续加深对osgEarth应用的理解,运行了另一个osgEarth实例,该实例类似于GoogleEarth,数据源来自国外网站,实例中包含了道路等。

第72讲:多通道与结束语 本节介绍了OSG多通道相关的知识,最后结合osg的实例在本机运行了一个多通道的例子。感谢大家。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: