7.高级纹理

news2025/2/22 7:43:50

前面的基础纹理包括法线纹理、渐变纹理和遮罩纹理等。这些纹理都属于低纬(一维或二维)纹理。

立方体纹理(Cubemap)实现环境映射

渲染纹理(Render Texture)

程序纹理(Procedure Texture)

一、立方体纹理

立方体纹理(Cubemap)环境映射的一种实现方法。

环境映射可以模拟物体周围的环境,而使用了环境映射的物体可以看起来像镀了一层金属一样反射出周围的环境

立方体纹理:

一共包含6张图像,这些图像应对了一个立方体的6个面

立方体的每个面表示沿着世界空间下的轴向(上下左右前后)观察所得图像

如何对这种纹理采样?

  1. 提供一个三维纹理坐标,这个三维纹理坐标表示了我们在世界空间下的一个3D方向。
  2. 这个方向矢量从立方体的中心出发,当他向外部延申时就会和立方体的6个纹理之一发生相交
  3. 而采样得到的结果就是由该交点计算而来的

好处:

实现简单快速且得到的效果好。

缺点:

当场景中引入一个新物体、光源,或者物体发生移动时,就需要重新生成立方体纹理

立方体纹理也仅可以反射环境,但不能反射使用了该立方体纹理的物体本身、因为立方体不能模拟多次反射的结果

尽量对凸面体而不要对凹面体使用立方体纹理(凹面体会反射自身)

1.天空盒子

天空盒(Skybox):游戏中用于模拟背景的一种方法。用来模拟天空且时一个盒子。

在场景中使用天空盒,整个场景被包围在一个立方体内。立方体的每个面使用的技术就是立方体纹理映射技术

wrap Mode设置为Clamp

Tint Color:控制该材质的整体颜色

Exposure:调整天空盒亮度

Rotation:调整天空盒沿+y轴方向的选择角度

天空盒会应用于该场景中的所有摄像机,如果希望某些摄像机使用不同的天空盒,可以通过向该摄像机添加Skybox组件来覆盖掉之前的设置

Unity中,天空盒是在所有不透明物体渲染之后渲染的,而其背后使用的网格是一个立方体或者一个细分后的球体

2.创建用于环境映射的立方体纹理

环境映射:用于模拟出金属质感的材质

3.反射

4.折射

5.菲涅尔反射

二、渲染纹理

1.镜子效果

2.玻璃效果

3.渲染纹理 vs.GrabPass

三、程序纹理

1.Unity中实现简单的程序纹理

2.Unity的程序材质

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1796345.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

yum进阶

yum的主要的作用:依赖关系、自动安装、自动升级 实验一:网页版的形式做一个yum源 主:test1的ip192.168.10.20 作为网页版的yum源 1、下载httpd 开启httpd服务 Apache的服务器默认的访问地址/var/www/html/目录下 2、创建目录centos7 3…

OS复习笔记ch8-虚拟存储

接着我们之前学的页式管理和段式管理等传统的存储管理,我们接下来讲一下虚拟存储。 概念引入 如图所示,传统的存储管理存在一次性和驻留性,浪费了大量的内存空间,使得应用的并发度很低。 问题本质就是已有的内存容量不满足应用程…

Redis使用中的性能优化——搭建Redis的监测服务

大纲 环境安装配置Redis安装 安装配置redis_exporter编译运行 安装启动Prometheus创建用户下载并解压修改配置启动 安装启动grafana安装启动 测试参考资料 抛开场景和数据,谈论性能优化,就是纸上谈兵。这个系列我们将通过相关数据来展现常见的Mysql优化前…

vue3设置全局变量并获取 全局响应式变量 窗口大小

