osgNeHe
csxiaoshui
工作已转到.NET,不再从事3D开发 ^-^
展开
-
osgNeHe开发环境搭建
国庆出去了几天,今天有点时间,把上次承诺的环境搭建过程xy原创 2014-10-05 11:14:12 · 3608 阅读 · 19 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第二课
这节课主要工作是在场景中添加一个三角形和一个四边形。本节新增加一个函数buildScene,这个函数将在场景中创建一个三角形和一个四边形。osg场景介绍在添加场景之前,先对osg的场景结果有一个了解,osg采用场景树的方式来组织场景,如下图所示:场景已节点(Node)的方式来组织,包括组节点Group(用来管理节点),空间变换节点(MatrixTransform),细节原创 2014-01-20 11:01:41 · 3682 阅读 · 3 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第二十八课
简介本课介绍了原创 2014-05-15 17:41:47 · 1917 阅读 · 1 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第二十七课
简介这节课原创 2014-05-23 10:45:28 · 1931 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第四十四课
简介这节课NeHe教我们怎么在场景中实现原创 2014-06-05 09:56:16 · 2614 阅读 · 1 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第四十七课
简介这节课原创 2014-06-05 12:09:07 · 1763 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第四十六课
简介本节课NeHe课程教我们怎么在场景中使用多重采样的技术原创 2014-06-05 11:32:07 · 1701 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第四十八课
简介原创 2014-06-05 14:56:01 · 2262 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第四十五课
简介这节课NeHe课程主要向我们演示了原创 2014-06-05 10:14:07 · 2346 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第三十八课
简介这节课NeHe教我们怎样把图片原创 2014-06-01 11:58:00 · 2182 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第四十二课
简介这节课NeHe课程原创 2014-06-03 10:18:22 · 2688 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第三十课
简介这节课NeHe课程实现了在场景中进行原创 2014-05-27 08:52:40 · 2609 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第三十一课
简介本节课实现了加载原创 2014-05-27 09:06:39 · 1717 阅读 · 1 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第三十九课
简介这节课NeHe原创 2014-06-02 10:29:45 · 2030 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第四十三课
简介这节课NeHe教我们怎么使用FreeType字体库来创建原创 2014-06-03 11:22:43 · 1549 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第四十一课
简介这节课原创 2014-06-02 16:19:04 · 1706 阅读 · 1 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第四十课
简介这节课原创 2014-06-02 11:25:26 · 1685 阅读 · 2 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第三十六课
简介原创 2014-05-31 12:02:04 · 2179 阅读 · 2 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第三十七课
简介这节课原创 2014-06-01 11:47:37 · 1806 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第三十五课_附录1
简介第三十五课中原创 2014-05-28 10:42:29 · 1638 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第三十三课
简介原创 2014-05-28 10:06:23 · 1184 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第三十四课
简介原创 2014-05-28 10:15:13 · 1456 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第三十二课
简介原创 2014-05-28 09:56:32 · 1245 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第三十五课
简介原创 2014-05-28 10:31:53 · 2463 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第二十四课
简介NeHe教程在这节课中向我们介绍了如何读取显卡支持的OpenGL的扩展,如何使用Targa(TGA)图像文件作为纹理,以及如何利用OpenGL的剪裁区域来滚动屏幕文字。在OpenInventor中没有相关的函数来获取OpenGL的扩展信息,我们只能通过直接调用OpenGL来获得这些信息。OpenInventor的纹理节点自动支持使用Targa(TGA)图像文件作为纹理,所以我们原创 2014-05-05 09:42:50 · 2206 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第十九课_附录1
简介在第十九课原创 2014-04-11 11:23:54 · 1872 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第二十九课
简介这节课NeHe原创 2014-05-15 18:00:15 · 1642 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第十七课
简介本节课需要实现的内容是使用纹理贴图来模拟文字效果。使用这种技术显示文字的好处在于程序的效果在任何机器上都是相同的。而我们前面讨论的显示文字的方法都是依赖于当前系统中所包含的字体,所以前面讨论的技术在不同的机器上有可能会有不同的显示效果。使用纹理贴图来显示文字的原理很简单,实际上这些文字是一个一个的四边形,只是为它们贴上了文字的纹理。实现首先我们实现场景中的墙面的原创 2014-03-15 16:47:56 · 1783 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第四课_附录1
简介在第四课中我们使用节点更新回调的方式实现了对场景中节点的旋转,在OSG中还有更简便的方法实现这种效果,下面用另一种方式实现第四课的内容。我们使用OSG中自带的AnimationPathCallback实现旋转的效果实现要理解osg::AnimationPathCallback我们首先需要知道什么是AnimationPath?OSG通过AnimationPat原创 2014-01-20 16:49:45 · 1952 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第十二课
简介本课NeHe教程主要是使用了OpenGL中的显示列表。OpenGL的显示列表是加速OpenGL性能的一种重要的手段。OpenGl的几何体绘制方法主要包括立即模式、顶点数组、显示列表和VBO。在OSG中显示列表是大部分OSG程序所使用的默认绘制优化行为,因此不需要我们去像OpenGL那样进行设置。实现首先创建整个场景,本课中我使用了OSG中预定义的几种基本形体,(os原创 2014-02-20 09:36:41 · 7794 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第十课
简介原创 2014-02-17 17:38:23 · 2902 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第八课
简介本课是在第七课的基础上实现将立方体变透明的效果,其中用到了OpenGL中的混合(Blend)实现在OpenGL中如何实现混合以及混合实现的原理和过程在NeHe教程中已经解释的很清楚了,在这里就不在赘述,本课主要探讨在OSG中实现混合的效果,混合同样是作为一种StateSet的方式来进行处理的,OSG中的混合主要涉及到一下几个类BlendFunc、BlendEquat原创 2014-02-08 17:43:02 · 1793 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第六课
简介本节课要实现的内容是为立方体的六个面添加纹理纹理映射(Texture Mapping)是OpenGL程序开发中的一个重要概念。纹理是一个数组的概念,其中每一个数据(RGB颜色以及Alpha值,或者其他系统及用户定义的类型)称为一个纹素(texel)。在描绘具有真实感无提示,使用一幅真实拍摄的照片作为纹理贴到几何体的表面,可以大大丰富物体的表现效果。OSG使用派生自StateAt原创 2014-01-22 09:32:49 · 2913 阅读 · 4 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第五课
简介这节课将在第四课的基础上进行扩展,创建3D物体。我们将三角形变为3D的三棱锥形,把四边形变为立方体。同时三棱锥沿Y轴旋转,四边形沿着(1,1,1)方向旋转。实现本课与第二课十分类似,只需要多绘制几个面即可,三棱锥的绘制代码如下 osg::Geometry *triangleGeometry = new osg::Geometry; osg::Vec3Array原创 2014-01-20 19:23:27 · 2184 阅读 · 1 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第三课
简介这节课将在第二课的基础上讨论如何使用颜色。与OpenGL类似,OSG也提供了两种色彩模式。我们将对四边形只使用一种颜色显示,对三角形则要对每个顶点设置一个颜色。事实上在第二课中我们已经设置颜色了,只是我们设置的都是单一的白色,按照本课的要求,我们只需要在第二课的基础上修改少量的代码。修改颜色OpenGL是一个状态机,在OpenGL中需要设置很多状态量,一般由gl原创 2014-01-20 12:05:51 · 2668 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第九课
简介本课实现在场景中绘制旋转的星星,主要的内容包括使用Blend方式设置纹理图片的颜色,在场景中操作物体实现简单的动画效果。本课中描述的内容在前面的课程中已经有比较详细的介绍,本课综合运用了前面课程所学内容。实现首先同NeHe教程中设置的一样,我们先创建50颗星星,代码如下 osg::Group *starGroup = new osg::Group; fo原创 2014-02-12 15:22:03 · 1631 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第十一课
简介这节课我们将创建一个以正弦波方式飘动的旗帜。本课所用到的知识在前面的课程中都有讲解,并没有什么新的内容实现首先创建我们的场景,关于旗帜的顶点坐标在NeHe教程中已经有非常详细的介绍,本文就不在赘述了。 float points[45][45][3]; for(int x=0; x<45; x++) { for(int y=0; y<45; y++原创 2014-02-19 15:17:20 · 1473 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第七课
简介这节课我们将讨论如何在OSG中使用键盘和灯光。我们将会学习指定三种纹理过滤方式,学习如何使用键盘来移动场景中的立方体。在osg中通过osgGA库来实现与用户的交互,在用户端,通常使用GUIEventAdapter类作为系统交互事件和OSG交互事件的适配接口。实现首先定义一个类用来查找场景中我们需要的节点,这个类会遍历场景子节点,返回第一个查找到与输入名称相同的节原创 2014-01-24 14:24:40 · 2145 阅读 · 0 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第一课
简介OpenSceneGraph是一个开放源码,跨平台的图形开发包,它为诸如飞行器仿真,游戏,虚拟现实,科学计算可视化这样的高性能图形应用程序开发而设计。它基于场景图的概念,它提供一个在OpenGL之上的面向对象的框架,从而能把开发者从实现和优化底层图形的调用中解脱出来,并且它为图形应用程序的快速开发提供很多附加的实用工具。NeHe教程是目前针对初学者来说最原创 2014-01-16 19:12:55 · 9783 阅读 · 22 评论 -
用OpenSceneGraph实现的NeHe OpenGL教程 - 第十三课
简介NeHe这节课主要讨论如何使用OpenGL显示2D文字。OpenGL显示2D文字是通过wglUseFontBitmaps函数创建了一系列的显示列表来实现的。通过阅读NeHe教程,读者应该能感觉到在OpenGL中显示文字还是比较麻烦的。在OSG中显示2D文字相对来说比较简单,OSG提供了专门用来处理文字的库osgText(包括二维和三维字体)实现首先创建文字节点,由于原创 2014-02-20 14:19:48 · 1431 阅读 · 0 评论