首页 > 其他分享 >什么是3D模型LOD:细节级别

什么是3D模型LOD:细节级别

时间:2023-12-22 11:14:04浏览次数:25  
标签:多边形 LOD 对象 细节 级别 3D

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

介绍

现代游戏在提供具有多个物体和角色的令人叹为观止的逼真环境方面达到了很高的水平。虽然它们都以不同的距离运行,但很少有人真正为场景添加一些东西。

然而,引擎必须处理和渲染所有对象。这正是LOD发挥作用以确保快速渲染的时候。但事实并非如此。

今天,您将学习有关什么是LOD以及为什么在游戏和角色建模中需要LOD的所有知识。

什么是LOD?

LOD 或细节级别是根据 3D 对象与查看器或摄像机的距离来减少多边形数量的方法。建模者使用它来减少 CPU 或显卡上的工作负载,并提高渲染效率。

如何编辑详细级别与视点相关的对象细节级别

相应地,为游戏场景的每个部分创建了不同级别的细节组。它们中的每一个都有不同的多边形计数,属于一个组,其中 LOD0 组是一个完全详细的模型,而 LOD1、LOD2 一 具有较低的细节级别,依此类推。

它可以在最详细的对象上从多边形网格中的数千个三角形到模型最不详细的版本上的一百个三角形。

不同细节层次LOD 网格中不同数量的多边形

如果您想知道它是否会影响玩家的体验,答案是肯定的和否定的

模型视觉质量的降低很少被关注,因为物体距离较远或移动速度很快。但是,渲染时间得到了显着改善,这不会被忽视。

虽然这似乎是一个放之四海而皆准的解决方案,但您仍然无法将其应用于所有游戏。

注意:不要在包含大量三角形的非常简单的对象或具有静态摄像机视图的游戏上使用 LOD。在这些情况下,网格优化的处理方式不同。

LOD 参数

LOD 参数详细级别

在游戏过程中,不同的物体与观众的距离不同。因此,距离本身并不是定义每个物体、人物和风景的细节水平的有效因素。

还有其他一些其他指标需要考虑:

  • 对象特征 ー 您必须包含的真实世界对象及其元素
  • 特征的复杂性 ー 真实世界特征的最小尺寸及其几何形状的复杂性
  • 语义 ー 空间语义连贯性
  • 尺寸 ー 每个特征的几何尺寸
  • 纹理 ー 如果需要对对象进行纹理处理,则每个特征所需的质量级别

定义这些内容后,您需要选择要用于为对象创建 LOD 的技术。

详细程度管理技术

LOD 有助于提供足够的视觉质量,同时借助算法避免不必要的计算。然而,现代方法是根据呈现的信息量身定制的,这与原始算法容易做的事情相去甚远。

根据情况,主要有两种方法。

离散细节层次 (DLOD)

利用离散方法,您可以创建具有不同细节级别的对象的多个离散或不同版本。要获得所有这些,您需要一种用于各种多边形缩减技术的外部算法。

离散的细节级别 DLOD LOD 组

在渲染过程中,具有较高细节级别的对象版本将替换为具有较低细节级别的对象,反之亦然。它会导致在过渡期间出现视觉爆裂声,您应该始终这样做。

连续细节层次 (CLOD)

连续的细节层次方法最适合性能密集型应用程序和移动对象。它允许您在本地更改细节。因此,您可以以更详细的方式呈现对象的一侧,而以更低的细节水平呈现另一侧。

连续的细节级别 LOD连续LOD连续LOD

这是可能的,因为方法中使用的结构细节光谱不断变化。CLOD使您能够选择适合特定情况的细节级别。由于涉及的操作很少,因此此方法可提供更低的 CPU 和更快的性能

优化 3D 对象的 LOD 级别

当你开始创建多边形网格时,你脑海中浮现的第一个问题是ー LOD的合理数量是多少?

这听起来可能很简单,但这是在了解什么是LOD之后要知道的第二件重要事情。

这就是原因。

如果仅减少多边形网格中的几个顶点,则不会有任何显著的性能改进。对象的所有版本都将呈现几乎相同。然后,如果多边形减少太多,LOD 切换将过于明显。

专业提示:使用一个不成文的规则,即为组中的每个对象(LOD1、LOD2、LOD3 等)减少 50% 的多边形数量,但仍根据对象的大小和重要性进行定制。

如何创建 LOD 组


此外,LOD 网格会消耗您的内存和 CPU 工作负载。因此,它们太多将需要大量处理并增加文件大小。请记住这一点。

如何创建LOD网格体?

借助它们附带的所有花哨的 3D 建模软件和修改器,您可以为游戏对象创建 LOD 网格体。

不过,您可以手动和自动执行此操作。

手动

