了解什么是UV纹理?

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

什么是UV?

UV 是与几何图形的顶点信息相对应的二维纹理坐标。UV 至关重要,因为它们提供了表面网格与图像纹理如何应用于该表面之间的联系。它们基本上是控制纹理上哪些像素对应于 3D 网格上的哪个顶点的标记点。它们在雕刻中也很重要。

为什么UV映射很重要?

没有UV贴图的布局失真

默认情况下,大多数 3D 应用程序将在最初创建网格时创建自动 UV 布局。但是,如果您将角色头部的纹理直接拖放到 3D 模型上,您很可能会看到非常不理想的结果。这是因为在建模过程中,通常不会考虑 UV,因此,2D 图像无法按照您期望看到的方式环绕 3D 对象。

模型完成后,为了正确地设置模型纹理,您需要开始布置 UV 的过程(通常称为 UV 贴图)。这基本上是创建 3D 对象的 2D 表示的过程。想象一下,您的模型展开并展平为平面 2D 图像。自然接缝会出现在哪里?在3D模型上,哪里需要最详细的细节?这些是您在创建UV布局时需要考虑的事项类型。

UV 贴图的工作原理

UV贴图在实际应用中的样子

每个 3D 应用程序都有一个 UV 编辑器,您可以使用它来展开和编辑模型的 UV。根据您的 3D 应用程序,3D 模型上的每个面或多边形都与 UV 贴图上的面相关联。UV贴图是一项关键技能,需要掌握在表面上获得准确的纹理。

UV的实际创建是通过投影技术完成的。可以把它想象成一台投影仪在屏幕上放映电影。概念是相同的,只是在 3D 应用程序中,通常有几种不同的 UV 投影类型可供您使用。这些基于简单的几何形状,在开始为单个对象布局 UV 时,通常是一个很好的起点。

三种类型的UV贴图

以下是三种类型的UV贴图和示例:
  1. 球面图
  2. 圆柱形地图
  3. 平面图

请注意,虽然这些投影类型很棒,但它们通常不是每个 UV 布局的多合一解决方案。一旦你开始创建复杂的网格,你很快就会发现,单个平面或圆柱面贴图根本无法创建所需的结果。

幸运的是,网格上的每个面都可以应用自己的投影,并且 UV 本身可以在投影后进行广泛的操作和编辑。这确实可以让您精确控制 UV 的外观,进而控制最终 2D 纹理将如何应用于 3D 模型。

球面图

如果 3D 对象是球形的,则可以对其应用球面投影。这将创建基于缠绕在网格周围的球形的 UV。

圆柱图

圆柱映射基于圆柱投影形状为 3D 对象创建 UV。这对于可以完全封闭且在圆柱体内可见的物体非常有用。所以像胳膊或腿一样的东西。

平面图

平面贴图通过平面将 UV 投影到网格上。此投影类型最适合相对平坦的对象。如果模型形式非常复杂,则平面投影可能会产生重叠且看起来失真的 UV。因此,平面图应该用于非常简单的形状。

处理接缝

UV 贴图中的接缝

在为 3D 对象布置 UV 时,纹理上总会有接缝,因此请计划好接缝的位置。寻找它们可以隐藏或不太可能在 3D 模型上可见的位置。您还可以使用 3D 应用程序中的绘画工具直接在纹理的接缝上绘画。

在 UV 编辑器中正确布局 UV 后,可以使用 UV 快照工具或渲染 UV 工具创建 UV 的快照(根据 3D 应用程序的不同,其名称会略有不同)。基本上,这个工具会拍摄UV布局的照片,并将其保存为您想要的图像格式,以便您可以将其直接导入到您喜欢的2D绘画工具中。这为您提供了一个指南,以查看您在 3D 模型上绘画的位置。

自动映射

自动映射将对象分离到 UV 外壳中

在大多数 3D 应用程序中,都有一个自动映射投影工具。自动映射通过尝试从多个平面投影来找到最佳的 UV 放置,从而为网格创建 UV。当您具有更复杂的形状,其中基本投影不会产生有用的 UV 时,这很有用。通常仍然需要手动编辑 UV,但自动映射是一个很好的起点。

