一、导入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,实现以下方法:

  • OnPreprocessTexture

  • OnPreprocessModel

  • OnPreprocessAnimation

  • OnPreprocessAudio

导入资源可以修改格式,压缩大小,禁用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两种工作流程的更多相关文章

  1. FTP协议的两种工作模式简单解析!

    转载自百度百科:http://baike.baidu.com/link?url=KaBZmDM4IZ2v56MyoOnpjqKr0gADv_BRbgjlscYdyvh3-zDwINOHNPSi9Jlp ...

  2. Vue路由器的hash和history两种工作模式 && Vue项目编译部署

    1 # 一.Vue路由器的两种工作模式 2 # 1.对于一个uri来说,什么是hash值? 井号及其后面的内容就是hash值. 3 # 2.hash值不会包括含在HTTP请求中,即:hash值不会带给 ...

  3. 一步一步学FRDM-KE02Z(一):IAR调试平台搭建以及OpenSDA两种工作模式设置

    摘要:FRDM-KE02Z是飞思卡尔公司较为新的微控制器,学习和开发资料较少.从本篇开始会陆续介绍其相关的开发流程,并完成一个小型的工程项目.这是本系列博客的第一篇,主要介绍开发环境IAR for A ...

  4. (转载)关于Apache 的两种工作模式

    今天在查看服务器的时候,发现服务器http请求数 每天增长越来越多,在优化集群服务器的时候,查看到Apache 的工作模式是prefork,于是想到了worker 模式, 想暂时的把当前运行模式改成w ...

  5. epoll的两种工作模式

    epoll有两种模式,Edge Triggered(简称ET) 和 Level Triggered(简称LT).在採用这两种模式时要注意的是,假设採用ET模式,那么仅当状态发生变化时才会通知,而採用L ...

  6. apache常用的两种工作模式 prefork和worker

    apache作为现今web服务器用的最广泛也是最稳定的开源服务器软件,其工作模式有许多中,目前主要有两种模式:prefork模式和worker模式 一.两种模式 prefork模式: prefork是 ...

  7. FTP两种工作模式:主动模式(Active FTP)和被动模式

    在主动模式下,FTP客户端随机开启一个大于1024的端口N向服务器的21号端口发起连接,然后开放N+1号端口进行监听,并向服务器发出PORT N+1命令.服务器接收到命令后,会用其本地的FTP数据端口 ...

  8. Golang两种执行流程以及区别

    Go语言的执行方式有两种,一种是编译后再执行,另一种直接go run执行. 一.先编译后执行 .go文件(源代码)--->go build指令把源代码编译(如果是windows下会编译出一个.e ...

  9. android(十五) FTP的两种工作模式

    (一)PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链 当需要传送数据时,客户端在命令链路上用 PORT命令告诉服务器:“我打开了 ...

随机推荐

  1. aha

    欢迎使用 MWeb MWeb 是专业的 Markdown 写作.记笔记.静态博客生成软件,目前已支持 Mac,iPad 和 iPhone.MWeb 有以下特色: 软件本身: 使用原生的 macOS 技 ...

  2. mysql联合索引阻碍修改列数据类型:BLOB/TEXT column 'name' used in key specification without a key length

    今天在项目中mysql表中有一个字段数据类型为varchar,长度不够需要换为text类型 当时表是已经存在的表, CREATE TABLE `table_aaa` ( `id` int NOT NU ...

  3. myeclipse 安装spket

    myeclipse 安装spket为以下步骤 请注意:1.myPlugins为新建的文件夹 2.spket-1.6.23为新建的文件 如上步骤为安装spket,那么如下的步骤为让myeclipse里的 ...

  4. python dumps和loads

    dumps和loads的使用 import json dict = {'姓名': 'supermao','年龄': '19','爱好': '未知', '地区': '武汉'} string=json.d ...

  5. JAVA微信支付——微信公众号内支付 代码

    官方文档:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_1 微信PC二维码支付方式参考:https://www.cnblogs. ...

  6. 【LeetCode】Largest Number 解题报告

    [LeetCode]Largest Number 解题报告 标签(空格分隔): LeetCode 题目地址:https://leetcode.com/problems/largest-number/# ...

  7. 【LeetCode】764. Largest Plus Sign 解题报告(Python)

    [LeetCode]764. Largest Plus Sign 解题报告(Python) 作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn ...

  8. Travelling(hdu3001)

    Travelling Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  9. 教学日志:javaSE-面向对象2

    一.局部变量和成员变量 package class4.oop1; /** * @Auther: Yu Panpan * @Date: 2021/12/10 - 12 - 10 - 14:47 * @D ...

  10. uniapp上传图片后台返回url后放入image中图片不显示问题

    原因:后台返回路径问题后台返回地址斜杠为 \ 我们需要的是 /  如下后台返回的地址导致转义了 修改后可以显示