gpt4 book ai didi

javascript - WebGL 纹理渲染部分

转载 作者:行者123 更新时间:2023-11-30 10:20:14 25 4
gpt4 key购买 nike

我正面临一个非常晦涩难懂的问题。

我正在将 .obj 3d 模型加载到我正在处理的 WebGL 应用程序中。我正在使用自定义函数解析它们。我知道它工作正常。因为我明白了:

Wood textured cube

假设纹理被拉伸(stretch)得太多了。但这就是 UV 的映射方式。

但是,当我加载一个鹅模型时,我得到的是:

Goose no texture

一只没有纹理的鹅。我正在使用相同的纹理。

更奇怪的是纹理只在眼睛周围渲染。如果我不画线框,我会得到这个:

Goose eyes

我圈出的那两个小规范是眼睛。

为了确定不是这个型号,我又试了一个:

Partially texture axe

我不知道为什么它不会在其他地方渲染纹理。

这是我尝试过的:

  • 重新计算法线并再次从 Blender 导出。同样的结果。
  • 在 Photoshop 中加载模型并正确预览。意思是模型很好。
  • 一遍又一遍地检查我将 .obj 文件解析为 WebGL 可用格式的过程。此外,由于立方体加载正确,我认为不是那样。
  • 尝试关闭 MipMapping、禁用 CULL_FACE 并更改缠绕顺序。没有区别。
  • 使用不同的纹理图像。纹理图像都是 NPOT。试过非 NPOT。什么都没有改变,除了不同的图像,小眼睛的纹素或斧头上的碎片变成了纹理。
  • 检查了 UV 映射,一切看起来都很好。没有负值或超出范围的值。

我完全没有想法。如果有人有类似的经历,我将不胜感激关于下一步该去哪里的指示。

我通常不喜欢在不发布代码的情况下提问,但代码非常复杂,因为我使用 sweet.js 来自定义 javascript 语法。让我知道是否有人想查看代码,我可以尝试清理一些代码并上传到某个地方。

最佳答案

从你的图像中我想知道你是否没有绘制恒定数量的多边形,或者如果绘制开始然后由于一些错误而在其路径上无声地失败。这就是为什么我问绘制的多边形是否是第一个模型。
因此,似乎确实对绘制的多边形数量存在硬编码限制。
很高兴你找到了!

关于javascript - WebGL 纹理渲染部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21800682/

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