共 24 篇文章 |
|
OpenGL的 glOrtho() glFrustum() 直观解释。函数 glFrustum 只是修改了摄像机的 透镜,并非位置,为了改变位置或者朝向可以借助于 模型视图矩阵 相对于 摄像机移动场景 中的对象,或者通过 GL 变换,或者用函数gluLookAt(). 因为 glFrustum 对参数 far 和near 非常敏感,修改 near 和 far 则远景可能就影响很大,所以常用于观察近景。void glPe... 阅774 转2 评0 公众公开 14-06-23 22:09 |
鸟瞰图相机// 程序来自:<<OpenSceneGraph三维渲染引擎设计与实践 P174--鸟瞰图相机////程序思路://(1)创建一个节点 Node//(2)创建一个正交投影函数//(3)将节点模型添加进相机//(4)场景的优化、渲染////说明一下:相机节点Camera派生自Transform类,同其他的空间变换节点没有本质区别。 阅433 转1 评0 公众公开 14-06-23 21:26 |
TRAVERSE_ACTIVE_CHILDREN:传递给当前节点及所有被激活的子节点,例如遇到LOD节点和Switch节点时,将不会传递给当前无法显示的子节点。使用节点访问器为场景图形节点或几何体添加的回调主要有以下几种:几何体绘制遍历(DrawableDrawCallback):重载函数drawImplementation,当几何体进行绘制时,函数的内容被调用,注意需要添加Drawable::dr... 阅3675 转7 评0 公众公开 14-06-19 23:12 |
osg示例程序之osgcallbackosg示例程序之osgcallback.该示例程序主要展示了osg回调的用法,osg提供的回调功能主要使节点能够完成用户临时定义的功能,这些功能由回调函数完成,在每帧更新时(不同回调类型执行回调函数的时机不一样)执行回调函数完成用户定义的功能。InsertCallbacksVisitor():osg::NodeVisitor(osg::NodeVisitor::TRAVERSE_ALL... 阅540 转0 评0 公众公开 14-06-19 23:10 |
osg添加纹理示例#include <osgDB/ReadFile>#include <osgViewer/Viewer> #include <osg/Node>#include <osg/Geode>#include <osg/Geometry>#include <osg/Group>#include <osg/Texture2D>#include <osg/TexGen>#include <osg/TexEnv>//设置纹理环境,模式为BLEND osg::ref_ptr<osg::... 阅2836 转13 评0 公众公开 14-03-15 17:17 |
GLSL学习笔记 [转]GLSL语言内置的变量,包括内置的顶点属性(attribute)、一致变量(uniform)、易变变量(varying)以及常量(const),一方面加深印象,另一方面今天的文章可以为以后的编程做查询之用。attribute vec4 gl_Color;uniform gl_LightSourceParameters gl_LightSource[gl_MaxLights];uniform gl_LightProducts gl_FrontLightProd... 阅141 转1 评0 公众公开 14-03-11 23:02 |
OSG使用OpenGL顶点着色器和片元着色器目的:有关着色语言的更多信息,包括最低的硬件和软件需求,请参阅:http://developer.3dlabs.com/openGL2/OSG的osg::Program和osg::Shader类允许用户将着色器作为StateSet的一部分加入选定的场景图形子树。osg::Shader* brickVertexObject = new osg::Shader( osg::Shader::VERTEX );osg::Shader* b... 阅2038 转2 评0 公众公开 14-03-11 22:38 |