自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Popy007(Twinsen)的专栏

3-D图形学算法在游戏程序中的应用

  • 博客(28)
  • 收藏
  • 关注

翻译 什么是图形加速卡(四)

原文:http://www.azillionmonkeys.com/qed/accelerator.html作者:Paul Hsieh-潘宏 译-2013年2月-email: popyy@netease.com-weibo.com/panhong101(译注:本文写于2000年左右,很多内容稍显过时。但作为理解GPU发展的历史性、技术性材料,本文真是不可多得)显示器刷新最后一个瓶颈,是关于显示器刷

2013-03-02 11:44:58 6139 2

翻译 什么是图形加速卡(三)

原文:http://www.azillionmonkeys.com/qed/accelerator.html作者:Paul Hsieh-潘宏 译-2013年2月-email: popyy@netease.com-weibo.com/panhong101(译注:本文写于2000年左右,很多内容稍显过时。但作为理解GPU发展的历史性、技术性材料,本文真是不可多得)硬件特性和主机模拟现阶段显卡市场受三个

2013-02-14 10:47:40 6713

翻译 什么是图形加速卡(二)

原文:http://www.azillionmonkeys.com/qed/accelerator.html作者:Paul Hsieh-潘宏 译-2013年1月-email: popyy@netease.com-weibo.com/panhong101(译注:本文写于2000年左右,很多内容稍显过时。但作为理解GPU发展的历史性、技术性材料,本文真是不可多得)主机和显卡的通信粗略来说,将图形操作从

2013-01-26 19:47:13 6596 3

翻译 什么是图形加速卡(一)

原文:http://www.azillionmonkeys.com/qed/accelerator.html作者:Paul Hsieh-潘宏 译-2013年1月-email: popyy@netease.com-weibo.com/panhong101(译注:本文写于2000年左右,很多内容稍显过时。但作为理解GPU发展的历史性、技术性材料,

2013-01-23 15:22:59 12409 1

翻译 C++函数式编程(六)行动指导

原文:http://www.altdevblogaday.com/2012/04/26/functional-programming-in-c/作者:John Carmack-潘宏 译-2013年1月-email: popyy@netease.com-weibo.com/panhong101研究研究你代码库中的一些别太简单的函数,

2013-01-19 10:13:48 5811

翻译 C++函数式编程(五)性能影响

原文:http://www.altdevblogaday.com/2012/04/26/functional-programming-in-c/作者:John Carmack-潘宏 译-2013年1月-email: popyy@netease.com-weibo.com/panhong101大多数情况下,直接操纵内存是最快的,否则肯定慢点。当

2013-01-19 08:59:39 6538

翻译 C++函数式编程(四)面向对象编程

原文:http://www.altdevblogaday.com/2012/04/26/functional-programming-in-c/作者:John Carmack-潘宏 译-2013年1月-email: popyy@netease.com-weibo.com/panhong101Michael Feathers@mfeat

2013-01-18 09:17:19 6052

翻译 C++函数式编程(三)纯正度实践

原文:http://www.altdevblogaday.com/2012/04/26/functional-programming-in-c/作者:John Carmack-潘宏 译-2013年1月-email: popyy@netease.com-weibo.com/panhong101并非所有程序都是纯正的,除非该程序只和自

2013-01-17 10:23:32 6765 1

翻译 C++函数式编程(二)纯函数

原文:http://www.altdevblogaday.com/2012/04/26/functional-programming-in-c/作者:John Carmack-潘宏 译-2013年1月-email: popyy@netease.com-weibo.com/panhong101纯函数(Pure Function)与外

2013-01-16 11:48:03 9595 2

翻译 C++函数式编程(一)

原文:http://www.altdevblogaday.com/2012/04/26/functional-programming-in-c/作者:John Carmack-潘宏 译-2013年1月-email: popyy@netease.com-weibo.com/panhong101可能大家都听说过,“函数式”编程能够给软件开

2013-01-15 20:08:06 12836 6

原创 深入探索3D拾取技术

-潘宏-2013年1月-本人水平有限,疏忽错误在所难免,还请各位高手不吝赐教-email: popyy@netease.com-weibo.com/panhong1013D拾取在游戏中,玩家需要通过点击2D屏幕来选择3D物体,这个过程就是拾取(picking)。拾取是3D游戏必不可少的基本操作,它实现了玩家和游戏世界内对象的交互。

2013-01-07 16:30:54 25407 25

原创 关于投影平面变换到viewport后多边形的失真问题