UV外壳

重叠的UV外壳分离

与它们所代表的几何图形一样,UV 点可以连接在一起以形成更大的形状,在 Maya 中称为 UV 外壳,在 Blender 中称为 UV 岛,在 3ds Max 中称为 UV 群集。尽管它们在不同的应用程序中有不同的名称,但它们服务于一个共同的目的。

通常,在处理这些 shell 时,其中一些 shell 可能会在 UV 编辑器中重叠。如果发生这种情况,纹理将重复出现。除非有特殊需要,就像游戏纹理有时一样,否则通常应避免重叠的UV外壳。

UV映射软件解决方案

在 UV 布局中创建的图像

为了帮助您完成纹理和UV布局过程,有一些程序可以帮助加快您的工作流程。 GLTF 编辑器 -NSDT是一款专为 3D 模型绘制纹理而设计的应用程序,不仅可以设置3D模型纹理贴图,还可以设置模型的几何原点、以及对有相同材质属性的mesh进行合并,实现模型轻量化,是一款不可多得的实用型在线模型编辑工具。

转载:了解什么是UV纹理? (mvrlink.com)

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

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

相关文章

温和去油去黑头,只需敷上一刻钟的泥膜就够了

冬季天气干燥,很多朋友脸部更容易出油,连带着黑头也变多了。这是因为干燥的环境会刺激皮脂腺分泌,导致皮肤油脂分泌过多,容易堵塞毛孔形成黑头。因此,在冬季特别需要注意控油去黑头的工作。 控油去黑头需要清洁毛孔&am…

Linux学习(1):目录结构、编辑器和用户管理

Linux学习(1):目录结构、编辑器和用户管理 1 Linux目录结构2 vi和vim编辑器2.1 快捷键练习 3 用户管理3.1 添加用户3.2 删除用户即主目录3.3 切换用户 4 用户组 1 Linux目录结构 在linux世界里,一切皆为文件。 linux目录结构&a…

软件测试|PyQt5实战教程(一)安装与环境配置

简介 我们之前介绍过使用tkinter创建图形用户界面(GUI)应用程序,现在我们来介绍另外一个用于创建GUI的神器——pyQt5,它可以用于创建跨平台的桌面应用程序。PyQt5 实现了一个 Python模块集,有 620 个类,60…

软件测试|如何使用Python取句中中英文内容

简介 提取句子中的中英文内容在自然语言处理中是一个常见任务,通常用于文本处理、机器翻译和语言学研究。本文将详细介绍如何使用 Python 提取句子中的中英文内容,包括准备工作、选择合适的库、编写代码示例和演示示例。 准备工作 我们可以使用Python…

Linux系统SSH远程管理服务概述

目录 一.SSH协议 1.定义 2.优点 (1)加密 (2)压缩 3.SSH的客户端与服务端 (1)客户端 (2)服务端 4.原理 5.实验:使用ssh远程登录 二.OpenSSH服务器 1.概念 2.…

【Linux】之搭建 PostgreSQL 环境

前言 在 Linux 系统下安装 PostgreSQL,可以选择快捷方便的 Docker 安装,但正常的服务器都是直接原生安装的,所以,这里我将讲解如何正常安装 PostgreSQL 以及安装之后的一些配置。如果想了解 Docker 安装的话,可以查看我…

软件测试|Pydantic BaseModel使用详解

简介 当我们在Python中编写应用程序时,通常需要处理和验证数据。Pydantic 是一个流行的库,它可以帮助我们定义数据模型并自动进行数据验证。在Pydantic中,BaseModel是一个核心概念,它用于定义数据模型和验证输入数据。在这篇文章…

【管理篇 / 升级】❀ 13. FortiOS 7.4固件升级新规则 ❀ FortiGate 防火墙

【简介】飞塔防火墙的固件升级一直是所有厂家中最好的。只要有注册官方帐号,有注册设备,并且只要有一台设备在服务期内,即可下载所有型号的所有版本的固件。即使其它设备服务期已过,也可以通过固件文件手动升级,避免防…

