什么是曲面细分

在CAD格式中,通常使用曲线和数学函数来定义曲面和实体。这些曲面的精确度和光滑度非常适用于制造过程。但是,现代GPU芯片针对由三角形网格体组成的曲面的渲染计算进行了高度优化。通常,实时渲染器和虚幻之类的游戏引擎只能处理由三角形网格体组成的几何体,必须突破这些GPU的极限,才能每秒产生数十帧令人惊叹的照片级质量图像。

虚幻引擎的Datasmith填补了这项不足,它可以自动计算三角形网格体,非常近似地估算出CAD文件中尚无网格体表达的所有曲面。此过程被称为 曲面细分(tessellation),是准备可实时使用的CAD数据的重要步骤。

例如,左侧的图像显示了在本机CAD查看器中渲染的曲面。右侧的图像显示了为该曲面生成的三角形网格体的线框。

参数曲面-三角剖分网格体
为了进行实时渲染,对曲面执行曲面细分时,需要权衡曲面精度与可渲染速度。

三角形网格体本身永远不会与生成它的精确曲面完全匹配。曲面细分往往意味着要在某种细节层级对原始曲面进行采样,以创建使GPU能更快渲染几何体的近似值。通常,越接近原始曲面,网格体就越复杂;也就是说,它将包含更多三角形,而这些三角形会更小。这样渲染时可能外观更真实,但对GPU提出了更高的要求。如果降低曲面细分网格体的精度,使其包含的三角形变少、变大,GPU对其进行渲染时的速度会更快,但这种渲染所产生的效果可能看起来呈斑驳或锯齿状,无法达到令人满意的视觉保真度。

因此,在曲面细分过程中必须尽可能减少网格体中三角形的数量,同时最大程度地保持与源曲面的视觉保真度。这通常意味着,针对较为平滑和扁平的曲面需减少三角形数量、增大三角形尺寸,针对较为复杂和不平的表面需增加三角形数量、缩小三角形尺寸。

以下部分将介绍导入CAD场景时Datasmith中可调整的3个参数。通过调整这些值,可控制Datasmith为曲面创建的静态网格体几何体的复杂性和保真度。

曲面细分参数设置
虚幻引擎始终使用三角形网格体来渲染对象。如果第三方设计软件模型文件中含有定义为参数化表面或NURBS的对象,则需要将这些表面变换或曲面细分为三角形网格体。

弦容差

弦容差(有时称为弦误差或垂度误差)定义了细分曲面上任何点距原始曲面上对应点的最大距离。

弦容差
降低该参数的值会使细分曲面更接近原始曲面,进而生成更多小三角形。

在曲率较大的区域中,这种设置的效果最明显:随着容差值增加,生成的三角形会变大,曲面平滑度会降低。

不同弦容差的对比

最大边长

此设置可以限制曲面细分网格体内任何三角形的任何一条边的最大。

最大边长

在模型的较扁平区域,此设置的效果最明显。如果该值设置得过低,可能会发现这些扁平区域的三角形超出了实际需要的数量。相反,如果该值设置得过高或没有设置限制,产生的三角形有时会极长极窄,形状非常奇特,最好也应避免。

如果该值设置为0,Datasmith不会限制其生成的三角形的边长。

不同最大边长对比

法线容差

此设置定义曲面细分网格体中任意两个相邻三角形之间的最大角度(以度为单位)。

法线容差
与弦容差一样,法线容差也会影响曲面细分网格体与原始曲面的接近程度。但是,保持高曲率区域的细节层级非常有用,对曲面的较扁平区域生成的三角形几乎没有影响。

不同法线容差的对比

拼接技术(Stitching Technique)

拼接技术 设置控制着在曲面细分过程中如何处理看似相连、但其实作为单独刚体或刚体中一个独立表面建模的参数曲面。

  • Stitching Sew 会寻找应该相连的表面,并将其刚体合并到同一个静态网格体资源中。
    此选项可以减少Datasmith在你的项目中创建的独立静态网格体资源的数量,但处理时间较长。

    Datasmith可能会使用不同策略来测试应该拼接在一起的表面。对大部分类型的源文件来说,它会测试表面和附近刚体的连通性,并合并所有其表面相连的刚体。对于其他类型的文件来说,它会使用场景层级作为决定相连表面的提示信息。

  • Stitching Heal 的作用相同,但只会重新连接在源场景中属于同一个刚体的表面。如果Datasmith检测到同一个刚体中的独立曲面的几何体应该被连接起来,它会将这些曲面合并到其所创建的静态网格体资源内的同一个网格体元素中。
    但是,开启此设置后,Datasmith永远不会将源场景的多个独立对象合并成单个静态网格体资源。

  • Stitching None 将完全跳过拼接流程。Datasmith将始终为源场景中的每个独立刚体创建单独的静态网格体资源,并在静态网格体资源中为每个刚体包含的每一个曲面创建单独的网格体元素。

