Texture+PBR两种工作流程
一、导入Texture
1.Inpspector
TextureSize
2的n次幂,底层图形学需要,计算更快;不使用2的倍数,系统也会添加像素补全2n;
有最大尺寸限制8k,cubemap最高4k;
Mipmap
图像逐渐减小版本的列表;纹理远离摄像机时,Unity 会自动使用较小版本的纹理;LOD
内存增加33%;
WarpMode
循环模式:平铺,拉伸,镜像,一次镜像回退到拉伸,Per-Axis(uv轴不同循环模式);
FilterMode
滤波模式;采样方式:
Point:点插值,拉伸块状化(锯齿);
Bilinear:双线性插值,拉伸模糊;
Trilinear:三线性插值,除了Bilinear,在不同mipmap等级进行模糊;
AnisoLevel
各项异性过滤,掠射角观察提高纹理质量,非常消耗显卡资源,一般禁止;
2.导入器规范资源格式
Unity导入资源有默认格式,Texture导入默认type是Deafult;如果是2D游戏要求都是Sprite;每次导入都需要修改类型非常麻烦;
Unity提供了导入资源设置资源属性的接口;
这段代码可以实现导入图片资源默认格式为Sprite;
using UnityEditor;
public class PreTexture : AssetPostprocessor
{
void OnPreprocessTexture()
{
TextureImporter tImporter = (TextureImporter)assetImporter;
tImporter.textureType = TextureImporterType.Sprite;
}
}
包含UnityEditor继承AssetPostprocessor,实现以下方法:
OnPreprocessTextureOnPreprocessModelOnPreprocessAnimationOnPreprocessAudio
导入资源可以修改格式,压缩大小,禁用mipmaps,wrapmode等;
具体看官方文档,自定义需求;
3.Format
带不带透明通道内存占用相差1/3左右;
PC
DirectX 11:
RGB 纹理 - DXT1 4 位/像素;
RGBA 纹理 - BC7(质量更高,压缩速度较慢)或 DXT5(压缩速度较快);
HDR 纹理 - BC6H;
DirectX 10: DXT5(GPU不支持BC7);
IOS
A8 芯片以上:RGB 和 RGBA 纹理 - ATSC (纹理质量粒度可选);
A7或更低:PVRTC;
Android
OpenGL ES 3.0/Vulkan - ETC2 / ATSC
OpenGL ES 2 - ETC
HDR 纹理 - ASTC HDR(需要Vulkan 或GL-hdr支持)
画质:RGB(A)32 > ASTC4X4 > ASTC6X6 > ETC2 ≈ PVRTC > ETC1
国内TOP600机型情况分布:OpenGL ES 3.1以下覆盖用户占0.2%,设备数量占比6.3%;
所以其实其实移动平台统一用ASTC完事;
二、两种PBR workflow
F0:入射角为0 ° 0\degree0°时的反射光线radiance占入射光线radiance的比例;
漫反射高光都收到F0影响;
1.金属粗糙度(M/R)
BaseColor:RGB贴图,表示金属的F0;
Metallic:灰度图,金属占比遮罩;100%金属为1白色;0%金属为0黑色;
Roughness:灰度图,数值越大越粗糙;
优缺点:非金属的F0固定为0.04,无法调整;主要workflow;
2,。镜面反射光泽度(S/G)
- Diffuse/Albedo:RGB贴图,表示非金属颜色,金属0纯黑;
- Specular:RGB贴图,定义金属非金属的F0;
- Glossiness:灰度图,数值越大越光滑;
优缺点:F0自由调整(可能做出反能量守恒定律的材质);两张RGB图,性能要求高;