当您手动创建细节级别时,您只需删除 3D 对象的一定数量的顶点和多边形的循环即可。您还可以关闭 LOD 的平滑效果。

虽然您在软件中执行此操作,但它仍然需要大量时间。因此,最好将此过程自动化。

自动

相反,使用自动选项,您有更多的选择。您可以选择 ProOptimizer for 3DSMax 或 Generate LOD Meshes in Maya。


细节水平对于高端游戏来说是必须的,因为它会影响观众的体验和整个场景的渲染时间。一旦您开始接触并学习如何进行 3D 建模,创建 LOD 似乎是一件轻而易举的事。尤其是你今天学到的所有细节。

转载:什么是3D模型LOD:细节级别 (mvrlink.com)

标签:多边形,LOD,对象,细节,级别,3D
From: https://www.cnblogs.com/mvrlink/p/17920830.html

相关文章

  • 如何使用不同的纹理贴图制作逼真的 3D 图形?
    在线工具推荐:3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.jsAI自动纹理开发包 - YOLO虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎在过去的很多年里,我一直在视觉效果行业工作,发现几乎每个艺术家都致力于在3D产品......
  • Unity3D iOS 系统与 Unity 交互中如何实现参数传递详解
    在Unity3D开发中,与iOS系统的交互是非常常见的需求。而在交互过程中,参数传递是非常重要的环节。本文将详细介绍在Unity3DiOS系统与Unity交互中如何实现参数传递,并给出技术详解以及代码实现。对啦!这里有个游戏开发交流小组里面聚集了一帮热爱学习游戏的零基础小白,也有一些正在从事......
  • Unity3D 背包系统的渲染如何优化详解
    Unity3D背包系统是游戏中常见的一个功能,玩家可以在游戏中收集或购买各种道具,然后将其放入背包中进行管理。然而,当背包中的道具数量增加时,往往会导致游戏的性能下降,因为需要渲染大量的道具图标和信息。因此,如何优化背包系统的渲染成为了游戏开发中的一个重要问题。对啦!这里有个游......
  • Unity3D 自定义Shader 与 内置Shader 如何整合详解
    Unity3D是一款非常流行的游戏开发引擎,它提供了丰富的内置Shader供开发者使用。然而,有时候我们需要根据具体需求自定义Shader来实现特定的效果。本文将详细介绍Unity3D中如何整合自定义Shader和内置Shader,并给出相关的技术详解和代码实现。对啦!这里有个游戏开发交流小组里面聚集了......
  • 应用案例 | 汽车行业基于3D机器视觉引导机器人上下料解决方案
    Part.1 背景近年来,汽车行业蓬勃发展,一度出现供不应求的现象。在汽车零配件、整车大规模制造的过程中,为了降本增效,提升产品质量,工厂急需完成自动化升级。随着人工智能的发展,越来越多的生产环节引入机器视觉引导器人进行自动化改造。机器视觉引导机器人技术在汽车领域典型应用场景包......
  • 3D模型如何制作透明玻璃材质
    在线工具推荐:3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.jsAI自动纹理开发包 - YOLO虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎1、什么是玻璃材质在3D建模和渲染中,玻璃是一种非常常见的材质。它的特点是可以......
  • Unity 3D定点数物理引擎实战系列1.1BEPUphysicsint 3D定点数物理引擎介绍
    1.1BEPUphysicsint3D定点数物理引擎介绍对惹,这里有一个游戏开发交流小组,希望大家可以点击进来一起交流一下开发经验呀帧同步的游戏中如果用物理引擎,为了保证不同设备上的结果一致,需要采用定点数来计算迭代游戏过程中的物理运算。也就是我们通常说的定点数物理引擎(确定性物理......
  • 《环太平洋》流浪者机甲3D模型特效还原
    在线工具推荐:3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.jsAI自动纹理开发包 - YOLO虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎法线贴图在3D建模中扮演着重要的角色,它通过模拟表面的微小细节和凹凸不平的部分......
  • PostgreSQL中的事务隔离级别
    PostgreSQL中的事务隔离级别在确保多用户数据库环境中的数据一致性、完整性和并发控制方面起着至关重要的作用。当多个事务并发执行时,隔离级别定义了它们之间的相互隔离的程度。PostgreSQL提供了一系列的隔离级别,每个级别都有自己的一套保证和权衡,允许开发人员根据特定的需求定制......
  • three.js3D地图省市下钻加上钻踩坑记录(未完待续)
     1,three安装失败首先脚手架种安装three,我不知道是网络问题还是什么,three我总是安装不上,于是我就下载了网上别的博主得成品代码,把里面de包拿出来放在我自己项目中安装包链接在此,如有需要自取,https://files.cnblogs.com/files/jickma/three.rar?t=1702967875&download=true......