原文链接

  1. https://dev.epicgames.com/documentation/zh-cn/unreal-engine/importing-cad-files-into-unreal-engine-using-datasmith
  2. https://dev.epicgames.com/documentation/zh-cn/unreal-engine/using-datasmith-with-rhino-in-unreal-engine

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

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

相关文章

CANFD加速是什么?和CANFD有什么区别?

文章目录 摘要什么是CANFD加速?CAN FD的基本原理:仲裁阶段(Arbitration Phase):数据阶段(Data Phase):关键特性:优势:总结摘要 下面的截图,大家肯定不陌生,在使用CAN设备上位机的时候,已经选择了CANFD,但还有一个选项是“CANFD加速”,那CANFD加速和不加速有什么…

minio 启动失败--Incorrect Usage: flag provided but not defined: -consoleaddress

根据错误信息 flag provided but not defined: -consoleaddress,这表明 Minio 服务启动时使用了未定义的命令行参数 --consoleaddress,导致启动失败。这个问题与 Minio 版本兼容性有关。 问题原因 参数名称变更: Minio 版本 > RELEASE.20…

基于Rust的Polars学习笔记

基于Rust的Polars学习笔记 Polars 学习笔记 Cargo.toml通用配置 [package] name = "rustP" version = "0.1.0" edition = "2024"[dependencies] polars = { version = "0.48.1", features = ["full"]}Quickstart use po…

SpringBoot扩展——定时任务!

定时任务 项目开发中会涉及很多需要定时执行的代码,如每日凌晨对前一日的数据进行汇总,或者系统缓存的清理、对每日的数据进行分析和总结等需求,这些都是定时任务。单体系统和分布式系统的分布式任务有很大的区别,单体系统就一个…

RTDETRv2 pytorch 官方版自己数据集训练遇到的问题解决

rtdetrv2 训练问题遇到的问题。 pip install torch2.0.1 torchvision0.15.2 torchaudio2.0.2 --index-url https://download.pytorch.org/whl/cu117 1 Please make sure torchvision version > 0.15.2 发现自己实际装的是 torchvison0.15.2cu117 修改_misc.py中修改为…

Linux系统移植⑤:uboot启动流程详解-board_init_f执行过程

Linux系统移植⑤:uboot启动流程详解-board_init_f执行过程 _main 中会调用 board_init_f 函数。 board_init_f 函数主要有两个工作: ①初始化一系列外设,比如串口、定时器,或者打印一些消息等。 ②初始化 gd 的各个成员变量&am…

Git命令与代码仓库管理

步骤一、完成Gitee码云上账号注册并新建代码仓库。 1.1 新建代码仓库 1.2 填写信息并创建 1.3 获取仓库地址 https://gitee.com/dog-kidney/2022082206.git 步骤二、建立本地代码仓库,并连接到远程代码仓库。 2.1初始化 git init 2.2添加仓库 git remote add o…

资源占用多,Linux 系统中如何降低 CPU 资源消耗并提升利用率?

在 Linux 系统中降低 CPU 资源消耗并提升利用率,需从系统服务优化、进程管理、资源调度及内核参数调整等多维度入手。以下是适用于各类 Linux 发行版的通用优化方案,涵盖基础操作与进阶策略: 一、服务与进程优化:减少无效资源占用 1. 关闭冗余系统服务 查看运行中的服务 …

技术与情感交织的一生 (八)

目录 融合 东西厂公 接风宴 头痛 “巴巴罗萨” 突击 推进 助攻 96小时 寒冬 食堂 反攻 消耗 Delphi 西厂 内困 外患 “敦刻尔克” 多线作战 大撤退 资源 融合 东西厂公 初次来到纸箱厂,是主厂区,感觉很大,相对西面正在…

webuploader分片上传示例,服务端上传文件到腾讯云CDN Teo 应用示例