VMware安装CentOS7虚拟机

VMware 安装 获取 VMware 安装包 下载地址:链接:https://pan.baidu.com/s/1ELR5NZa7rO6YVplZ1IUigw?pwdplz3 提取码:plz3 包括:当然,也可以自己去别的地方下载,WMware 版本都差不多,现在用的比…

Vulnhub-DC1

前言 一个比较简单的实战靶场,官方要求是找到/root下的flag,所以直接提权即可。但对于学习和训练来说还是太简略了,在打靶场的时候还是全面一些较好。 本次靶场实战涉及信息收集、漏洞查找与利用、getshell、数据库渗透、密码破解、linux提…

创建mysql普通用户

一、创建mysql普通用户的原因: 权限控制:MySQL的权限系统允许您为每个用户分配特定的权限。通过创建普通用户,您可以根据需要为每个用户分配特定的数据库和表权限,而不是将所有权限授予一个全局管理员用户。这有助于提高数据库的…

[Docker] Docker为什么出现

Docker为什么出现 一款产品: 开发–上线 -->两套环境 | 应用配置 开发即运维! 环境配置十分麻烦,每一个机器都要部署环境(Redis, ES, Hadoop) 费时费力 项目带上配置环境安装打包。 传统: 开发jar&…

Python自动化测试框架【生成测试报告】

如何才能让用例自动运行完之后,生成一张直观可看易懂的测试报告呢? 小编使用的是unittest的一个扩展HTMLTestRunner 环境准备 使用之前,我们需要下载HTMLTestRunner.py文件 点击HTMLTestRunner后进入的是一个写满代码的网页,小…

三、GCC编译:链接

代码准备 main.c extern int shared; extern void func(int *a, int *b); int main(){int a 100;func(&a, &shared);return 0; }func.c int shared 1; int tmp 0; void func(int *a, int *b){tmp *a;*a *b;*b tmp; }静态链接 编译 gcc -static -fno-stack-p…

SpringBoot懒加载

什么是懒加载 懒加载是一种优化技术,它延迟加载或按需加载资源,以减少初始加载时间或提高性能。在不同的上下文中,懒加载有不同的应用和含义。在web开发中,懒加载通常指的是延迟加载图片数据。在长网页或应用中,如果图…

ruoyi后台管理系统部署-4-安装nginx

yum 安装 ngix 1.24 yum 官方源安装: # 1. 需要预先安装 yum-utils sudo yum install yum-utils # 2. 配置yum repo touch /etc/yum.repos.d/nginx.repongix.repo: [nginx-stable] namenginx stable repo baseurlhttp://nginx.org/packages/centos/$releasever/$…

Mac安装nvm以及使用nvm安装node

1. 安装nvm命令 git clone https://gitee.com/mirrors/nvm.git ~/.nvm && cd ~/.nvm && git checkout git describe --abbrev0 --tags2. 配置环境变量 vi ~/.bash_profileexport NVM_DIR"$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] &&…

【书生·浦语】大模型实战营——第五课作业

教程文档:https://github.com/InternLM/tutorial/blob/vansin-patch-4/lmdeploy/lmdeploy.md#tritonserver-%E6%9C%8D%E5%8A%A1%E4%BD%9C%E4%B8%BA%E5%90%8E%E7%AB%AF 视频链接: 作业: 基础作业 使用如下命令创建conda环境 conda create…

SpringBoot+thymeleaf实战遇到的问题

目录 一、控制台: 二、数据库查询异常: 三、前后端错误校验 四、在serviceImp中需要添加一个eq条件,表示和数据库中的哪个字段进行比较,否则会查出所有数据,导致500 五、使用流转换数据更简洁 六、重复报错&…

AI软件开发:探索原理、挑战与未来趋势

AI软件开发已经成为当前最热门和具有前景的技术领域之一。随着人工智能技术的快速发展,AI软件的应用范围也在不断扩大。本文将主要探讨AI软件开发的原理、挑战以及未来的趋势。 首先,AI软件开发的原理是基于机器学习和深度学习算法。机器学习是一种通过…