假定你已经安装好了direct11 SDK(官方下的既是最新版本)和VS2013,并在VS2013中建立了一个新工程。用VS2013打开工程后,点击右键属性,选择VC++目录:其中在包含目录中添加$(DXSDK_DIR) Include;在库目录中添加$(DXSDK_DIR)Lib\x86;当然这一...
分类:
其他好文 时间:
2015-04-22 23:54:58
阅读次数:
161
DirectX增加了一种计算着色器(Compute Shader),它是专门为与图形无关的通用计算设计的。因此DirectX就变成了一个通用GPU计算的平台。GPU拥有极其强大的并行运算能力,来看看unity中怎么使用它...
分类:
编程语言 时间:
2015-03-08 14:18:51
阅读次数:
279
计算机不能直接生成曲线,更不能直接生成曲面。计算机屏幕上看到的曲线、曲面实际上是由无数个多边形构成的。多边形越多,曲面就会更为真实,曲面细分(Tessellation)就是这样的一个技术。
曲面细分,有时甚至能化低模为高模,省去不少功夫,产生效果也真是漂亮,
我们看看unity是怎么实现它的。。。...
分类:
编程语言 时间:
2015-01-08 21:42:41
阅读次数:
344
这节需要把顶点布局写在文件里面,为了方便,因为一大串非常抽象的坐标放在CPP和程序混在一起非常的不方便。
下面全为c++知识,读取文件里面的特定格式的数据:
Vertex Count: 36
Data:
-1.0 1.0 -1.0 0.0 0.0 0.0 0.0 -1.0
1.0 1.0 -1.0 1.0 0.0 0.0 0.0 -1.0
-1.0 -1.0 -1.0 0.0...
分类:
其他好文 时间:
2014-10-20 15:10:53
阅读次数:
202
首先说什么是缓冲区:
缓冲区就是在.fx效果文件(.ps .vs也是) 里面定义的一个数据结构。用于.fx和cpp文件的数据通信。
比如://--------------------------------------------------------------------------------------
// Constant Buffer Variables
//---------...
分类:
其他好文 时间:
2014-10-12 17:08:38
阅读次数:
168
在上一个列子的基础上加了一个地面。这个地面是光照效果生成的。
看图:
先说明:
光照 需要重写一个 lightshader 就是光照的渲染器
// Define the input layout
D3D11_INPUT_ELEMENT_DESC layout[] =
{
{ "POSITION", 0, DXGI_FORMAT_R32G32B32_FLOAT, 0, 0,...
分类:
其他好文 时间:
2014-10-12 01:55:10
阅读次数:
355
现在将重新制定一个camera摄像机。可以自由移动。
比如前进 后退,上游 下潜。 各个方向渲染之类的。
首先设置按键。
这个时候需要在
XWindow.h 里面
bool XWindow::frame()
{
//判断是否按下ESC键
if(x_input->isKeyDown(VK_ESCAPE))
return false;
//如果A,S,D,W,Q,E,Z,X,C键按...
分类:
移动开发 时间:
2014-10-09 02:36:17
阅读次数:
271
这个例子是在之前的例子基础上 ,把之前d3dx10math数学库换成了最新的d3dxmath。优点就不说了。先上效果图
全部代码。以及效果文件
文件结构
全部代码:
按照上图的文件顺序
#pragma once
#include
#include
class XCamera
{
public:
XCamera()
{
m_positionX =...
分类:
其他好文 时间:
2014-10-07 19:50:34
阅读次数:
378
directx11 特别推出了一个数学库 用于向量 矩阵的计算,而且使用128位 同时计算4条32位数据 (SIMD)
之前基本是用的directx10math.h这个头文件。 这个数学库既然是新出的,肯定在硬件方便处理起来比以前的快许多,优化了很多。 技术永无止境嘛。推荐用新的
而现在可以单独用 xnamath.h directx9 10 11 都可以用这个库,很方便。 下面的表可以快速从...
分类:
其他好文 时间:
2014-10-06 14:18:10
阅读次数:
312