本文环境:php7.3.4 CI3.0框架 一、大概步骤: (1)利用百度的webuploader插件,将大文件分片上传的自己的服务器 (2)利用腾讯云接口从本服务器上传到腾讯云 二、详细代码: 1、进入…

LeetCode 632.最小区间

你有 k 个 非递减排列 的整数列表。找到一个 最小 区间&#xff0c;使得 k 个列表中的每个列表至少有一个数包含在其中。 我们定义如果 b-a < d-c 或者在 b-a d-c 时 a < c&#xff0c;则区间 [a,b] 比 [c,d] 小。 示例 1&#xff1a; 输入&#xff1a;nums [[4,10,…

篇章五 系统性能优化——资源优化——CPU优化(2)

目录 1.高级并发模式 1.1 工作窃取&#xff08;Work Stealing&#xff09; 1.工作窃取模式 2.ForkJoinPool实现 3.具体例子 1.2 结构化并发&#xff08;Structured Concurrency&#xff09; 1.结构化并发模式 2.Java 19 的 StructuredTaskScope 3.具体例子 1.3 对比与…

《中国电信运营商骨干网:历史、现状与未来演进》系列 第四篇:后发先至——中国移动CMNET的快速扩张与IP专网布局

摘要&#xff1a; 本文深入探讨中国移动骨干网CMNET (AS9808) 的发展历程、网络架构及其与中国电信扁平化策略的差异。同时&#xff0c;解析其为承载高价值业务而构建的IP专用承载网的定位、结构与技术特点。最后&#xff0c;展望中国移动在5G、云计算和算力网络时代&#xff0…

R情感分析:解码文本中的情感

基于之前关于文本聚类和文本模型的博客&#xff0c;我们现在可以深入探讨一个经典主题 - 情感分析。情感分析通过计算方式识别和分类文本中的情感&#xff0c;帮助理解公众意见或消费者反馈。 什么是情感分析&#xff1f; 情感分析确定文本背后的情感基调&#xff0c;将其分类…

云徙渠道订货系统:赋能企业渠道管理的数字化引擎

在当今商业竞争日益激烈的环境下&#xff0c;企业如何高效管理和优化渠道成为关键问题。云徙渠道订货系统凭借其强大的数字化能力&#xff0c;为企业提供了全新的渠道管理解决方案&#xff0c;助力企业在复杂多变的市场环境中保持竞争力。 从渠道管理的痛点出发 传统渠道管理方…

Nacos基础使用(二):nacos作为配置中心

一、Nacos 配置中心核心属性 在学习nacos 作为配置中心的使用之前&#xff0c;先看下Nacos 作为配置中心时的三个属性&#xff0c;即&#xff1a; 命名空间、配置分组、配置集ID&#xff08;习惯称为配置文件ID&#xff09;&#xff1b;在使用Nacos 作为配置中心 的过程中可以通…

SpringBoot 插件化架构的4种实现方案

在复杂业务场景下&#xff0c;传统的单体应用架构往往面临着功能扩展困难、代码耦合严重、迭代效率低下等问题。 插件化架构作为一种模块化设计思想的延伸&#xff0c;能够使系统具备更好的扩展性和灵活性&#xff0c;实现"热插拔"式的功能扩展。 本文将介绍Spring…

VGG-19(Visual Geometry Group)模型

VGG-19 是由牛津大学视觉几何组和 Google DeepMind 的研究人员在 2014 年提出的一个非常经典的深度卷积神经网络模型。 一 核心结构 &#xff08;1&#xff09;深度&#xff1a; 模型名称中的 "19" 指的是模型拥有 19 层带有权重的层&#xff08;通常指&#xff1a;…

Windows11 鼠标卡死任务栏卡死 假死解决方法

最近很多朋友都有一个问题&#xff0c;就是Windows11电脑 在编辑文档或者是切换窗口的时候出现任务栏假死&#xff0c;鼠标左右键失灵等现象&#xff0c;想了几天解决方案今天吧最直接的方法教给大家 首发玖毅论坛 玖毅论坛https://www.webbbs.cn/ 第一步&#xff1a; 第一种…

BeikeShop - 一个开源、用户友好的跨境电子商务平台

BeikeShop - 一个开源、用户友好的跨境电子商务平台 BeikeShop 是全球领先的基于 Laravel 框架的开源电子商务平台&#xff0c;专为国际贸易和跨境电子商务行业设计。 该系统是 100% 开源的&#xff01;它支持多语言、多币种、支付、物流、会员管理等广泛的实用功能&#xff0…