3D
ityuany
这个作者很懒,什么都没留下…
展开
-
向量积
向量积,也被称为叉积(即交叉乘积)、外积,是一种在向量空间中向量的二元运算。与点积不同,它的运算结果是一个伪向量而不是一个标量。并且两个向量的叉积与这两个向量都垂直。定义两个向量 a 和 b 的叉积写作 a × b (有时也被写成 a ∧ b,避免和字母 x 混淆)。叉积可以被定义为:在这里 θ 表示 a 和 b 之间的角度(0° ≤ θ ≤ 180°),它位于这两个矢量转载 2010-03-22 23:31:00 · 1558 阅读 · 0 评论 -
OBJ 文件格式
<br /><br />OBJ文件是一种标准的3D模型文件格式,很适合用于3D软件模型之间的互导。比如在3dsMax或LightWave中建了一个模型,想把它调到Maya里面渲染或动画,导出OBJ文件就是一种很好的选择。目前几乎所有知名的3D软件都支持OBJ文件的读写,不过很多软件需要通过插件才能做到这一点。<br /> <br />OBJ文件特点<br />(1)OBJ是一种3D模型文件,因此不包含动画、材质特性、贴图路径、动力学、粒子等信息。<br />(2)OBJ文件主要支持多边形(Polygons)转载 2010-08-10 00:21:00 · 2032 阅读 · 1 评论 -
JME 分析
部分一: 每一个游戏的恒心其实就是一个环,在游戏的生命周期内会不停的循环执行部分代码,形成这个环的原因是场景中坐标系的不断变换所致。 所以AbstractGame子类负责创建这个环,当某一个子类改变这个环时,其他的子类相应的被更新。如图: 游戏的初始化,更新,关闭等等操作都在一个线程中进行。部分二:在创建图形应用时,我们需要一个包括main()函数主类。jME给我们提供了AbstractGame和它的子类,AbstractGame提供了游戏主环,这个游戏环是这个应用的中柱,驱动整个应用。该主环在转载 2010-05-31 18:03:00 · 2105 阅读 · 1 评论 -
OPENGL与OPENGL ES的区别
数据类型: 1: i GLint 整数型2: f GLfixed 定点小数3: x GLclampx 限定型定点小数删除的功能:1.glBegin/glEnd2.glArrayElement3.显示列表4.求值器5.索引色模式6.自定义裁剪平面7.glRect8.图像处理(这个一般显卡也没有,FireGL/Quadro显卡有)9.反馈缓冲10.选择缓冲11.累积转载 2010-05-31 10:20:00 · 1102 阅读 · 0 评论 -
深入探索透视投影变换
透视投影是3D固定流水线的重要组成部分,是将相机空间中的点从视锥体(frustum)变换到规则观察体(Canonical View Volume)中,待裁剪完毕后进行透视除法的行为。在算法中它是通过透视矩阵乘法和透视除法两步完成的。 透视投影变换是令很多刚刚进入3D图形领域的开发人员感到迷惑乃至神秘的一个图形技术。其中的理解困难在于步骤繁琐,对一些基础知识过分依赖,一旦对它们中的任何转载 2010-05-30 22:10:00 · 689 阅读 · 0 评论 -
齐次坐标2
齐次坐标表示是计算机图形学的重要手段之一,它既能够用来明确区分向量和点,同时也更易用于进行仿射(线性)几何变换。”—— F.S. Hill, JR。 对于一个向量v以及基oabc,可以找到一组坐标(v1,v2,v3),使得v = v1 a + v2 b + v3 c (1)而对于一个点p,则可以找到一组坐标(p1,p2,p3),使得 p - o = p1 a + p2 b + p3转载 2010-05-28 09:18:00 · 813 阅读 · 1 评论 -
齐次坐标
按照通常使用的数学知识,二维平面上一个点可以用它在X、Y方向上的坐标来标示为 P(x,y),但是在图形学中偏偏要‘画蛇添足’的使用齐次坐标,这样我们必须使用一个三维向量来表示一个二维点即P(x,y,w),最后一个w就是那个‘足’。why?首先想像有个绝对不变的坐标系,记为W,然后以W为参照,建立两个坐标系O1和O2, O1的原点在W的(1,1)处,O2的原点在W的(2,2)处。那转载 2010-05-25 20:40:00 · 743 阅读 · 0 评论 -
3D几何流水线之模型变换
最初,物体在模型空间中,通过模型变换改变了物体的位置和朝向,物体被变换到世界空间。按照变换顺序,应该先旋转后平移,对于opengl的规则,是TR X V。矩阵T,R都是4X4的,T中只有第4列有效,其他是单位阵的排列,R中是前3X3子阵有效,其他是单位阵排列,将TR相乘:| 1 0 0 Tx | | Ux Vx Nx 0 | | Ux Vx Nx Tx || 0 1 0 Ty |转载 2010-05-21 16:45:00 · 1058 阅读 · 0 评论 -
gluPerspective和gluLookAt的关系
<br />终于搞明白gluPerspective和gluLookAt的关系了.<br />函数原型 gluLookAt(GLdoble eyex,GLdouble eyey,GLdouble eyez,GLdouble centerx,GLdouble centery,GLdouble centerz,GLdouble upx,GLdouble upy,GLdouble upz); gluPerspective(GLdouble fovy,GLdouble aspect,GLdouble zNear,GL转载 2010-07-18 01:22:00 · 651 阅读 · 0 评论 -
某个3d游戏的总体设计框架
方案 1. 技术方案 (1) 系统概要 SI Engine是基于Direct9c和.Net体系结构的用于PC机实时图形应用和游戏的开发平台。该平台包括两个主要部分。一是实时图形应用的开发制作系统,一是支持实时图形运行的虚拟机。SI Engine的设计以追求图形应用的效果和效率为主要的目标。以系统的通用性、开放性、易用性为次要目标。力求做一个满足制作高效的、逼真的实时图形应用要求的转载 2010-05-21 17:33:00 · 3792 阅读 · 0 评论 -
Z buffer 和 W buffer 簡介
幾乎所有目前的 3D 顯示晶片都有 Z buffer 或 W buffer。不過,還是常常可以看到有人對 Z buffer 和 W buffer 有一些基本的問題,像是 Z buffer 的用途、Z buffer 和 W buffer 的差別、或是一些精確度上的問題等等。這篇文章的目的就是要簡單介紹一下 Z buffer 和 W buffer。Z buffer 和 W buff转载 2010-05-11 11:19:00 · 838 阅读 · 0 评论 -
3D中的OBJ文件格式详解
OBJ文件是Alias|Wavefront公司为它的一套基于工作站的3D建模和动画软件"Advanced Visualizer"开发的一种标准3D模型文件格式,很适合用于3D软件模型之间的互导,也可以通过Maya读写。比如你在3dsMax或LightWave中建了一个模型,想把它调到Maya里面渲染或动画,导出OBJ文件就是一种很好的选择。目前几乎所有知名的3D软件都支持OBJ文件的读写,不过转载 2010-04-21 09:12:00 · 1469 阅读 · 0 评论 -
FSAA 简介
文档简介:FSAA 是 full scene anti-alias 的缩写,有些人将其译为全景反锯齿,还算是合理。不过,倒底 FSAA 是什么呢?为什么要「全景」(full scene)?「半景」不行吗?(其实相对于 FSAA 的是 edge AA,「边缘反锯齿」)反锯齿(anti-alias)又是怎么回事呢?文档内容:[Part 1]要弄清楚什么是 FSAA,就得先从 AA(anti-ali转载 2010-04-21 09:21:00 · 1378 阅读 · 0 评论 -
凹凸映射(Bump Map)实现原理
我翻译这篇教程的目的是为了帮助那些对图形渲染技术有兴趣却又苦于找不到免费中文学习资料的人。在我的身边没有任何一位从事计算机专业的前辈,从刚学会 WINDOWS的基本操作到现在,我的计算机技术完全都是一步步自学过来的,算算学编程的历史也近5年时间了。我往往要花一半以上的学习时间用来查学习资料(记得我学GIF图像压缩解压算法时,用了近2个星期时间才编出了显示GIF图片的程序,主要原因就是资料不够,转载 2010-04-21 09:19:00 · 1175 阅读 · 0 评论 -
常见模型3D格式
pmg(Pleione Mesh Group) pmg模型是游戏引擎专用的.Mabinogi的引擎叫Pleione,模型文件为.pmgX 这是DirectX一种专用格式.DAE(Collada) dae其实是遵循 collada标准 的XML文件,这个 collada标准 好像是Sony公司提出的,现在成了业界认同的一种标准.MQO(Metasequoia)转载 2010-04-21 09:17:00 · 12237 阅读 · 0 评论 -
3d图形学中的uv坐标
<br /> 1.什么是uv? <br /><br />所有的图象文件都是二维的一个平面。水平方向是U,垂直方向是V,通过这个平面的,二维的UV坐标系。我们可以定位图象上的任意一个象素。但是一个问题是如何把这个二维的平面贴到三维的NURBS表面和多边形表面呢? <br />对于NURBUS表面。由于他本身具有UV参数,尽管这个UV值是用来定位表面上的点的参数,但由于它也是二维的,所以很容易通过换算把表面上的点和平面图象上的象素对应起来。所以把图象贴带NURBUS表面上是很直接的一件事。 <br />但是对于转载 2010-08-09 14:27:00 · 9864 阅读 · 0 评论