Practical Rendering and Computation with Direct3D 11学习笔记(2.2.3)常量缓冲区

2.2.3常量缓冲区

2.2.3.1常量缓冲区概述(constant buffer)

     常量缓冲区是第一个我们接触的能进入可编程着色器阶段并且随后被HLSL代码使用的资源类型,一个常量缓冲区被用来向一个正在管线中执行的可编程着色器 应用程序提供常量信息。术语常量(constant)指的是在这个缓冲区内保存的常量通过绘画、调度调用等不会发生变化的事实。只改变管线调用之间的任何信息,例如世界变换矩阵或者对象颜色,在一个常量缓冲区被提供给着色器程序。这个机制是数据从主程序变换到可编程着色器阶段的主要思想。包含在一个常量缓冲区里的信息类型和数量可能从一个缓冲区到另一个缓冲区改变。这完全依靠每一个特定所需着色器程序的数据,并且在一个着色器程序被结构声明所定义。缓冲区能被定制在一定程度上任何 基本HLSL类型组合,以及创建这些基本类型组合。HLSL基本类型包括标量、向量、矩阵,这些类型数组、实例类和这些结构类的组合。一个这些类型的组合如图2.2.3.1描述。 
    
   迄今为止常量缓冲区与其他我们讨论过的缓冲区有些不同,顶点缓冲区和索引缓冲区定义了一个基本数据元素然后在一个类似数组形式多次重复。常量缓冲区定义了一个基本元素后,不会提供元素的多个实例,缓冲区会创建一个足够大的能容纳预期的信息,但是不会更大,这暗示常量缓冲区创建了一个结构而不是数组。

2.2.3.2 使用常量缓冲

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值