#
摘要: 最近发现一个很特别的问题,可能是我水平未够,找不到原因。
阅读全文
摘要: 最近使用clipplane的时候,当渲染物在固定管线的时候,一切正常,但当渲染物用了vertexshader的时候,完全看不到了,找了很久也不知道问题的所在。
阅读全文
最近把shader那部分从设置Constanttable转为SetXXXShaderContant,之前的用法有些问题,所以没显示正确,下面总结一下。
1、设置的寄存器变量必须每128位对齐,即使是一个float,也要设置成float[4]。
2、设置矩阵必须由行矩阵转为列矩阵,否则数据不正确。
摘要: 上次写了一个UI的控件editbox,我采用了IME响应中文输入,但在消息处理的时候收到WM_INPUTLANGCHANGEREQUEST,却没收到WM_INPUTLANGCHANGE的消息,在网上也查不到原因,看MSDN一开始也没看出原因。但实际上是我自己没能理解MSDN所说的。
阅读全文
摘要: 写代码这么久,材质、渲染状态和shader的问题一直给我有很大的困拢,今天为了整理一下思路,决定写一下设计文档和序列图。经过这样一写,和对之前渲染状态管理的一些文章的理解,思路终于清楚了一点。
阅读全文
摘要: 温故知新,水面很早就实现了,但没有在这里写过,今天总结一下。
水的模拟要达到以下效果:水面的折射与反射,水的波动。
要达到这种效果,需要以下四张纹理:折射纹理(RenderTarget),反射纹理(RenderTarget),Bumpmap,水自己的纹理。
折射与反射的原理就不具体说了,下面只说实现步骤。
阅读全文
摘要: 堆(heap)和栈(stack)是C/C++编程不可避免会碰到的两个基本概念。首先,这两个概念都可以在讲数据结构的书中找到,他们都是基本的数据结构,虽然栈更为简单一些。在具体的C/C++编程框架中,这两个概念并不是并行的。对底层机器代码的研究可以揭示,栈是机器系统提供的数据结构,而堆则是C/C++函数库提供的。
阅读全文
摘要: 为了设计上的灵活,我把shader、纹理等都封装到材质(Material)里,以方便渲染对象在不同状态下材质的切换以达到不同的渲染效果。
阅读全文
摘要: 摘自http://www.cnblogs.com/ixnehc/articles/1282350.html
我归纳一下就是:准备顶点和图元数据----》传到D3D渲染管线----》处理顶点数据(固定、shader)----》几何处理(裁剪、背面剔除、光栅化)----》像素处理(纹理采样)----》着色
阅读全文
摘要: 创建一个空的工程
我们首先在3DS Max创建面板里面建立一个简单的几何物体,称之为”widget” 。可以通过视图窗口里三个参数去修改它的几何特性。Size表示轮廓尺寸,第二个参数left表示物体左翼的外延,第三个参数right表示右翼的外延。
首先我们去了解一下怎样建立一个工程,可以通过以下两种方法:
阅读全文