贴图分辨率和纹素密度太低会出现白边和黑边,由于贴图之间误差;
Texture+PBR两种工作流程的更多相关文章
- FTP协议的两种工作模式简单解析!
转载自百度百科:http://baike.baidu.com/link?url=KaBZmDM4IZ2v56MyoOnpjqKr0gADv_BRbgjlscYdyvh3-zDwINOHNPSi9Jlp ...
- Vue路由器的hash和history两种工作模式 && Vue项目编译部署
1 # 一.Vue路由器的两种工作模式 2 # 1.对于一个uri来说,什么是hash值? 井号及其后面的内容就是hash值. 3 # 2.hash值不会包括含在HTTP请求中,即:hash值不会带给 ...
- 一步一步学FRDM-KE02Z(一):IAR调试平台搭建以及OpenSDA两种工作模式设置
摘要:FRDM-KE02Z是飞思卡尔公司较为新的微控制器,学习和开发资料较少.从本篇开始会陆续介绍其相关的开发流程,并完成一个小型的工程项目.这是本系列博客的第一篇,主要介绍开发环境IAR for A ...
- (转载)关于Apache 的两种工作模式
今天在查看服务器的时候,发现服务器http请求数 每天增长越来越多,在优化集群服务器的时候,查看到Apache 的工作模式是prefork,于是想到了worker 模式, 想暂时的把当前运行模式改成w ...
- epoll的两种工作模式
epoll有两种模式,Edge Triggered(简称ET) 和 Level Triggered(简称LT).在採用这两种模式时要注意的是,假设採用ET模式,那么仅当状态发生变化时才会通知,而採用L ...
- apache常用的两种工作模式 prefork和worker
apache作为现今web服务器用的最广泛也是最稳定的开源服务器软件,其工作模式有许多中,目前主要有两种模式:prefork模式和worker模式 一.两种模式 prefork模式: prefork是 ...
- FTP两种工作模式:主动模式(Active FTP)和被动模式
在主动模式下,FTP客户端随机开启一个大于1024的端口N向服务器的21号端口发起连接,然后开放N+1号端口进行监听,并向服务器发出PORT N+1命令.服务器接收到命令后,会用其本地的FTP数据端口 ...
- Golang两种执行流程以及区别
Go语言的执行方式有两种,一种是编译后再执行,另一种直接go run执行. 一.先编译后执行 .go文件(源代码)--->go build指令把源代码编译(如果是windows下会编译出一个.e ...
- android(十五) FTP的两种工作模式
(一)PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链 当需要传送数据时,客户端在命令链路上用 PORT命令告诉服务器:“我打开了 ...
随机推荐
- CPU进程优先级
目录 一.简介 二.NICE值 三.优先级 四.实时进程 一.简介 进程优先级起作用的方式从发明以来基本没有什么变化,无论是只有一个cpu的时代,还是多核cpu时代,都是通过控制进程占用cpu时间的长 ...
- [IDEA] chapter_reader - idea看小说插件 idea阅读插件 idea摸鱼插件
目录 1. 简述: 2. 使用说明: 2.1 版本说明: 2.2 重要说明: 2.3 简单使用方法: 2.4 目前支持的网站有 (新↓): 2.5 菜单介绍: 2.6 快捷键设置及推荐: 2.7 在线 ...
- 【Azure Redis 缓存】Azure Cache for Redis 中如何快速查看慢指令情况(Slowlogs)
问题描述 当 Azure Redis 服务器负载过高的情况下,使用时就会遇见连接超时,命令超时,IO Socket超时等异常.为了能定位是那些因素引起的,可以参考微软官方文档( 管理 Azure Ca ...
- Linux中find命令与三剑客之grep和正则
昨日内容回顾 1.每个月的3号.5号和15号,且这天时周六时 执行 00 00 3,5,15 * 6 2.每天的3点到15点,每隔3分钟执行一次 */3 3-15 * * * 3.每周六早上2点半执行 ...
- Amazing!!CSS 也能实现极光?
在上次写完这篇文章 -- 巧用渐变实现高级感拉满的背景光动画 之后,文章下面的评论有同学留言,使用 CSS 可以实现极光吗? 像是这样: emmm,这有点难为人了.不过,最近我也尝试着去试了下,虽然不 ...
- response 返回js的alert()语句,中文乱码如何解决
response 返回js的alert()语句,中文乱码如何解决, 步骤1:在后台加上如下代码: response.setCharacterEncoding("utf-8"); r ...
- 网站高可用架构之BASE原理
BASE理论是eBay架构师提出的. BASE定理来源:是CAP中一致性和可用性的权衡结果,它来自大规模互联网分布式系统的总结,是基于CAP定理逐步演化而来的. BASE定理的核心思想:即使无法做到强 ...
- c++设计模式概述之组合(composite)
代码写的不够规范,目的是为了缩短代码篇幅, 实际中请不要这样做 1.概述 这里的组合,是将 部分组合到整体.所以, 用到的对象有: 部分.整体. 这里的例子,生活中可以类比厨房的筷筒: 里面放了筷子, ...
- 【LeetCode】746. Min Cost Climbing Stairs 解题报告(Python)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 动态规划 日期 题目地址:https://leetc ...
- How Many Sets I(zoj3556)
How Many Sets I Time Limit: 2 Seconds Memory Limit: 65536 KB Give a set S, |S| = n, then how ma ...