- 博客(9)
- 资源 (1)
- 收藏
- 关注
翻译 系列教程4: 光栅化和Z-Buffer
系列教程4: 光栅化和Z-Buffer 我们跳过教程3,因为教程3主要是教我们加载Blender导出的模型网格。我们暂时不需要去做这些工作。依然以cube为例足以。 到目前为止,我们的渲染函数可以进行简单的线框渲染。我们现在开始看看如何用光栅化算法来填充三角形。然后,我们将看到如何用Z-buffer来避免将模型背面的面绘制到前面。 光栅化有太多不同类型的光栅化算法
2015-11-05 16:32:34
1370
翻译 系列教程(2):画线和三角形
系列教程(2):画线和三角形 由于我们已经在前一篇教程中构建了3D引擎的核心,我们现在可以开始优化渲染了。下一步就是连接各个点并进行画线,即线框渲染。 在这个教程中,你将学会如何画线,什么是面,以及用超酷的Bresenham算法画三角形。本篇教程最后,你将会看到如下效果:第一个在两点之间画线的基础算法我们从一个简单的算法开始。为了在2个
2015-10-16 15:51:36
2270
原创 D3D中的骨骼蒙皮动画
骨骼蒙皮动画 这是去年(2014-12-15 17:48)写的一篇笔记,鉴于此博客文章寥寥,故移植至此! 之前在游戏中虽然也用骨骼动画,但是一切基于GameBryo引擎,动作的注册,回调和控制都比较简单,使用也比较方便,但是对于骨骼动画详细的原理不甚了解,项目的bug修改和上线准备都让我没有时间好好了解一番。好在最近得空,可以看下骨骼动画,尽管新项目不
2015-10-16 09:33:10
1109
翻译 系列教程(1):学习如何用C#编写一个软渲染引擎
原文地址:http://blogs.msdn.com/b/davrous/archive/2013/06/13/tutorial-series-learning-how-to-write-a-3d-soft-engine-from-scratch-in-c-typescript-or-javascript.aspx声明:本人摘录其中C#的部分进行翻译,同时舍弃了其中一些无关紧要的话。另外,英语
2015-10-15 18:09:43
2396
转载 Parallax occlusion Mapping 视差贴图 (基于法线贴图)
Parallax occlusion Mapping 视差贴图 视差贴图技术我们其实应该称之为视差遮蔽贴图技术,因为在这一技术中,会对纹理的坐标做变换,一些凸出的纹理会遮蔽到其他的纹理,这样就会看起来具备更好的凹凸的感觉了。视差贴图技术的实现原理,其实和法线贴图是一样的,都是根据法线贴图进行的处理。视差贴图比法线贴图提供更好的视觉效果,而且跟法线贴图有同一个目的:在保证模型细节的情况下,大
2015-09-12 13:45:51
606
原创 Shadow Map 和 Shadow Volume
Shadow Map和Shadow Volume 可以说是最常见的阴影计算方法,二者各有千秋。个人认为,理解这两种阴影算法的重要前提是 理解 ZTest,ZWrite,Stencil Test的作用。ShadowMap适用于静态的光源和静态的物体,好处是开销不算大,需要2个pass。而且对于静态的光源和物体,大多数情况下,生成的Depth Map可以进行复用(此时,为啥不选择光照贴图)
2015-07-24 14:18:45
1195
原创 Unity中使用Protobuf
版权声明:本文为博主原创文章,未经博主允许不得转载。1. Message类(对消息id枚举及自定义内容的字节数组的封装)public class Message{ public ushort _cmdTag; public byte[] _data; public Message(ushort cmd_no, byte[] cmd) {
2015-06-27 15:27:28
468
转载 Unity3D中实现帧同步 - Part 1
Lockstep Implementation in Unity3D在帧同步模型中,每个客户端都会对整个游戏世界进行模拟。这种方法的好处在于减少了需要发送的信息。帧同步只需要发送用户的输入信息,而对于反过来的中心服务器模型来说,单位的信息则发送越频繁越好。比如说你在游戏世界中移动角色。在中心服务器模型中,物理模拟只会在服务器执行。客户端告诉服务器,角色要往哪个方向移动。服务器会执行
2015-06-26 10:48:45
824
原创 在Unity中判断笔记本是是否为平板模式(Tablet)
1.首先写一个dll,获取windows消息,采用unicode编码格式为什么需要这个dll,因为判断平板模式还是PC模式的代码,目前我只在Intel的网站上找到过点击打开链接。代码是Windows应用程序消息处理模块。 所以问题来了,要怎么在unity中获取这个消息。所以,自然而然的想到在dll中来获取windows消息,然后在unity中来调用这个dll // dllmain.cpp
2015-06-25 09:32:25
842
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人