
dx10龙书学习
dx10龙书学习
directx3d_beginner
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
10,billboard(几何着色器)
终于到了DX10中的精华部分了,那就是几何着色器。一定要把它搞完再睡觉。几何着色器特点1,位于顶点着色器和像素着色器之间2,流程:给你几个箱子,可以把这些箱子拆了,变成几个圆筒,材料不够了可以加,材料多余了可以扔。注意事项在顶点离开几何着色器之前,顶点坐标必须变换到齐次裁剪空间。[maxvertexcount(能输出的顶点的最大数量)]void GS(...原创 2020-04-16 23:38:52 · 423 阅读 · 0 评论 -
镜面,深度模板缓冲区
先上图镜面涉及到了深度模板缓冲区。即模板运算和深度值运算都要进行大体来说:模板运算其实是个位运算,通过者写入模板缓存。(深度也要通过)是谁的运算呢?A:模板参考值&掩码B:模板缓冲区的值&掩码是什么样子的运算呢?比大小,比函数,或者直接返回个bool变量结果是什么呢?结果,模板缓冲区的值可能不变,也可能各种变化。模板缓冲区在哪里...原创 2020-04-06 10:55:38 · 569 阅读 · 0 评论 -
8.3雾
先上图其实很简单,就是光照和雾的系数插值,雾出现在与摄像机的一定距离,在这个距离内,没雾,在这个距离外,越远雾越大,即雾的系数从0到1,光照系数从1到0,在shader中,代码如下:cbuffer cbFixed{ float gFogStart = 5.0f; float gFogRange = 140.0f; float3 gFogColor...原创 2020-02-27 11:37:50 · 187 阅读 · 0 评论 -
8.5alpha混合裁剪像素
先上图1,初始化时,创建混合状态 D3D10_BLEND_DESC blendDesc = { 0 }; blendDesc.AlphaToCoverageEnable = false; blendDesc.BlendEnable[0] = true; blendDesc.SrcBlend = D3D10_BLEND_SRC_ALPHA;...原创 2020-02-15 18:42:16 · 266 阅读 · 0 评论 -
7.2地形纹理
加了个纹理寻址模式,从shader上看。是SamplerState gTriLinearSam{ Filter = MIN_MAG_MIP_LINEAR; AddressU = Wrap; AddressV = Wrap;};也就是重复模式,但是,这个例子,我认为没用到,原因是纹理坐标没有超过【0,1】范围 float du = 1.0...原创 2020-02-05 13:06:32 · 293 阅读 · 0 评论 -
7.1板箱条
先上图纹理作为材质好处在于,在像素着色器赋值(值相当于采样的纹理坐标),而不是在顶点着色器赋值(顶点数组中赋值)1,先在结构体添加纹理坐标,从而在顶点数组中设定值struct Vertex{....... D3DXVECTOR2 _texC; Vertex(float x, float y, float z, float nx...原创 2020-02-04 12:14:20 · 186 阅读 · 0 评论 -
2020年1月20日-2020年1月26日,(共50小时,剩9950小时)
还是要记录,制定计划,不制定计划,就是计划失败,茫然不知所措了。2020年1月20日1,dx10龙书7.1例子2,HLSL精讲,6.6(已完成)3,pbrt1.2.74,3d地球引擎设计3.3.35,cesium 源码分析1个6,cesium源码200行(上班渲染和cesium,晚上视频教程)7,GIS视频教程1个8,GLSL视频教程1个9,windows核...原创 2020-01-20 15:21:56 · 272 阅读 · 0 评论 -
5.3顶点缓冲区线框水绘制
正如书上所讲,这个例子纯属展示如何用动态顶点缓冲区,如果绘制的话,应该用shader控制顶点缓冲区,运行起来确实卡,因为是在cpu端模拟了数据的顶点变化,再传给gpu,而不是在gpu进行的。动态顶点缓冲区1,创建用D3D10_USAGE_DYNAMIC D3D10_BUFFER_DESC vbd; vbd.Usage = D3D10_USAGE_DYNAMIC; ...原创 2020-01-13 11:50:26 · 225 阅读 · 0 评论 -
5.2山峰
起始没啥变化,就是顶点缓冲区和索引缓冲区进行了更改,按照不同高度赋值。shader没变原创 2020-01-10 16:02:37 · 150 阅读 · 0 评论 -
5.14颜色立方体
和dx9类似,多了个常量缓冲区cbuffer,用于传递矩阵变换,在例子中没有用到几何着色器,原创 2020-01-07 19:37:59 · 255 阅读 · 0 评论 -
第4章,d3d10初始化
这章是d3d10开端,与d3d9相比,一是交换链独立出来了,把后台缓冲区与纹理资源视图联立,将纹理分为渲染目标(渲染到纹理)或者着色器资源(即在着色器中对纹理采样)二是深度模板缓冲区也创建了视图,并将纹理资源试图和深度模板缓冲区视图绑定到输出合并器阶段。我的理解是,和opengl类似,将帧缓冲区分为三部分而已。FBO的DX版本。上图...原创 2019-12-30 21:53:37 · 225 阅读 · 0 评论