法线贴图可以实现什么样的3D效果

在线工具推荐: 3D数字孪生场景编辑器  -  GLTF/GLB材质纹理编辑器  -  3D模型在线转换  -  Three.js AI自动纹理开发包  -  YOLO 虚幻合成数据生成器  -  三维模型预览图生成器  -  3D模型语义搜索引擎

在 3D 建模中,曲面由多边形表示。照明计算是基于这些多边形的几何形状执行的,就像艺术家使用着色技术来模仿三维空间一样。这种方法非常有效;但是,它可能会占用大量计算量,从而限制了可能的整体细节水平。法线贴图通过修改光线与曲面的交互方式,在不改变基础几何体的情况下,提供了一种出色的轻量级解决方案。

法线贴图以纹理图像的形式存储有关表面的信息。通过在纹理中编码曲面法线,法线贴图可以模拟曲面细节的外观,例如凹凸、划痕、皱纹等,而不会增加以下几何体的复杂性。

法线贴图是在渲染期间使用法线贴图中修改后的表面法线计算的。由于这些计算的计算密集度较低,因此甚至可以实时完成高水平的细节,这使得法线贴图成为视频游戏开发人员使用的流行技术。

GLTF材质编辑器

法线贴图技术

总的来说,法线贴图是一种通用技术,任何 3D 艺术家和设计师都应该使用它来加速和改进他们的工作流程。

你会看到法线贴图不仅用于硬件约束极其重要的场景,如视频游戏,需要为玩家实时渲染场景,而且还用于计算机动画电影、建筑可视化和产品设计。

法线贴图不会影响对象的颜色,因此您会看到它最常用于对象表面不完全平坦或光滑的情况。公平地说,这意味着几乎每个 3D 模型都可以使用法线贴图来批准其真实感,包括磨损的皮革、凹凸不平的木纹、人体皮肤、织物等等。

GLTF材质编辑器

有几种基本工具和软件通常用于法线贴图。以下是其中的一些:

1. 3D 建模软件:使用 Blender、Maya、ZBrush 等工具创建将用于法线贴图的模型。有许多出色的软件解决方案,它们都带来了自己的建模和雕刻方法。

2. 纹理绘制软件:Substance 3D Painter 甚至 Adobe Photoshop 等软件可用于创建和编辑纹理贴图,包括法线贴图。

3.纹理贴图工具:GLTF 编辑器 -NSDT 是一款专门用于3D模型纹理贴图的工具,它支持3D模型各种材质纹理贴图的编辑修改,包括:颜色、粗糙度、金属度、贴图、顶点颜色、自发光贴图、透明贴图、凹凸贴图、法线贴图、位移贴图、粗糙贴图、金属贴图、光照贴图、透明度等。

4. 游戏引擎:虚幻引擎和 Unity 等游戏引擎内置了对法线贴图的支持。这些引擎提供了必要的工具和渲染功能,以利用法线贴图。它们在创建渲染和创建游戏体验时同样出色。

5. 着色器编程语言:了解 HLSL(高级着色语言)或 GLSL(OpenGL 着色语言)等着色器编程语言对于创建利用法线映射的自定义着色器很有用。这些语言允许开发人员定义光照如何与法线贴图和其他纹理贴图交互,以实现惊人的视觉效果。

此列表可能并不包罗万象,但它为创作者提供了一个很好的起点,可以对法线贴图以及如何在实时渲染环境中实现它们有基本的了解。

用于创建 3D 纹理的法线贴图过程

GLTF材质编辑器

法线贴图软件生成用于 3D 设计的叶子

GLTF材质编辑器

法线贴图与凹凸贴图的区别

法线贴图和凹凸贴图是用于向 3D 模型添加曲面细节的类似技术。它们在表示和操作曲面法线的方式上有所不同。以下是您需要了解的有关它们差异的所有信息。

凹凸贴图

凹凸贴图也可以称为高度贴图或位移贴图。它们存储表示曲面变化的高度信息。它们使用灰度图像,其中较亮或较暗的值表示表面的较高或较低区域。凹凸贴图通过根据这些灰度值扰动曲面法线,在渲染时修改模型的几何图形。因此,虽然这种技术在渲染过程中光线与模型交互时会产生表面细节的错觉,但凹凸贴图根本不存储表面法线,只存储高度信息。

法线贴图

法线贴图使用 RGB 图像存储显式表面法线信息,其中每个颜色通道表示每个纹素处表面法线矢量的 X、Y 和 Z 分量。法线贴图捕获了有关曲面方向的更多信息。法线贴图不会影响模型本身的几何体,但仍会修改光线在其周围的交互方式。

与凹凸贴图相比,法线贴图提供了最准确的结果,仅捕获高度变化之外的表面细节。