-潘宏-2012年12月-本人水平有限,疏忽错误在所难免,还请各位高手不吝赐教-email: popyy@netease.com-weibo.com/panhong101在《深入探索透视投影变换》(http://blog.csdn.net/popy007/article/details/1797121)一文中,我们曾经简单提到多边形从投影平面变换到视口之后可

2012-12-21 17:48:22 7065 2

原创 一个基于组合模式的游戏地图系统

-潘宏-2012年12月-本人水平有限,疏忽错误在所难免,还请各位高手不吝赐教-email: popyy@netease.com-weibo.com/panhong101地图系统地图系统是游戏开发永恒不变的一个主题。在大多数游戏开发中,我们都需要和地图打交道。不同的游戏可能采用不同的地图系统,比如对于2D游戏来说,可能的地图类型包括:

2012-12-17 14:43:02 12556

原创 一个多态性的游戏状态机系统

-潘宏-2012年12月-本人水平有限,疏忽错误在所难免,还请各位高手不吝赐教-email: popyy@netease.com-weibo.com/panhong101任何一款游戏产品,都需要在几种界面之间进行转换:logo、trailer、main menu、in-game、settings menu等等,并且会在这些转换之间处理资源问题。对于实现这样的转换,不同的游戏做法有所差异,但基本上会

2012-12-13 07:38:02 18849 17

原创 一个C++多继承带来的游戏开发陷阱

-潘宏-2012年12月-本人水平有限,疏忽错误在所难免,还请各位高手不吝赐教-email: popyy@netease.com-weibo.com/panhong101故事事情的经过是这样的:当时我正在给游戏增加一个AI模块,我们采用了A*算法进行寻路计算。该算法是一个计算密集型过程,在没有任何优化的情况下,我们的引擎必须至少保证几十个单位同时进行寻路,从而能够在快速迭代的情况下进行正常的设计测

2012-12-05 15:36:13 8052 3

原创 一个基于observer模式的游戏事件分发系统

-潘宏-2012年11月-本人水平有限,疏忽错误在所难免,还请各位高手不吝赐教-email: popyy@netease.com-weibo.com/panhong101在游戏引擎以及产品开发中,程序员需要让大量的系统模块相互进行通信。在大多数时候,模块的数量是巨大的。在最坏的情况下,N个相互通信的模块需要N*(N-1)/2种依赖关系。就算是最简单的游戏

2012-11-30 17:58:38 24877 19

原创 深入探索透视纹理映射(下)

-潘宏-2010年5月5日-本人水平有限,疏忽错误在所难免,还请各位数学高手、编程高手不吝赐教-email: popyy@netease.com在上一篇文章中,我们探讨了学习透视纹理映射所需要的基础知识。我们知道了顶点在通过透视投影变换之后,是如何一步一步通过流水线进入屏幕空间的。也知道了一个非常简单的三角形扫描线转换算法,以及通过线性插值实现的仿射纹理映射。尽管我们使用的这个

2010-05-08 22:16:00 21085 38

原创 深入探索透视纹理映射(上)

-潘宏-2010年5月3日-本人水平有限,疏忽错误在所难免,还请各位数学高手、编程高手不吝赐教-email: popyy@netease.com在这篇文章中,我们将探讨图形流水线中另一个复杂的主题——透视纹理映射(Perspective Texture Mapping)。你可能听说过仿射纹理映射(Affine Texture Mapping)(没听过?没关系,我会让你理解的),并且知

2010-05-04 17:11:00 22215 5

原创 推导相机变换矩阵

-潘宏-2009.12.31-本人水平有限,疏忽错误在所难免,还请各位数学高手、编程高手不吝赐教-email: popyy@netease.com一些网友写信给我希望能够了解固定流水线中世界空间到相机空间变换矩阵的具体推导过程。其实之前我在《向量几何在游戏编程中的使用6》中已经简单的把相机变换作为一个使用基理论的例子进行了说明,但可能仍然不够具体。这篇文章中,我会尽力阐述相机变换

2010-01-02 11:01:00 31730 64

原创 推导正交投影变换

-潘宏-2009.4.20-本人水平有限,疏忽错误在所难免,还请各位数学高手、编程高手不吝赐教-email: popyy@netease.com 之前我们在《深入探索透视投影变换》以及《深入探索透视投影变换(续)》中研究了OpenGL、D3D以及M3G的透视投影变换的原理以及生成方法。这些方法在当前的主流图形API中得到了普遍使用。但关于投影应用,还有一类经常使用的投

2009-04-26 22:06:00 28842 7

原创 深入探索透视投影变换(续)

-潘宏-2009.4.14-本人水平有限,疏忽错误在所难免,还请各位数学高手、编程高手不吝赐教-email: popyy@netease.com在上一篇文章中我们讨论了透视投影变换的原理,分析了OpenGL所使用的透视投影矩阵的生成方法。正如我们所说,不同的图形API因为左右手坐标系、行向量列向量矩阵以及变换范围等等的不同导致了矩阵的差异,可以有几十个不同的透视投影矩阵

2009-04-19 15:06:00 34691 34

原创 深入探索透视投影变换

深入探索透视投影变换-Twinsen编写-本人水平有限,疏忽错误在所难免,还请各位数学高手、编程高手不吝赐教-email: popyy@netease.com透视投影是3D固定流水线的重要组成部分,是将相机空间中的点从视锥体(frustum)变换到规则观察体(Canonical View Volume)中,待裁剪完毕后进行透视除法的行为。在算法中它是通过透视矩阵乘法和

2007-09-23 17:18:00 109014 145

原创 向量几何在游戏编程中的使用6

3-D空间中的基变换与坐标变换-Twinsen编写-本人水平有限,疏忽错误在所难免,还请各位数学高手、编程高手不吝赐教-我的Email-address: popyy@netease.com一、空间坐标系的基和基矩阵在3-D空间中,我们用空间坐标系来规范物体的位置,空间坐标系由3个相互垂直的坐标轴组成,我们就把它们作为我们观察3-D空间的基础,空间中物体的位置可以通过它们来衡量。当我们把这3个坐

2005-05-20 14:42:00 18029 19

原创 向量几何在游戏编程中的使用5

物体的旋转-Twinsen编写-本人水平有限,疏忽错误在所难免,还请各位数学高手、编程高手不吝赐教-我的Email-address: popyy@netease.com欢迎回来这里!此次我们要讨论向量的旋转问题,包括平面绕点旋转和空间绕轴旋转两部分。对于游戏程序员来说,有了向量的旋转,就代表有了操纵游戏中物体旋转的钥匙,而不论它是一个平面精灵还是一组空间的网格体亦或是我们放在3-D世界某一点的相机

2005-05-20 14:40:00 9268 5

原创 向量几何在游戏编程中的使用4

2-D物体间的碰撞响应-Twinsen编写 -本人水平有限,疏忽错误在所难免,还请各位数学高手、编程高手不吝赐教-我的Email-address: popyy@netease.com 这次我要分析两个球体之间的碰撞响应,这样我们就可以结合以前的知识来编写一款最基本的2-D台球游戏了,虽然粗糙了点,但却是个很好的开始,对吗?一、初步分析中学时候上物理课能够认真听讲的人(我?哦,不包括

2005-05-20 14:39:00 8951 14

原创 向量几何在游戏编程中的使用3

2-D边界碰撞检测-Twinsen编写-本人水平有限,疏忽错误在所难免,还请各位数学高手、编程高手不吝赐教-我的Email-address: popyy@netease.com一、使用向量进行障碍检测的原理上次说了使用向量模拟任意角度的反弹,这次谈谈它的前提---障碍碰撞。在游戏中进行障碍碰撞检测,基本思路是这样的:给定一个障碍范围,判断物体在这次移动后会不会进入这个范围,如果会,就发

2005-05-20 14:38:00 8886 8

原创 向量几何在游戏编程中的使用2

2-D物体任意角度的反弹-Twinsen编写-本人水平有限,疏忽错误在所难免,还请各位数学高手、编程高手不吝赐教-我的Email-address: popyy@netease.com第一次我说了一下向量知识的基础内容和一点使用技巧,浅显的展示了它在游戏编程中的作用。这次深入一些,充分利用向量的性质模仿一个物理现象。首先,我要介绍一下将要使用的两个基本但非常重要的技巧。一、求与某个向量a

2005-05-20 14:36:00 11162 11

原创 向量几何在游戏编程中的使用1

简单的2-D追踪-Twinsen编写-本人水平有限,疏忽错误在所难免,还请各位数学高手、编程高手不吝赐教-我的Email-address: popyy@netease.comAndre Lamothe说:“向量几何是游戏程序员最好的朋友”。一点不假,向量几何在游戏编程中的地位不容忽视,因为在游戏程序员的眼中,显示屏幕就是一个坐标系,运动物体的轨迹就是物体在这个坐标系曲线运动结果,而描述这些曲线运动

2005-05-20 14:35:00 16354 18

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除