- 博客(9)
- 收藏
- 关注
原创 The Design of XNA Camera
The Design of XNA Camera仅供个人学习使用,请勿转载,勿用于任何商业用途。 在编写任何3D程序之前,建立一个camara是非常有必要的。有多少次当你花了很长时间写完程序,运行时却只看到空空的背景颜色?你检查了模型数据,程序逻辑,shader,最后发现原来是变换矩阵计算错了。这大概是编写3D程序时最常见,也最低级的错误之一。 那么,什
2008-12-27 03:43:00 2772 3
原创 0.033秒的艺术 --- for vs. foreach
0.033秒的艺术 --- for vs. foreach仅供个人学习使用,请勿转载,勿用于任何商业用途。 一直以来,关于C#中for和foreach孰优孰劣的争论似乎从来就没有停止过,各种谣言和真相混杂在一起,以至于这似乎变成了一个很复杂的问题。For的fans认为,foreach内部会分配enumerator,产生垃圾,影响性能;而foreach的支持者则认为编译器会对f
2008-12-21 04:35:00 1514
原创 接下来写什么?
2008年,写了一年脚本之后,终于觉得开发XNA引擎才是我想做的。于是辞了工作,呆在家里开发自己的引擎,当然也可以说我又成了社会闲散人员:( 转眼之间XNA已经3.0了,俗话都说ms的产品要到3.0才好用。确实,可以看到这个版本的类库已经稳定下来了。3.0在图形方面没有什么重大改进,而是增加了部分对于Xbox Live的新功能和对Zune的支持。其实对于
2008-12-20 02:05:00 1751 12
原创 A Simple Input Manager for XNA
A Simple Input Manager for XNA仅供个人学习使用,请勿转载,勿用于任何商业用途。(update on 4.28 09: 这篇文章的设计是有bug的,详细更新可以看这里) Why we need input manager? 在PC平台上,KeyboardState和MouseState提供了基本的用户输入信息,但是对实际编写游戏来说,还缺
2008-12-20 00:42:00 1967
原创 Beware of GPU memory bandwidth!!
Beware of GPU memory bandwidth 仅供个人学习使用,请勿转载,勿用于任何商业用途。 前段时间,写了一系列Post-Process effect,包括screen spance的motion blur, 折射,散射等等。大部分shader都非常简单,无非是把一个full screen quad渲染到屏幕,通常不超过10行ps代码,不含任何分支
2008-12-08 04:02:00 2849 2
原创 XNA中的RenderTarget
RenderTarget也许是最容易让新手误解的技术之一. 打个比方, RenderTarget其实就像一块画布. 大多数情况下, 这块画布就是我们的backbuffer. 但很多时候, 我们需要生成一些中间纹理, 这就需要一块新画布, 也就是一块RenderTarget. 从物理上来说, RenderTarget和backbuffer一样, 是显卡中的一段连续显存, 当Rende
2008-12-03 02:39:00 2475 4
原创 用XNA显示GPU系统信息
在开发图形程序时, 为了保证在各种硬件环境下都有较好的兼容性, 常常需要根据具体的硬件做一些调整, 当然还包括允许用户修改分辨率这种最常见的任务. 那么首先就必须知道硬件所支持的各种特性. 原来的MDX有一个这样的例子, 今天用xna重新写了一遍, 非常简单, 100行代码左右:) 这里要用到2个类: GraphicsAdapter和GraphicsDeviceCapa
2008-12-02 02:14:00 1191 2
原创 Font System Finished!
这几天加强了字体系统, 功能和性能都已经比较完善了:1.支持任意字体和大小.2. 支持string和StringBuilder3. 支持从字符串中的某个指定位置开始绘制.4. 支持x,y方向上的非均匀缩放5. 支持2D空间内的旋转.6. 支持任意颜色7. 添加了DrawStringInRegion(), 在指定区域内显示文字,支持自动换行, 裁剪超出显示区域的文字. 暂时还不支持缩
2008-12-02 01:41:00 1329 3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人