【问题标题】:Three.js DDS Json UV Mapping issues三.js DDS Json UV Mapping问题
【发布时间】:2013-07-15 18:46:12
【问题描述】:

我已经搜索了互联网,但我没有找到这个问题的正确答案。我注意到很多人都有同样的想法。

我有一个从 3D max 导出的 JSON 文件,其中包含 UV 信息。 我正在尝试加载带有应用于 Three.js 的 DDS 图像的 JSON 文件。 (使用 THREE.ImageUtils.loadCompressedTexture) DDS 图像是从 Photoshop 导出的。

图像正在加载到对象上,但它正在被拉伸(我认为这是由于 DDS 文件不再是矩形,因为它包含多个 mipmap)。

如何告诉 three.js 使用的图像是 DDS 文件?

提前谢谢你。

我整理了一个现场演示。这是链接:http://aeche.eu/DDS/DDS.html 左侧可以看到正确使用的JPG文件,右侧可以看到DDS文件。

这是原始 JPG 图片:http://aeche.eu/DDS/art/cubeJPG.jpg

这是使用 DDS 文件的多维数据集的代码:

var map1 = new THREE.ImageUtils.loadCompressedTexture('art/cubeDDS.dds');
    {
  jsonLoader.load( "art/cube2.js", addCubeDDS );
  function addCubeDDS( geometry, materials ) {
  var material = new THREE.MeshPhongMaterial( {map: map1} );
  cube1 = new THREE.Mesh( geometry, material );
  cube1.position.x = 66;
  scene.add( cube1 );
}

【问题讨论】:

  • 我认为 jsFiddle 或其他现场演示对您的情况特别有帮助
  • 我没有看到任何“拉伸”。我确实看到了黑色的面孔。我相信这是因为嵌入式 DDS mipmap 是颠倒的(或者在 three.js 中存在一个错误)。 “告诉three.js该图像是DDS文件”是什么意思?

标签: json mapping three.js mipmaps dds-format


【解决方案1】:

谢谢大家的回答。我想到了。在将图像导出到 DDS 之前,我必须将其垂直翻转并且它可以工作

【讨论】:

    猜你喜欢
    • 2013-02-14
    • 2023-04-02
    • 1970-01-01
    • 2014-01-13
    • 1970-01-01
    • 2018-09-22
    • 1970-01-01
    • 2017-04-19
    • 2021-09-27
    相关资源
    最近更新 更多