three.js - 置换贴图(displacementMap)、凹凸贴图(bumpMap)、法线贴图(normalMap)

news2025/2/22 2:02:16

这就是个灰度图

在这里插入图片描述

瞅瞅下面的贴图们,加深一下印象吧

在这里插入图片描述

说一下灰度图

灰度图中,

  • 黑色:代表最低的深度(或最低的置换)

  • 白色:代表最高的深度(或最高的置换)

  • 中间的灰度值,则代表不同程度的凹凸


置换贴图(displacementMap)

置换贴图:displacementMap

  • 置换贴图,通常使用灰度图作为输入,来模拟表面的凹凸效果。

  • 置换贴图,会实际修改物体的几何形状,通过移动顶点来创建凹凸效果,

  • 置换贴图这种效果,通常是:让点的位置,沿面法线移动一个贴图中定义的距离。


凹凸贴图(bumpMap)

凹凸贴图:bumpMap

  • 凹凸贴图,使用灰度图来模拟表面的凹凸效果,

    但是,它并不改变物体的实际几何形状,

    而是,它通过修改表面的法线向量,来产生视觉上的凹凸感。

  • 凹凸贴图,是一种更轻量级的技术,因为它不需要修改物体的几何形状。

    因此,它在性能上通常比置换贴图更优。

  • 凹凸实际上不会影响对象的几何形状,只影响光照。如果定义了法线贴图,则将忽略该贴图。


置换、凹凸 做一下对比

  • 置换贴图、凹凸贴图,都使用灰度图作为输入,来模拟表面的凹凸效果。

  • 置换贴图,通过,实际修改物体的几何形状来创建凹凸效果
    凹凸贴图,通过,修改表面的法线向量来产生视觉上的凹凸感

  • 置换贴图,通常需要更多的计算资源,而凹凸贴图在性能上更优


法线贴图(normalMap)

  • 法线贴图,用于模拟物体表面微小凹凸细节的高度信息的技术

  • 法线贴图,包含了表面法线方向的信息,可以让光照在物体表面产生更加生动的变化和阴影效果,从而增强物体表面的真实感、立体感。

  • 法线贴图,不会改变曲面的实际形状,只会改变光照。

  • 渲染效果:在渲染场景时,光照效果会根据法线贴图中的法线信息在物体表面产生细微的变化,从而使得物体表面的凹凸细节更加清晰和真实

这种就是 法线贴图
在这里插入图片描述

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

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

相关文章

链在一起联机存档同步教程 教你如何学会链在一起联机同存档

双人成行,四人更行了,说的就是新游戏链在一起,多人合作冒险游戏,一个是和兄弟四人一起玩的游戏,游戏中四个人被铁链绑在一起,大型节目之好兄弟到底谁是脑瘫正在上演,甚至有些玩家感觉链子牵的不…

SAP消息号 VF028

客户在VF11冲销发票之后,没有生成正式的财务凭证,然后VF02的时候出现如下报错: “自动清算出具发票凭证XXXXXXX(被冲销凭证号)且不可能取消凭证XXXXXXX(冲销凭证号) 原因:销售订单2…

归并排序和计数排序

目录 1.归并排序1.1递归1.1基本思想1.2算法描述1.3画图解释1.4代码实现 1.2非递归 2.计数排序2.1基本思想2.2算法描述3.画图解释 1.归并排序 1.1递归 1.1基本思想 归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer&#xf…

毫米波移动通信系统中的波束赋形—基于AOD估计的波束赋形

基于AOD估计的波束赋形依据压缩感知理论,利用毫米波信道的稀疏特性[18][19],提出对信号的AOA和AOD进行估计,根据估计方向进行波束赋形。由于毫米波信道的稀疏特性,假设有L条多径分量时,公式1中的信道矩阵H可以表示为下…

软件质量保证与测试

目录 一、测试流程 二、测试用例 2.1概念 2.2用例编写格式 三、设计测试点 3.1等价类 3.1.1概念 3.1.2案例 3.1.3适用场景 3.1.4执行用例 3.2边界值 3.2.1概念 3.2.2案例 3.2.3使用场景 3.3判定表 3.3.1判定表使用原因 3.3.2概念 3.3.3案例 3.3.4使用场景 …

宏定义__FILE__,__LINE__,__VA_ARGS__等介绍与应用

ANSIC标准定义中常见的预定义宏 __LINE__:在源代码中插入当前源代码行号; __FILE__:在源代码中插入当前源代码路径及文件名; __DATE__:在源代码中插入当前编译日期; __TIME__:在源代码中插入…

全域运营系统是如何做好全平台运营?

当前,全域运营的热度持续上涨,多篇分析全域运营平台优缺点的帖子也在多个创业者交流群中风靡一时。综合来看,在众多的全域运营平台中,属后面我们说的这家全域运营平台的分析最为详尽。 其中,对于我们的全域运营平台的优…

