Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript json导出网格中具有png alpha透明度的平面材质不工作_Javascript_3d_Three.js_Webgl - Fatal编程技术网

Javascript json导出网格中具有png alpha透明度的平面材质不工作

Javascript json导出网格中具有png alpha透明度的平面材质不工作,javascript,3d,three.js,webgl,Javascript,3d,Three.js,Webgl,我在做一个类似于3.js地下停车场的东西 我已经在搅拌机和渲染是好的。 问题出在地板上=) 我有两种不同的纹理: 无透明度的漫反射纹理jpg(aphalt) 带alpha的漫反射纹理png(仅停车标记,如带箭头的出口、停车线等) 所以我已经从blender导出了网格,并进行了以下材质设置: { "DbgColor" : 15658734, "DbgIndex" : 0, "DbgName" : "wire_006135006.002", "blending"

我在做一个类似于3.js地下停车场的东西 我已经在搅拌机和渲染是好的。 问题出在地板上=)

我有两种不同的纹理:

  • 无透明度的漫反射纹理jpg(aphalt)
  • 带alpha的漫反射纹理png(仅停车标记,如带箭头的出口、停车线等)
所以我已经从blender导出了网格,并进行了以下材质设置:

{
    "DbgColor" : 15658734,
    "DbgIndex" : 0,
    "DbgName" : "wire_006135006.002",
    "blending" : "AdditiveBlending",
    "depthTest" : true,
    "depthWrite" : false,
    "colorAmbient" : [1.0, 1.0, 1.0],
    "colorDiffuse" : [1.0, 1.0, 1.0],
    "colorSpecular" : [0.5, 0.5, 0.5],
    "mapDiffuse" : "test.png",
    "mapDiffuseWrap" : ["repeat", "repeat"],
    "shading" : "Phong",
    "alphaTest" : 0.5,
    "opacity" : 0.5,
    "transparency" : 0.5,
    "transparent" : true,
    "vertexColors" : false
},

{
        "DbgColor" : 15597568,
    "DbgIndex" : 1,
    "DbgName" : "wire_006135006.001",
    "blending" : "NormalBlending",
    "colorAmbient" : [0.6839832884666812, 0.6807164770471523, 0.6709177117186442],
    "colorDiffuse" : [0.6839832884666812, 0.6807164770471523, 0.6709177117186442],
    "colorSpecular" : [0.0, 0.0, 0.0],
    "depthTest" : true,
    "depthWrite" : true,
    "mapBump" : "asfalt_specular.jpg",
    "mapBumpWrap" : ["repeat", "repeat"],
    "mapDiffuse" : "floor_2.jpg",
    "mapDiffuseWrap" : ["repeat", "repeat"],
    "shading" : "Phong",
    "specularCoef" : 1,
    "transparency" : 1.0,
    "transparent" : false,
        "vertexColors" : false
},
对于第一个材质,我已经更改了下一个属性:

  • “transparet”:没错
  • “字母测试”:0.5
  • “透明度”:0.5
  • “depthWrite”:错误
  • 所以我不明白,wtf是我的png,alpha没有显示

    只有黑色纹理或透明,但我看不到白色标记


    请帮助我,如何设置png alpha透明度?我试过很多例子,但都没有成功(

    问题出在我用作纹理的图像中。原始图像的尺寸如下:1999×7141。显然,出于未知原因,three.js无法使用如此出色的纹理。我已将大小减小到1000 × 3572,现在可以了