
3D Technology
文章平均质量分 79
olncy
这个作者很懒,什么都没留下…
展开
-
使用骨骼动画
使用骨骼动画 一·概览 当夜幕包围了我们的英雄,我不津微微一笑。“那些笨蛋永远也搞不明白会发生什么”,我对自己说。我轻轻地推动遥杆,英雄缓缓前行。在一个角落里,我按下一个按钮。突然,他攀援上了墙头,在一阵安静地等待中,英雄慢慢地检查了他的夜视镜,武器,子弹…… 这一切的一切,都实时地发生着。这其中角色动作的改变没有任何跳跃或中断。跑,爬,攀援或是漠不关心地调整,原创 2008-05-22 15:35:00 · 1008 阅读 · 0 评论 -
值得注意的函数: DrawIndexedPrimitive
它的全部申明是: HRESULT DrawIndexedPrimitive ( D3DPRIMITIVETYPE Type, INT BaseVertexIndex, UINT MinIndex, UINT NumVertices, UINT StartIndex, UINT PrimitiveCounts); 查阅DirectX 9的SDK, 关于他的文档为下: Para转载 2008-12-21 10:34:00 · 2969 阅读 · 2 评论 -
OCTREE 教程
对OCTREE的描述 OCTREE是对3D空间进行划分,也可以叫空间分割。他允许你只对你的3D世界中摄象机照射的区域进行作画。他也能用于冲突检测。下面讲一下为什么要进行空间分割。假设你建立了一个游戏世界,这个世界有超过100,000个多边形要画。如果你建立一个循环并传递这些多边形,那速度是很慢的。即使你有一块很好的显示卡,他也会有很大的麻烦。但是玩你游戏的转载 2008-12-24 16:16:00 · 1158 阅读 · 0 评论 -
BSP技术详解(补充)--------------pvs算法
终于将HL2的vbsp,vvis看完了,随便也翻了翻q3map代码,发现两者的代码太相似了,可以看出在BSP分割,portal的查找方面在Q2中都应该已经定型了,因此两者使用的算法都是一样的。下面我主要谈一下计算pvs的算法,因为在我翻译的那篇文章《bsp技术详解》中计算pvs是通过在每个portal上确定一些采样点然后进行ray cast来计算pvs的,这种方法的速度没有保证,而且处理起来也非常转载 2009-03-31 12:42:00 · 1336 阅读 · 0 评论 -
我对【纹理坐标】的理解
纹理坐标以下是我对纹理坐标的理解,如有错误,还望不吝赐教(gao_xudong2004@163.com):http://blog.youkuaiyun.com/gaoxudong/archive/2007/02/05/1502584.aspx使用纹理功能时,你必需告诉DX如何将纹理贴到几何图元上,可以通过为每个顶点指定一个纹理坐标来实现。下面的顶点结构中为每个顶点定义了两套纹理坐标:转载 2009-03-31 15:24:00 · 2393 阅读 · 0 评论 -
探讨SSE指令
转载自:未知 比较一下3DNow和浮点指令的性能差异,可以看出,3DNow指令集在运算速度上要远远超过浮点指令。那么,SSE性能如何呢,它是否有能力同3DNow一拚高低?我想,很难说那一个更好一些,因为它们都有着很高的性能。不过单从指令集上看,SSE还是要略胜一筹的。毕竟是新增了8个128位的寄存器,而且指令的功能也要强大一些。3DNow使用MMX指令的寄存器,转载 2009-04-16 15:26:00 · 983 阅读 · 0 评论 -
基于SSE指令集的程序设计简介
作者:Alex Farber出处:http://www.codeproject.com/cpp/sseintro.aspSSE技术简介Intel公司的单指令多数据流式扩展(SSE,Streaming SIMDExtensions)技术能够有效增强CPU浮点运算的能力。Visual Studio .NET2003提供了对SSE指令集的编程支持,从而允许用户在C++代转载 2009-04-16 15:27:00 · 3153 阅读 · 0 评论 -
我对【纹理颜色混合】与【ALPHA混合】的理解
纹理颜色混合这是我对纹理混合的理解,如果我的理解有误,请一定给我来信(gao_xudong2004@163.com),敬请赐教: 在D3D中,一个物体表面可以使用多个纹理,使用多个纹理时,某点最后的显示颜色可以由两个纹理的同一纹理坐标位置的两个颜色的混合值来决定,并且两纹理的操作结果可以作为下一次纹理颜色混合的来源颜色(我理解为,将操作结果保存在帧缓冲中,下一次操作转载 2009-03-31 15:00:00 · 1514 阅读 · 0 评论 -
关于骨骼动画及微软示例Skinned Mesh的解析
关于骨骼动画及微软示例Skinned Mesh的解析-----zzzworm骨骼动画是D3D的一个重要应用。尽管微软DXSDK提供了示例Skinned Mesh,但由于涉及众多概念和技术细节,示例相对于初学者非常复杂,难以看懂。在此,提供一些重要问题评论,以使初学者走出迷局,顺利上手。文中所述都是参照各种资料加上自己的理解,也有可能出些偏差,有则回贴拍砖,无则权当一笑。一 骨骼动画转载 2009-03-31 17:50:00 · 1096 阅读 · 2 评论 -
游戏编程的资料
小时候就梦想自己以后能够参与游戏的制作,自己开发出来的游戏是最受欢迎,但是成功的背后充满了泪水和努力,只看表面是永远不会成功的.假如你对游戏开发充满热情,以下有一条最快的道路,让你尽快进入游戏开发行业,让你掌握游戏开发的基本技术,让你找到一个发展和规划的方向.以下是最快同往游戏业的道路,请大家按着以下顺序完成,不要放弃,努力吧!必经之路:说到底就是"看书,写程序",但是不要盲目的去转载 2009-03-31 18:15:00 · 785 阅读 · 0 评论 -
BLP文件格式
.BLP files are texture files used in games made by Blizzard Entertainment, also used in other games like Neverwinter Nights. While Blizzard provides an Interface AddOn Kit for extracting the user inte转载 2008-12-15 12:45:00 · 1706 阅读 · 0 评论 -
骨骼系统
在三维系统中,骨骼系统是一个重要的部分,是控制人物动作的较佳方法,也是未来人物动作的发展趋势。当前游戏的三维人物动作的控制大多采用顶点关键帧,但这种方式为每一帧动画都要记录人物的顶点数据,当动作多了的时候,存储的需求就越来越大,所以这种方式不但限制了人物的多边形数(顶点数),还限制了动作不能太多。而骨骼动画不同,每帧只记录骨骼的转换,然后通过骨骼与顶点的联系把转换附加到顶点上,生成新的顶点位置,所转载 2009-01-21 20:49:00 · 1350 阅读 · 0 评论 -
关于台球(刚体)碰撞物理模型的编写方案
只能提供初步了1、球体之间的相互碰撞检测(球的半径和质量均相等)输入数据:(2D向量表示) 球1的球心坐标 球1的速度方向 球1的速率 球1的速度=球1的速度方向×球1的速率 球2的球心坐标 球2的速度方向 球2的速率 球2的速度=球2的速度方向×球2的速率计算过程: 球1与球2的相对速度 RelativeV = 球1的速度-球2的速度 由球1的球心坐标与RelativeV的单位向量构转载 2008-11-20 16:38:00 · 2146 阅读 · 0 评论 -
D3D中的第一人称视角
第一人称视角控制,就像quake一样用鼠标控制方向,用键盘控制左右前后。鼠标和键盘用directinput控制输入。首先,我们可以知道d3d的view矩阵有三个组成部分,分别是三个向量:眼睛所在点、眼看着的点、向上的方向。所以,我们首先定义三个向量:D3DXVECTOR3 VDot,VAtPoint,VUp;赋予初值:VDot=D3DXVECTOR3( 2.0f, 0.0f转载 2008-05-22 15:52:00 · 906 阅读 · 0 评论 -
骨骼动画(Skeletal Animation)
骨骼动画(Skeletal Animation)(一)相信这里没有人没玩过采用骨骼动画技术的游戏,看看那些热门的动作游戏,例如《波斯王子》、 《分裂细胞》和《战神》,你就知道骨骼动画的威力了(我承认是猜的)。骨骼动画技术用来使我们的3D模型在屏幕上动起来,通过和动作捕捉技术结合,可以让 模型做出非常逼真的动作。而这样一个极具威力的技术,其原理却相当简单。 假设我们要让游戏主角做出一个动作,原创 2008-05-22 15:42:00 · 1984 阅读 · 0 评论 -
3D游戏角色动画
摘要:本文主要描述了3D游戏角色动画的原理及应用,从介绍微软的X文件到最为广泛应用的骨骼蒙皮动画,另外简要的介绍了下渐变动画的原理。关键词:Role Animation Skeletal Animation Morphing Animation Skinned Mesh Abstract:Introduce 3D Game Role Animation, for example Skele原创 2008-05-22 15:48:00 · 2016 阅读 · 0 评论 -
近期在研究Skeletal Animation (骨骼动画)
近期在研究Skeletal Animation(骨骼动画) 骨骼动画(Skeletal Animation)又叫Bone Animation,它与关键帧动画(Key-frame Animation)相比,占用空间小,因为它不需要象关键帧动画那样要存储每一帧的各个顶点的数据,而是只需要存储每一帧的骨骼,骨骼与顶点相比,当然 要少得多。所以骨骼动画有很多优势,当然其技术难度也很高。我个人觉原创 2008-05-22 15:40:00 · 1071 阅读 · 0 评论 -
动画技术-关键帧(keyFrame)
关键帧是一种常用的动画技术,其基本原理是将动画序列中比较关键的帧提取出来,而其他帧根据时间用这些关键帧插值计算得到。一个简单的关键帧结构:typedef struct sKeyframe {DWORD Time ;D3DMATRIX matTransformation ;}sKeyframe这是一个非常简化的结构,只包含时间和矩阵。但从这个结构可以看出keyFrame技术最原创 2008-05-22 15:46:00 · 1507 阅读 · 0 评论 -
HRESULT SetRenderState( D3DRENDERSTATETYPE State, DWORD Value )
设置一个设备的渲染状态参数。HRESULT SetRenderState( D3DRENDERSTATETYPE State, DWORD Value);参数: State [in] Device state variable that is being modified. This parameter can b原创 2008-05-22 15:51:00 · 1037 阅读 · 0 评论 -
DirectX里的Skin Mesh角色动画
DirectX里的Skin Mesh角色动画 在写我们的skin mesh代码之前了解DX怎样处理skin mesh是很重要的.当然,现在有很多可以存skin meshes的文件格式,但是现在最容易使用的是在DirecdtX中有支持的X文件.X文件可以存储正常的静态的meshes,也同样支持skin meshes.在开始讲skin meshes 之前,让我们对X文件有个大概的了解.我将原创 2008-05-22 15:36:00 · 1618 阅读 · 0 评论 -
[美术制作流程]魔兽世界角色换装分析
基于WowModelView的代码分析魔兽的换装流程,给程序包括美术提示avatar换装思路。魔兽角色系统设计原则:1.一套模型多套纹理贴图2.某一角色只有一个模型, 该模型包含了各种服装搭配所需的Mesh, 是该角色网格全集. 当用户换装时,会动态显示、隐藏一些网格细节。比如发型:有短发、中发、长发;37开、辫子等。这些都是已经做好跟Skin一起导出。只是运行时根据用户配置决原创 2008-06-11 20:42:00 · 984 阅读 · 0 评论 -
室外地形技术概览
1.高度图1.高度图代表了地形网格上每个顶点的高度值。2.地形实时生成,所以会有一张高度图。3.高度图级别:一个字节0-255级别,两个字节0-65535级别。为了节省资源,不同场景采用不同的级别。4.地形网格顶点的法线可以通过周边顶点采样计算,也可以采用斜坡算法(即采用相邻四个顶点的高度及算法的k值计算当前顶点法线。K值需要手工调整,以达到较好的明暗效果。)5.大家注意到了,原创 2008-06-11 20:44:00 · 667 阅读 · 0 评论 -
D3D初步1
D3D是一个十分繁琐的工具,尽管Microsoft已经尽可能地简化了,但是为了实现一个效果,你还是不得不做许多的工作,其中就包括对各种复杂的结构的赋值;这些赋值很重要,它直接关系到程序的最终效果。 这个部分,是我初学D3D时的一个总结。 首先,获取一个D3D设备: LPDIRECT3DDEVICE9 pd3dDevice;LPDIRECT3D9 pD3D = Direc原创 2008-11-20 16:33:00 · 703 阅读 · 0 评论 -
Alpha混合物体的深度排序[译]
原文地址:http://blog.youkuaiyun.com/xoyojank/archive/2009/02/21/3918091.aspx Alpha混合物体的深度排序 document.body.oncopy = function() { if (window.clipboardData)转载 2009-09-21 11:48:00 · 684 阅读 · 0 评论