Diffusion Mamba:用于CT到MRI转换的Mamba扩散模型

Diffusion Mamba:用于CT到MRI转换的Mamba扩散模型 提出背景拆解左侧:整体框架中间:Mamba块的细节右侧:螺旋扫描的细节 提出背景 论文:https://arxiv.org/pdf/2406.15910 代码:https://github.com/wongzbb…

macOS Sequoia 15 beta 2 (24A5279h) Boot ISO 原版可引导镜像下载 (iPhone Mirroring 现已支持)

macOS Sequoia 15 beta 2 (24A5279h) Boot ISO 原版可引导镜像下载 (iPhone Mirroring 现已支持) iPhone 镜像、Safari 浏览器重大更新、备受瞩目的游戏和 Apple Intelligence 等众多全新功能令 Mac 使用体验再升级 请访问原文链接:https://sysin.org/blog/macOS-…

有没有品质高的开放式蓝牙耳机推荐,这几款开放式耳机非常值得

随着科技的发展,越来越多的人选择开放式蓝牙耳机,对比传统的耳机,开放式蓝牙耳机可以提供更加自然的听觉体验,减少外部环境隔绝感,增强安全性,透气设计舒适度更高,也更加的干净卫生。深受运动爱…

如何挑选护眼灯?一分钟带你了解挑选护眼灯的六大准则!

小时候,对正确用眼知识一无所知,也不明白何种光线环境对眼睛最为友善,结果如今的近视度数已濒临千度大关。虽然早已习惯佩戴眼镜的生活,但近视所带来的诸多不便仍旧在日常生活中无处不在。因此,对于家中孩子的视力健康…

echarts+vue2实战(二)

目录 一、WebSocket【双向通信】的使用 1.1、前端 1.2、后端 二、前端组件的合并与优化 三、全屏切换 3.1、单页面切换 3.2、同页面多端联动 四、主题切换 4.1、单页面切换 4.2、同页面多端联动 一、WebSocket【双向通信】的使用 1.1、前端 在utils文件夹里创建soc…

【漏洞复现】华测监测预警系统——SQL注入漏洞

声明:本文档或演示材料仅供教育和教学目的使用,任何个人或组织使用本文档中的信息进行非法活动,均与本文档的作者或发布者无关。 文章目录 漏洞描述漏洞复现测试工具 漏洞描述 华测监测预警系统2.2版本存在sql注入,UserEdit接口S…

用构造函数为对象的数据成员实现输入和输出时间

在C程序中,对象的初始化是一个不可缺少的重要问题。不应该让程序员在这个问题上花过多的精力,C在类的设计中提供了较好的处理方法。 为了解决这个问题,C提供了构造函数(constructor)来处理对象的初始化。构造函…

【前端】HTML+CSS复习记录【1】

文章目录 前言一、p、br(段落、换行)二、短语标签(用来呈现为被强调的文本)三、sub、sup(下标、上标)四、b(加粗文本)五、块级元素与行内元素六、元素嵌套七、html注释系列文章目录 …

axios全局封装AbortController取消重复请求

为什么? 问题:为什么axios要配置AbortController?防抖节流不行吗? 分析: 防抖节流本质上是用延时器来操作请求的。防抖是判断延时器是否存在,如果存在,清除延时器,重新开启一个延…

【JavaEE】浅谈线程(二)

线程 线程的常见属性 线程属性可以通过下面的表格查看。 •ID 是线程的唯⼀标识,不同线程不会重复 • 名称是各种调试⼯具⽤到(如jconsoloe) • 状态表示线程当前所处的⼀个情况,下⾯我们会进⼀步说明 • 优先级高的线程理论上来…

从公共仓库拉取推送的镜像并启动_将镜像内部目录挂载到外部目录使用_从镜像中复制文件到本机目录_从本机目录复制文件到镜像中---分布式云原生部署架构搭建010

然后我们再去找一个机器 docker ps docker rm -f 0ab docker images docker rmi guignginx 把这个机器的之前的这个镜像,在运行的 和 之前的都删除掉 然后我们去仓库中,拉取我们刚刚推送的 可以看到右边是命令 docker pull leifengyang/guignginx:v1.0 然后再来看总结命…

Unity踩坑记录

1. 如果同时在父物体和子物体上挂载BoxCollider&#xff0c;那么当使用&#xff1a; private void OnTriggerEnter2D(Collider2D collision){if (collision.CompareTag("CardGroup")){_intersectCardGroups.Add(collision.GetComponent<CardGroup>());}} 来判…

基于Java微信小程序民宿短租系统设计和实现(源码+LW+调试文档+讲解等)

&#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN作者、博客专家、全栈领域优质创作者&#xff0c;博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌&#x1f497; &#x1f31f;文末获取源码数据库&#x1f31f;感兴趣的可以先收藏起来&#xff0c;还…