float4数据类型

连续4个32位float类型数的向量

HLSL数据类型

GPU是以四维向量为基本单位来计算的。4个浮点数所组成的float4向量是GPU内置的最基本类型。使用GPU对两个float4向量进行计算,与CPU对两个整数或两个浮点数进行计算一样简单,都是只需要一个指令就可以完成。

HLSH的基本数据类型定义了float、int和bool等非向量类型,但是它们实际上都会被Complier转换成float4的向量,只要把float4向量的其中3个数值忽略,就可以把float4类型作为标量使用。

使用贴图坐标时,只需要二维向量,HLSL定义了float2类型作为二维向量使用。

Shader 经常会用到矩阵,HLSL有一个内置类型float4x4,它可以用来表示一个4*4矩阵。float4x4并不是GPU的内置类型,float4x4实 际上是由4个float4所组成的数组。其他的还有float3x3、float2x2,分表代表3*3矩阵、2*2矩阵。

Shader也可以声明数组,4*4矩阵实际上就是一个float4 m[4]的数组。注意,Shader中的所有的变量都使用寄存器,没有其他内存空间可以使用,所以越大的数组会占用越多的寄存器,甚至会超出寄存器的数量限制。

在使用float4向量中的个别数值时,可以用xyzw或rgba,都可以用来表示四维向量中的数值。但不能把它们混用,例如不能用xyba,把它视为颜色时就用rgba,否则就是用xyzw,不能把这二者混合使用。

时间: 2024-10-20 00:52:32

float4数据类型的相关文章

Java中的基本数据类型

Java中的基本数据类型分四类八种 byte(Byte-1)/short(Short-2)/int(Integer-4)/long(Long-8) boolean(Boolean-1bit) char(Character-2) float(Float-4)/double(Double-8) 括号后是他们的包装类和所占字节大小(Java中的基本数据类型所占字节大小是固定的,和C/C++中不一样) 基本数据类型的默认值: Data Type Default Value (for fields) by

java基本数据类型(二)和分支结构

基本数据类型(四类八种):不能为null一.整数型 byte----2的8次方 short----2的16次方 int----2的32次方 long----2的64次方二.浮点型 float----4个 double---8个字节三.布尔型 boolean(true, false)四.字符型 char(可以是一个字母, 也可以是一个汉字) int a = 5; 全部存到栈 引用类型:String s = "abc"; 所有的类.数组.接口 运算符 字符串连接字符串需要注意的地方:在输出

H2Database数据类型

数据类型   整数(INT) 布尔型(BOOLEAN) 微整数(TINYINT) 小整数(SMALLINT) 大整数(BIGINT) 标识符(IDENTITY) 货币数(DECIMAL) 双精度实数(DOUBLE) 实数(REAL) 时间(TIME) 日期(DATE) 时间戳(TIMESTAMP) 二进制(BINARY) 其他类型(OTHER) 可变字符串(VARCHAR) 不区分大小写可变字符串(VARCHAR_IGNORECASE) 字符(CHAR) 二进制大对象(BLOB) 文本大对象(C

Java标准输入输出+基础理论+基本数据类型总结

学Java两个多月了,准备写Java相关知识,多总结(毕竟自己也是小白),以后定期写Java相关博客,一直把Java大致体系学完.只是为了自己方便查阅,有不足可指出. 1.标准输出: public class HelloJava { public static void main(String[] args) {       System.out.println("renzhiyuan学习Java"); } } 1.1)参数: public:表示的这个程序的访问权限,表示的是任何的场合

我的MYSQL学习心得(四) 数据类型

MYSQL里的BLOB数据类型 BLOB是一个二进制大对象,用来存储可变数量的数据.BLOB类型分为4种:TinyBlob.Blob.MediumBlob.LongBlob, 这几个类型之间的唯一区别是在存储文件的最大大小上不同. MySQL的四种BLOB类型     类型 大小(单位:字节) TinyBlob                            最大 255Blob                                  最大 65KMediumBlob      

Mysql学习笔记(二)数据类型 补充

原文:Mysql学习笔记(二)数据类型 补充 PS:简单的补充一下数据类型里的String类型以及列类型... 学习内容: 1.String类型 2.列类型存储需求 String类型: i.char与varchar char与varchar的类型相似,但是他们的保存方式和检索方式不同... char的存储结构是固定长度的存储...即指定了几个字节,那么就占用几个字节,如char(4),那么无论存入的是什么字串,那么都占用四个字节...char的 可表示长度范围为0-255的任何值,当保存的字节不

Mysql数据类型的优化选择

整数类型: Tinyint-8 Smallint-16 Mediumint-24 Int-32 Bigint-64 实数类型(带有小数部分的数字) Float-4/double-8:浮点 Decimal:精确(只是存储格式,在计算中会转为double类型) 浮点类型在存储同样范围的值时,通常比decimal使用更少的空间. 字符串类型: Varchar:可变长字符串(需要1-2个字节存储字符串长度) 优点:比定长类型节约空间: 缺点:碎片问题.字符串update变长时,一个行的占用空间变长,但是

Java 初次再体验 带着疑问思考【1】基本数据类型和数组及我为啥子要学Java 及运算等等 就是那个啥Java和别的语言都要干的事 基本计算0-0

为什么学Java 1.安排2.生活 基本数据类型和数组1.标识符 取名字 取名字要有规则 所以就叫命名规则 言而总之 取合适的名字 1.一个标准的英文名 2.包小写 3.类首字母大写 4.常量全部大写 5.变量首字母小写,其后如果还有单词首字母大写 2.unicode字符集 65536个字符 前128个ASCII码对应 Java语言使用的就是Unicode标准字符集 所以这个和char的个数一样?-? 3.基本数据类型 四大类 八种 逻辑类型:boolean 整数类型: byte .short.

Mysql数据类型TINYINT(1)与BOOLEAN踩坑记

熟悉Mysql的同学应该都知道,Mysql查询的boolean结果将输出为0或者1. 比如: select 1=1; 其输出结果为1. 查阅mysql官方文档仅找到如下描述: 11.10 Using Data Types from Other Database Engines To facilitate the use of code written for SQL implementations from other vendors, MySQL maps data types as show