float到rg通道的编解码
来源:互联网 发布:mac装了win10没有wifi 编辑:程序博客网 时间:2024/04/28 08:03
其实就是对unitycg里面已经实现的一个方法的简单说明。因为我一开始没有看懂,后面经人解释才知道是怎么回事。没办法, 太 low了。
方法只适用于[0,1)的浮点数。因为8bit精度太低。还有到rgba通道的编码,原理一样(大概吧, 我没看),注意:1是不行的。
思路是将浮点数乘以 255 即映射到 0 - 255的空间,即8 bit能表示的区间,然后用原始数据减去映射后的小数部分 ,小数部分直接存储,解码的时候,将映射后的小数部分还原,然后加回去就行了,很简单...
代码如下
inline float2 EncodeFloatRG( float v ){
float2 kEncodeMul = float2(1.0, 255.0);
float kEncodeBit = 1.0/255.0;
float2 enc = kEncodeMul * v;
enc = frac (enc);
enc.x -= enc.y * kEncodeBit;
return enc;
}
inline float DecodeFloatRG( float2 enc )
{
float2 kDecodeDot = float2(1.0, 1/255.0);
return dot( enc, kDecodeDot );
}
0 0
- float到rg通道的编解码
- 海思音频解码采用主动获取解码通道数据发送到音频输出通道时出现的问题
- Java的编解码
- Http的编解码
- url的编解码
- Logstash+Kafka网络通道之消息编解码
- X509证书的编解码
- 视频编解码的基本概念
- Base64的编解码方法
- jpg图像的编解码
- asterisk的编解码转换
- openmax 编解码的实现
- Python的编解码问题
- 图片的base64编解码
- URI的编解码方法
- base64的编解码问题
- base64编解码的类
- base64的编解码函数
- 织梦的自定义表单实现在线报名、留言等功能。
- windows hook
- 系统性能调优思路总结
- Longest Consecutive Sequence
- [UVA10817] Headmaster's Headache && 状压DP
- float到rg通道的编解码
- C语言程序设计实践3.1 ABS
- [QT] QT编译mysql驱动
- sgu119
- HDU 5136 Yue Fei's Battle(计数DP)
- cocos2dx3.2技术之数学类Vec2/Size/Rect浅析
- Adding a Project to an OS Design (Windows CE 5.0)
- 唯品会面试总结
- 黑马程序员-循环结构总结