如何避免在交叉的高细节球体上出现半透明的失败?

时间:2016-06-26 11:55:38

标签: processing

void setup() {
  size(600, 480, P3D);hint(ENABLE_DEPTH_SORT);
}

void draw()
{
  background(0); 
  translate(width/2, height/2);  fill(color(255,255,255),84);
  strokeWeight(0);
  sphereDetail(60);
  translate(-40,0,1);sphere(80);
  translate(2*40,0,0);sphere(80);
  // Fails with lightening absent: http://i.imgur.com/1OmcHvL.png
}

失败,给予

enter image description here

正如预期的那样,而不是在中线的左侧闪电。

我该如何解决这个问题?

一条线索可能是改为

translate(2*40,100,0);sphere(80);

给出

enter image description here

注意:请不要将此问题误认为是this的副本。

1 个答案:

答案 0 :(得分:-1)

添加

 hint(DISABLE_DEPTH_TEST);

在这种情况下,这没有任何副作用,但毫无疑问会在其他情况下发生。