Unity 3d 模型在手机上支离破碎
Posted
技术标签:
【中文标题】Unity 3d 模型在手机上支离破碎【英文标题】:Unity 3d model fragmented on mobile 【发布时间】:2019-05-23 22:18:20 【问题描述】:我有一个奇怪的问题,在 Unity 2018.2.15f1(个人)中不断出现。描述它的最佳方式是,当我构建到 ios 时,我的 3D 模型正在碎片化(爆炸?粉碎?)。所以,我将从视觉解释开始。这就是模型在 iPad 上的样子
这就是它的样子 (you can also see it on the App Store w/o fragmenting):
这些模型来自 OSM 地形数据,在 Blender 中处理,然后导入 Unity。他们在移动构建上运行良好,直到在尝试提高性能时发生了两件事之一:1)我尝试了移动着色器,2)我遵循了video 中的一些技巧。自从发现问题后,我“撤消”了所有更改(使用 Git 这很容易)并且似乎修复了它,直到后来的许多版本,问题才突然再次出现,但仅在这个模型上 (不是其他两个“城市”)。我认为问题是切换到移动着色器,但由于我不再使用它们,我现在不知道是什么导致了这个问题。
这是我尝试修复它所做的工作:
-
重新导入模型
将模型分解为不同的组件(建筑物和地形)
仔细检查我有默认质量设置(在项目设置下)
仔细检查我在整个游戏中只使用标准 Unity 着色器
我发现如果我关闭场景中的两个模型(建筑物和地形)中的一个或另一个,问题就会消失。
我发现如果我将建筑模型放置在不相交的位置(参见 #5),它有时会起作用,但不是每次都起作用。在碎片消失之前,它必须在 Y 轴上的地形上方至少 30 个单位。
我尝试覆盖 iOS 构建文件夹(而不是追加),但没有效果。
我尝试切换到 PC 单机版,在首选项中重置 GI 缓存,然后切换回 iOS,但没有成功。
【问题讨论】:
【参考方案1】:我找到了 the 解决方案,但我不知道为什么。我将网格分成单独的对象,并为每个对象提供不同的材料,除了一个选项外,具有匹配的设置。
在新版本中,我将渲染模式从不透明更改为透明。现在没有更多的碎片,但我不知道为什么。在有人知道答案之前让这个问题悬而未决。
【讨论】:
以上是关于Unity 3d 模型在手机上支离破碎的主要内容,如果未能解决你的问题,请参考以下文章