法线贴图的优缺点。

总而言之,法线贴图有几个优点和一些潜在的缺点。以下是需要考虑的法线映射的一些优点和缺点:

法线贴图的优点

1. 逼真的表面细节:法线贴图允许在不增加几何复杂性的情况下添加复杂的表面细节。

2. 效率:法线映射是一种计算效率高的技术,尤其是与增加模型的多边形数量以实现表面细节相比。

3. 减少内存需求:法线贴图以纹理格式存储信息,与存储几何体信息相比,纹理格式通常使用更少的内存。

4.可重用性:法线贴图可以很容易地应用于不同的模型,允许美术师和开发人员在多个资产中重用它们。这样可以节省时间、精力和产品的最终尺寸。

5. 交互式照明效果:法线贴图增强了光线与模型的交互,允许动态 3D 照明效果,例如镜面高光、阴影变化和更准确的反射。

法线映射的缺点

1. 有限的几何体改变:法线贴图只影响曲面细节的外观,不能修改几何体。它们创造的错觉通常是有用的,尽管有时当需要实际修改几何形状时,可能需要其他技术。

2. 创建和编辑:创建高质量的法线贴图可能很困难,需要专业知识和软件。由于数据的复杂性,编辑法线贴图可能很困难。

3. 纹理空间限制:法线贴图需要额外的纹理空间,因为它们通常存储为 RGB 图像。这可能会影响整体内存使用率,在某些情况下可能需要仔细优化。

4. 切线空间限制:法线贴图通常在切线空间中定义,这意味着它们取决于模型的方向和 UV 坐标。当将相同的法线贴图应用于具有不同UV布局或方向的模型时,这有时会导致视觉伪影。

尽管存在一些限制,但法线贴图是实时提高 3D 模型视觉质量和真实感的最有效技术。法线贴图在性能和视觉保真度之间实现了健康的平衡,使其成为 3D 纹理和渲染的宝贵工具。

使用法线贴图的时机

当需要实时渲染时,需要法线贴图来保持场景中的低多边形计数,同时保持高视觉保真度。通常用于在不使用更多多边形的情况下添加细节。此技术的常见用途是通过从高多边形模型或高度贴图生成法线贴图,从而大大增强低多边形模型的外观和细节。法线贴图用于重新细化简化的网格。

转载:法线贴图可以实现什么样的3D效果 (mvrlink.com) 

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

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

相关文章

4《数据结构》

文章目录 绪论逻辑结构存储结构【物理结构】顺序和链式存储区别顺序表和数组区别数组和链表的区别链表结点概念链表为空条件链表文章http://t.csdnimg.cn/dssVK二叉树B树B树【MYSQL索引默认数据结构】B树和B树区别冒泡排序插排选排快排 绪论 数据结构:研究非数值计…

【计算机算法设计与分析】n皇后问题(C++_回溯法)

文章目录 题目描述测试样例算法原理算法实现参考资料 题目描述 在nxn格的棋盘上放置彼此不受攻击的n格皇后。按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。n后问题等价于在nxn格的棋盘上放置n个皇后,任何2个皇后不放在同…

《掌握需求优先级排序,成功项目从此起步》

需求优先级排序是软件开发过程中至关重要的一环。通过合理的需求优先级排序,可以更好地把握项目进度,避免在后期因为需求的变更而造成项目延期或成本超支等问题。下面,本文将从需求的角度出发,探讨如何进行需求优先级排序。 一、…

国产服务器操作系统PXE安装脚本 可重复执行(rc08版本)

执行效果如下: #!/bin/bash #Date:2023/12/25 #Func:一键部署pxe服务器 #Author:Zhanghaodong #Version:2023.12.25.05 #Note:仅适用x86架构uefi安装 # 1.此脚本可多次重复执行。 # 2.如遇到某个服务异常退出,检查响应状态码排错后&#xff0c…

VINS-MONO拓展2----更快地makeHessian矩阵

1. 目标 完成大作业T2 作业提示: 多线程方法主要包括以下几种(参考博客): MPI(多主机多线程开发),OpenMP(为单主机多线程开发而设计)SSE(主要增强CPU浮点运算的能力)CUDAStream processing, 之前已经了解过std::thread和pthread,拓展1…

工作中人员离岗识别摄像机

工作中人员离岗识别摄像机是一种基于人工智能技术的智能监控设备,能够实时识别员工离岗状态并进行记录。这种摄像机通常配备了高清摄像头、深度学习算法和数据处理系统,可以精准地监测员工的行为,提高企业的管理效率和安全性。 工作中人员离岗…

在Go语言中处理HTTP请求中的Cookie

