gpt4 book ai didi

unity-game-engine - 奇怪的线条 3D Unity

转载 作者:行者123 更新时间:2023-12-02 11:14:53 24 4
gpt4 key购买 nike

我正在开发一个项目,使用 unity 5.4。在此项目中, block 彼此相邻堆叠。

但是出现了一些烦人的奇怪线条。安卓上还有这些线路出现的频率比 PC 上更高。出于说明目的,我添加了图像和视频。请放大图片,清楚地看到我所说的那条线。

任何人都可以提供解决方案来消除这种麻烦。提前致谢。

文献:

block 对齐代码片段:

for (int x = 0; x < xSize; x++)
for (int z = 0; z < zSize; z++)
{
Vector3 pos = new Vector3(x, -layerDepth, z);
InstantiateBlock(pos);
}

视频链接:https://youtu.be/5wN1Wn51d_Y

最佳答案

你有物体接缝!

当对象之间存在物理或感知间隙时,就会发生这种情况。

造成这种情况的原因有多种。

<小时/>

1。浮点不精确

这可能是因为您将立方体的位置设置为 int但它们具有浮点尺寸。其症状通常是当相机靠近物体时没有白色接缝,然后由于浮点不精确,随着您远离物体,白色接缝逐渐出现。 More .

Most of these blocks appear to line up exactly, from most camera positions. But from the occasional unfortunate position, the exact value for A's position plus its vertex at (0.5,0.5,-0.5) might be slightly different to object B's position plus its vertex at (-0.5,0.5,-0.5) . The result is that Unity shows a tiny gap, within which you can see the shadowed side of cube A.

如果您在纸上考虑以下内容 3 == 1/3 * 3这在数学上是正确的,但是使用 float ,1/3 == 0.333333...随后 3 * 0.333333... == 0.999999...答对了!物体之间的随机间隙!

那么如何解决呢?使用 float 来计算对象的位置。 new vector3(1,1,1);应该是new vector3(1f,1f,1f); - 例如。如需进一步阅读此内容,请尝试 this标准操作程序。

<小时/>

2。纹理包裹模式

如果您在对象上使用纹理,请尝试将纹理的包裹模式从包裹更改为夹紧,或尝试提高纹理 padding .

<小时/>

3。阴影痤疮 - (灯光和阴影伪影)

这是阴影中像素的任意模式,当它们真正应该被点亮或不被点亮时。

To prevent shadow acne, a Bias value can be added to the distance in the shadow map to ensure that pixels on the borderline definitely pass the comparison as they should, or to ensure that while rendering into the shadow map. source.

在 Unity 中...转到光源,然后增加 Shadow Type > shadow Bias我建议将默认值 0.05 加倍,然后继续这样做直到修复。您不想将此值调至最大值,因为...

Do not set the Bias value too high, because areas around a shadow near the GameObject casting it are sometimes falsely illuminated. This results in a disconnected shadow, making the GameObject look as if it is flying above the ground.

关于unity-game-engine - 奇怪的线条 3D Unity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40564137/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com