Chester的小院

无印良品

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2011年4月28日

摘要: 三角函数(Trigonometric)是数学中属于初等函数中的超越函数的一类函数。它们的本质是任意角的集合与一个比值的集合的变量之间的映射。通常的三角函数是在平面直角坐标系中定义的,其定义域为整个实数域。另一种定义是在直角三角形中,但并不完全。现代数学把它们描述成无穷数列的极限和微分方程的解,将其定义扩展到复数系。它包含六种基本函数:正弦、余弦、正切、余切、正割、余割。由于三角函数的周期性,它并不具有单值函数意义上的反函数。三角函数在复数中有较为重要的应用。在物理学中,三角函数也是常用的工具。起源 “三角学”,英文Trigonometry,法文Trigonometrie,德文Trigonome 阅读全文
posted @ 2011-04-28 09:56 chester_lp 阅读(267) 评论(0) 推荐(0)

2011年4月27日

摘要: 从几何图形上解释函数http://xuxzmail.blog.163.com/ 阅读全文
posted @ 2011-04-27 11:36 chester_lp 阅读(129) 评论(0) 推荐(0)

摘要: 转自http://xuxzmail.blog.163.com/blog/static/2513191620092229387155/,十分感谢川大的徐老师。一般高等数学教材中提到球面坐标(Spherical coordinate system)的坐标面,但是没有给出图形,学生印象不深。以下动画生动地展示了这些坐标面的形状。一族值不同的半平面:一族半顶角不同的圆锥面:一族半径不同的球面:球面坐标的三组坐标面: 阅读全文
posted @ 2011-04-27 11:32 chester_lp 阅读(1269) 评论(0) 推荐(0)

2011年4月24日

摘要: 今天天气有点热,逛街途中,见一女子坐在一门面门口,面朝门面外,穿着裙子,却又抬起一条腿支撑于门上。因为怕走光,所以一只手捂住可能走光的部位,并以这样的形态和她的女性朋友聊天。这里体现了一个认知的问题:她不认为穿裙子,把并把腿高高抬起,是一种害羞的行为,而走光与之相反。不太希望继续向下分析,否则这太容易进入一个哲学性的问题。 阅读全文
posted @ 2011-04-24 16:06 chester_lp 阅读(117) 评论(0) 推荐(0)

2011年4月15日

摘要: 转于http://blog.csdn.net/diyer2002/archive/2007/06/17/1655146.aspx最近在渲染地形时发现把背面剔除模式设为CCW结果我的地形正面就显示不出来了!知道是网格编织顺序出了问题(但我记得我的网格是按顺时针编织的),为了彻底将这一问题搞明白,去查了下DX的SDK,结果发现里面讲得一团糟!上网搜了下,发现有不少人对这个问题也没搞清楚.于是重新看了下André LaMothe的软件引擎.在这里作一下总结.DX可以设置为对顺时针三角形剔除(CW),对逆时针三角形剔除(CCW).但是当你按顺序传递给计算机三个顶点坐标V1,V2,V3时计算机 阅读全文
posted @ 2011-04-15 00:19 chester_lp 阅读(566) 评论(0) 推荐(0)

2011年4月14日

摘要: GL_ARB_vertex_buffer_object,一般简称为VBO,这是OpenGL里的一个千呼万唤始出来的扩展,它可以根据实际情况决定把顶点数据放到显存、AGP内存或系统内存中。 没有这个扩展的时候,偶们用vertex array时,用glVertexPointer / glNormalPointer 来指定顶点数据,这时顶点数据是放在系统内存中的,每次渲染时,都要把数据从系统内存拷贝到显存,消耗不少时间。 实际上很多拷贝都是不必要的,比如静态对象的顶点数据是不变的,如果能把它们放到显存里面,那么每次渲染时都不需要拷贝操作,可以节约不少时间。 另外现在的显卡大多数是AGP的,系统会在系 阅读全文
posted @ 2011-04-14 22:56 chester_lp 阅读(802) 评论(0) 推荐(0)

2011年4月13日

摘要: 转自http://www.cppblog.com/w2001/archive/2008/05/10/49376.htmlOpenGL VBO并不难,但是较繁琐,其实其概念跟加载纹理是一样的:初始化阶段:1.glGenBuffersARB(1, &nVBOVertices); //生成一个句柄2.glBindBufferARB(GL_ARRAY_BUFFER_ARB, nVBOVertices); //声明该句柄为一个vbo句柄,并选择之3.glBufferDataARB(GL_ARRAY_BUFFER_ARB, sizeof(vertices), vertices,GL_STATIC_ 阅读全文
posted @ 2011-04-13 02:05 chester_lp 阅读(461) 评论(0) 推荐(0)

摘要: 如图,红色的处理过程是1.7.1不同于1.6.3的。至于摄像机监听的listener处理的作用,有待于后续研究。。。 阅读全文
posted @ 2011-04-13 01:34 chester_lp 阅读(122) 评论(0) 推荐(0)

摘要: 上面是我绘制的一张图。 关于八叉树场景管理器主要需要关注两个类,其一是松散八叉树的数据结构Ogre::Octree,其二是八叉树场景管理器Ogre::OctreeSceneManager。 下面摘录图片中的文字:松散八叉树的数据结构。属性:其中mBox为其包围盒,mHalfSize定义为包围盒大小的一半。mChildren是一个大小为8的静态数组,里面保存了8个Octree指针,由八叉树场景管理器创建,由本类管理。mNodes为挂接到当前八叉树上面的八叉树场景节点,mNumNodes保存了挂接到当前八叉树及其子树上面的节点数量总和。mParent为当前八叉树的父树。方法:_isTwiceSiz 阅读全文
posted @ 2011-04-13 01:32 chester_lp 阅读(1947) 评论(0) 推荐(0)

摘要: 渲染队列在Ogre中是一个重要的概念,在场景中的所有物体都会在绘制前被 Ogre放入到一个特定的渲染队列中。渲染队列主要起两个作用:1.确保正确的绘制顺序。比如先绘制天空盒再绘制一般物体,最后绘制界面。2.提高渲染效 率。Ogre将具有相同pass的物体放在一起进行绘制,目的是尽可能减少渲染状态的切换。一般用户常用的是在entity中设置渲染队列序号,其实整个渲染队 列的工作流程远远比这个复杂,但基本不需要最终用户干预。这篇文章就是要把这部分不用干预的细节分析一下。 渲染队列是构成Ogre渲染流程和控制渲染效率的关键一环,所以应该深入学 习和理解这个部分。我认为通过这个过程不仅可以学习到优秀. 阅读全文
posted @ 2011-04-13 01:24 chester_lp 阅读(283) 评论(0) 推荐(0)