在Web开发中,Cookie是一种常用的技术,用于在客户端存储数据,并在随后的请求中发送回服务器。Go语言的标准库提供了强大的支持来处理HTTP请求中的Cookie。 首先,让我们了解如何在Go语言中设置Cookie。以下是一个简单的示例&#x…

MySQL基础笔记(4)DQL数据查询语句

DQL用于查找数据库中存放的记录~ 目录 一.语法 二.基础查询 1.查询多个字段 2.设置别名 3.去除重复记录 三.条件查询 1.基础语法 2.常见条件 四.分组查询 1.聚合函数 2.语法 五.排序查询 六.分页查询 附注:DQL执行顺序 1.编写顺序 2.执行顺序 ​​​…

安装阿里云CLI之配置阿里云凭证信息

有时候需要再主机上通过 OpenAPI 的调用访问阿里云,并完成控制,此时就需要在服务器上安装阿里云CLI,并完成账号的设置。 1. 登录阿里云创建账号 1.1 点击阿里云头像 ——》 控制访问 ——》创建一个拥有DNS权限的用户 这个用户不用太多权限…

小程序购物商城搭建开发分析

小程序商城作为现代商业模式的重要组成部分,具有巨大的发展潜力和商业价值。通过搭建一个功能完善、用户友好的小程序商城,您将能够提供便捷的购物体验,吸引更多的用户并实现商业增长。在进行小程序商城开发搭建之前,我们需要对项…

抽象工厂模式(Abstract Factory)

文章目录 定义与类型适用场景优点缺点产品等级结构与产品族抽象工厂代码示例 定义与类型 定义:抽象工厂模式提供一个创建一系列相关或相互依赖对象的接口,无须指定它们具体的类。 类型:创建型。 适用场景 客户端(应用层&#…

AI提示工程指南

简述: 当今互联网行业对于AI提示工程的需求日益增长,而《AI提示工程指南》是一本旨在满足这种需求的宝贵指南。本指南由一位对AI提示工程充满热情并自学而来的互联网从业者撰写,旨在为行业人员提供一个全面、易懂的参考手册。 这本指南将引领您踏上AI提示工程的旅程,深入探…

DevOps(3)

目录 11.描述root账户? 12.如何在发出命令时打开命令提示符? 14.Linux系统下交换分区的典型大小是多少? 15.什么是符号链接? 11.描述root账户? root账户就像一个系统管理员账户,允许你完全控制系统。 …

经常戴耳机有什么危害呢?一文读懂长时间使用耳机都有哪些危害

经常佩戴耳机可能会出现滋生细菌、引起炎症反应、损伤听力等危害。 1、滋生细菌:长时间戴耳机,会导致耳道堵塞,从而导致耳内潮湿,容易滋生细菌。 2、引起炎症反应:长时间戴耳机,会对耳道口造成机械性的压…

多线程和JVM

一,多线程实现的四种方式 1. 实现Runnable接口 普通实现: public class MyRunnable implements Runnable {Overridepublic void run() {System.out.println("线程执行中...");} }public class Main {public static void main(String[] arg…

vmware workstation的三种网络模式通俗理解

一、前言 workstations想必很多童鞋都在用,经常会用来在本机创建不同的虚拟机来做各种测试,那么对于它支持的网络模式,在不同的测试场景下应该用哪种网络模式,你需要做下了解,以便可以愉快的继续测(搬&…

全年重磅!《2023年度TikTok电商行业趋势白皮书》发布!

2023年,似乎所有的东西都往相反的方向发展。疫情消退后经济没有明朗,局部冲突愈演愈烈没有消停,打工人辛苦工作工资没有涨,疯狂买买买的双十一也开始变得冷清... 似乎是不友好的一年,那你有听到“增长的声音”吗&…

uniCloud 云函数

相对于云函数,官方更推荐使用 云对象 新建云函数 编辑云函数 uniCloud-aliyun/cloudfunctions/hello_func/index.js use strict; exports.main async (event, context) > {let {name} eventreturn 你好,${name}! };云函数接收的参数从event中解构获…

ARM+FPGA多通道信号采集与处理模块开发方案

多通道信号采集与处理模块开发方案 开发一套多通道光电信号采集与处理模块,实现对64通道传感信号采集、处理与存储功能。主要包括数据采集与处理电路,系统控制软件,信号处理算法实现及数据存储。其中包括8通道ADC,每一路ADC采样数…

CTFHub | 存储型

0x00 前言 CTFHub 专注网络安全、信息安全、白帽子技术的在线学习,实训平台。提供优质的赛事及学习服务,拥有完善的题目环境及配套 writeup ,降低 CTF 学习入门门槛,快速帮助选手成长,跟随主流比赛潮流。 0x01 题目描述…