设置 js文件统一管理全局变量 方法1 app provide() 全局提供变量 通过inject()使用 方法2 app实例配置全局变量 获取 通过 getCurrentInstance.appContext.config.globalProperties.$innerWidth访问到 code import { ref } from vue export const useGlobalState () > {c…

uni-app预览pdf(适配多端)

前言 今天有个功能要在当前页面预览pdf,并且适配多端,研究了好久,也踩了好多坑,写个文章记一下,也给各位避避坑~ uni-app预览pdf 1.下载pdf.js 官方下载地址(有坑!待会儿说) 外部…

《编译原理》期末考试复习手写笔记+真题(一)第一、二、三章

目录 第一章 第二章考试题型: 第三章考试题型【词法分析】: 不会DFA-最小化分割法的看这里!!! 学习完前三章后,期末考试的前面两道大题可以做啦(除去第四章消除左递归※)&#…

20240606在RK3588的Android12下使用adb pull出现权限问题Permission denied

adb root adb remount 20240606在RK3588的Android12下使用adb pull出现权限问题Permission denied 2024/6/6 11:48 缘起:想从Toybrick的TB-RK3588的Android12开发板上通过adb pull获取刚刚生成的edid.bin,老是报告权限问题。 百度:adb: error…

course-nlp——7-seq2seq-translation

本文参考自https://github.com/fastai/course-nlp。 使用 RNN 进行翻译 此笔记本是根据 Sylvain Gugger 创建的笔记本修改而来的。 今天我们将处理翻译任务。我们将从法语翻译成英语,为了使任务规模保持在可控的范围内,我们将仅限于翻译问题。 此任务…

[线程与网络] 网络编程与通信原理(五): 深入理解网络层IP协议与数据链路层以太网协议

🌸个人主页:https://blog.csdn.net/2301_80050796?spm1000.2115.3001.5343 🏵️热门专栏:🍕 Collection与数据结构 (92平均质量分)https://blog.csdn.net/2301_80050796/category_12621348.html?spm1001.2014.3001.5482 🧀Java …

1-Maven-settings配置

1-Maven-settings配置 整理下Maven工具的使用。 【本地仓库、私服、镜像仓库、远程仓库、中央仓库】 本文基于阅读其他博客和对公司Maven配置的学习整理出来的。希望通过本此学习能对Maven有个整体性的掌控。 顺序:profile.repository > pom文件中的repository &…

小程序 UI 风格,独具匠心

小程序 UI 风格,独具匠心

iOS 之homebrew ruby cocoapods 安装

cocoapods安装需要ruby,更新ruby需要rvm,下载rvm需要gpg,下载gpg需要homebrew,所以安装顺序是homebrew->gpg->rvm->ruby-cocoapods Rvm 官网: RVM: Ruby Version Manager - RVM Ruby Version Manager - Docum…

04-240606Spark笔记

04-240606Spark笔记 1.行动算子-2 save相关算子: 格式: def saveAsTextFile(path: String): Unit def saveAsObjectFile(path: String): Unit def saveAsSequenceFile(path: String,codec: Option[Class[_ <: CompressionCodec]] None): Unit 例子: val rdd sc.makeR…

Next.js Tailwind CSS UI组件

摘要&#xff1a; 官网 今天公司使用到一个前端ui框架——Next.js Tailwind CSS UI组件&#xff01;这从头构建一个AI驱动的前端UI组件生成器&#xff0c;生成Next.js Tailwind CSS UI组件&#xff1a; 1、用Next.js、ts和Tailwind CSS构建UI组件生成器Web应用程序。 2、用Copi…

【MySQL】聊聊order by 是如何排序的

CREATE TABLE t (id int(11) NOT NULL,city varchar(16) NOT NULL,name varchar(16) NOT NULL,age int(11) NOT NULL,addr varchar(128) DEFAULT NULL,PRIMARY KEY (id),KEY city (city) ) ENGINEInnoDB;构建一个表结构&#xff0c;以及数据。 本篇主要来分析下order by是如何进…

前端 JS 经典:图片裁剪上传原理

前言&#xff1a;图片裁剪一般都是用户选择头像时用到&#xff0c;现在很多插件都可以满足这个功能&#xff0c;但是我们不仅要会用插件&#xff0c;还要自己懂的裁剪原理。 1. 流程 流程分为&#xff1a;1. 预览本地图片 2. 选择裁剪区域 3. 上传裁剪图像 2. 如何预览图片 …

作业06 递推算法1

作业&#xff1a; #include <iostream> using namespace std; int main(){long long a[110];short n;cin>>n;a[0]1;a[1]1;for(int i2;i<n;i){a[i]a[i-1]a[i-2];}cout<<a[n-1];return 0; } #include <iostream> using namespace std; int main(){lon…

【机器学习】机器学习与大模型在人工智能领域的融合应用与性能优化新探索

文章目录 引言机器学习与大模型的基本概念机器学习概述监督学习无监督学习强化学习 大模型概述GPT-3BERTResNetTransformer 机器学习与大模型的融合应用自然语言处理文本生成文本分类机器翻译 图像识别自动驾驶医学影像分析 语音识别智能助手语音转文字 大模型性能优化的新探索…

41【Aseprite 作图】粉红宫灯——拆解

1 宫灯轮廓 上面三角&#xff0c;下面3 3 3 &#xff08;粉色在后面&#xff0c;做轮廓&#xff09;&#xff0c;棕色在外面&#xff0c;看做是灯骨&#xff08;竖着更长&#xff09;&#xff1b;中间是横着做灯骨 尾部的彩带&#xff0c;下面粉色更浅&#xff0c;上面绿色更浅…

Eclipse添加C和C++编译成汇编文件的选项

在miscellaneous中添加assemble listing选项就可以生成汇编文件了