初学Direct X(10) —— D3D基础预备知识

1. 像素格式

D3DFMT_X8R8G8B8(F)
X:未加使用
8:8位用于显示
B:用于显示蓝色
F:浮点像素类型

以下三个较为常用,使用其他之前务必验证显卡是否支持

D3DFMT_R8G8B8
D3DFMT_X8R8G8B8
D3DFMT_A8R8G8B8

2. 内存池

定义资源缓存的存储位置

可默认宏为:D3DPOOL_DEFAULT

3. 深度缓存

是只含有特定像素的深度信息而不含图像数据的表面,可用于判断物体的前后显示

D3DFMT_D24S8
D:深度信息
24:利用24保存深度信息
S:供模版使用

4. 顶点运算

进行顶点运算有软硬两种,最好用硬,因为这样可以不占用CPU资源

5. 查找设备是否符合性能

利用D3DCAPS9可以判断主显卡是否支持某些特性,比如是否支持顶点运算

 D3DCAPS9 caps;//检测图形设备的支持的特性
d3d->GetDeviceCaps(D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, &caps); int vp = 0;//是否支持硬件顶点运算
if(caps.DevCaps & D3DDEVCAPS_HWTRANSFORMANDLIGHT) {
vp = D3DCREATE_HARDWARE_VERTEXPROCESSING;
}
else {
vp = D3DCREATE_SOFTWARE_VERTEXPROCESSING;
}

6. 多重采样

常用于全屏反走样,缺点是开启后会显著降低程序的运行速度,D3D中使用D3DMULTISAMPLE_NONE进制多重采样,D3DMULTISAMPLE_1_SAMPLESD3DMULTISAMPLE_16_SAMPLES指定了1~16级的多重采样

7. COM

COM接口前都有前缀I

8.中间层

中间层有HAL(Hardware Abstraction Layer)和REL(Reference Rasterizer Device)D3D有的技术,但是显卡不支持,会使用REL,支持则使用HAL。

初学Direct X(10)—— D3D基础预备知识的更多相关文章

  1. JAVA面向对象-----面向对象(基础预备知识汇总)

    终于整理好了面向对象基础预备知识,但是有点多,所以你们懂的,贴图,较长的代码我还是会排版出来的,我不想把时间浪费在排版上在word里排版一次已经很浪费时间了,所以请谅解. public class C ...

  2. pytho语法基础-预备知识

    ############################################ """ 简述解释型和编译型编程语言? 解释型语言:可以直接运行,逐条翻译逐条运行 ...

  3. Linux的基础预备知识

       Linux下一切皆文件 1.root@mk-virtual-machine:/home/mk#   root:该位置表示当前终端登录的用户名 mk-virtual-machine:/home/m ...

  4. 【学习笔记】Linux基础(零):预备知识

    学习笔记(连载)之Linux系列 Note:本学习笔记源自<鸟哥的Linux私房菜(基础学习篇)>一书,为此书重要内容的摘要和总结,对于一些常识性的知识不再归纳 新型冠状病毒引发的肺炎战& ...

  5. 大数据技术之_27_电商平台数据分析项目_02_预备知识 + Scala + Spark Core + Spark SQL + Spark Streaming + Java 对象池

    第0章 预备知识0.1 Scala0.1.1 Scala 操作符0.1.2 拉链操作0.2 Spark Core0.2.1 Spark RDD 持久化0.2.2 Spark 共享变量0.3 Spark ...

  6. IP地址和子网划分学习笔记之《预备知识:进制计数》

    一.序:IP地址和子网划分学习笔记开篇 只要记住你的名字,不管你在世界的哪个地方,我一定会去见你.——新海诚 电影<你的名字> 在我们的日常生活中,每个人的名字对应一个唯一的身(敏)份(感 ...

  7. 自动化预备知识上&&下--Android自动化测试学习历程

    章节:自动化基础篇——自动化预备知识上&&下 主要讲解内容及笔记: 一.需要具备的能力: 测试一年,编程一年,熟悉并掌握业界自动化测试工具(monkey--压力测试.monkeyrun ...

  8. 学习Identity Server 4的预备知识

    我要使用asp.net core 2.0 web api 搭建一个基础框架并立即应用于一个实际的项目中去. 这里需要使用identity server 4 做单点登陆. 下面就简单学习一下相关的预备知 ...

  9. ASP.NET Core的实时库: SignalR -- 预备知识

    大纲 本系列会分为2-3篇文章. 第一篇介绍SignalR的预备知识和原理 然后会介绍SignalR和如何在ASP.NET Core里使用SignalR. 本文的目录如下: 实时Web简述 Long ...

随机推荐

  1. Sonar安装和常见问题解决

    Sonar是一款代码质量分析工具,有助于帮助代码质量提高. Sonar的官网地址为:https://www.sonarqube.org/downloads/ 点击 Show All Versions ...

  2. kettle maven 配置

    <properties> <kettle.version>6.1.0.4-225</kettle.version> </properties> < ...

  3. Mac 开发配置手册

    转自:http://www.cocoachina.com/mac/20141112/10198.html 手册内容为「如何让一部全新的 MacBook 快速完成开发环境配置」,主要面向 Web 开发者 ...

  4. OpenFlow, SDN, and NFV

    OpenFlow An open standard to innovative protocols in production networks provides a standardized hoo ...

  5. LeetCode18.四数之和 JavaScript

    给定一个包含 n 个整数的数组 nums 和一个目标值 target,判断 nums 中是否存在四个元素 a,b,c 和 d ,使得 a + b + c + d 的值与 target 相等?找出所有满 ...

  6. 统计 SQL Server中的 Job 情况

    SELECT J.name 作业名称, P.step_id'步骤编号',P.step_name'步骤名称',p.SubSystem '步骤类型',P.command'执行命令', CASE freq_ ...

  7. Python 学习笔记(十一)Python语句(二)

    For 循环语句 基础知识 for循环可以遍历任何序列的项目,如一个列表或者一个字符串. 语法: for 循环规则: do sth >>> for i in "python ...

  8. (八)netty的SSL renegotiation攻击漏洞

    为了满足安全规范,从http改造成https(见(四)启用HTTPS),然而启用https后就可以高枕无忧了吗?绿盟告诉你:当然不,TLS Client-initiated 重协商攻击(CVE-201 ...

  9. 帝国cms发布信息时替换正文IMG图片标签里的ALT内容

    帝国cms发布信息时替换正文IMG图片标签里的ALT内容 在 e/class/userfun.php 里面增加 //替换正文IMG里的ALT内容 function user_imgalt($mid,$ ...

  10. 1.Python是什么

    前言   这里只是根据个人的理解而谈,庸俗浅薄,不是科学定义,也可以认为是假装自己理解啦,掩耳盗铃罢了.知无涯是多么的恐怖,哈哈 计算机语言   此处的语言不同于我们生活中所说的语言,因为生活中的语言 ...