averageNormalsTangents(null, rootPoint, leftPoint, bottomPoint, rightPoint, normal, tangent, binormal); setInBuffer(this.getMesh(), s, normal, tangent, binormal); setInBuffer(right.getMesh(), 0, normal, tangent, binormal); averageNormalsTangents(topPoint, rootPoint, leftPoint, bottomPoint, rightPoint,normal, tangent, binormal); setInBuffer(this.getMesh(), s, normal, tangent, binormal); setInBuffer(right.getMesh(), 0, normal, tangent, binormal); averageNormalsTangents(topPoint, rootPoint, leftPoint, null, rightPoint, normal, tangent, binormal); setInBuffer(this.getMesh(), (s+1)*(s+1)-1, normal, tangent, binormal); setInBuffer(right.getMesh(), (s+1)*(s), normal, tangent, binormal); } else { bottomPoint.set(0, bottom.getHeightmapHeight(s,1), 1); averageNormalsTangents(topPoint, rootPoint, leftPoint, bottomPoint, rightPoint, normal, tangent, binormal); setInBuffer(this.getMesh(), (s+1)*(s+1)-1, normal, tangent, binormal); setInBuffer(right.getMesh(), (s+1)*s, normal, tangent, binormal); topPoint.set(0, this.getHeightmapHeight(s,i-1), -1); bottomPoint.set(0, this.getHeightmapHeight(s,i+1), 1); averageNormalsTangents(topPoint, rootPoint, leftPoint, bottomPoint, rightPoint, normal, tangent, binormal); setInBuffer(this.getMesh(), (s+1)*(i+1)-1, normal, tangent, binormal); setInBuffer(right.getMesh(), (s+1)*(i), normal, tangent, binormal); averageNormalsTangents(null, rootPoint, leftPoint, bottomPoint, rightPoint, normal, tangent, binormal); setInBuffer(this.getMesh(), 0, normal, tangent, binormal); setInBuffer(left.getMesh(), s, normal, tangent, binormal); averageNormalsTangents(topPoint, rootPoint, leftPoint, bottomPoint, rightPoint, normal, tangent, binormal); setInBuffer(this.getMesh(), 0, normal, tangent, binormal);
averageNormalsTangents(null, rootPoint, leftPoint, bottomPoint, rightPoint, normal, tangent, binormal); setInBuffer(this.getMesh(), s, normal, tangent, binormal); setInBuffer(right.getMesh(), 0, normal, tangent, binormal); averageNormalsTangents(topPoint, rootPoint, leftPoint, bottomPoint, rightPoint,normal, tangent, binormal); setInBuffer(this.getMesh(), s, normal, tangent, binormal); setInBuffer(right.getMesh(), 0, normal, tangent, binormal); averageNormalsTangents(topPoint, rootPoint, leftPoint, null, rightPoint, normal, tangent, binormal); setInBuffer(this.getMesh(), (s+1)*(s+1)-1, normal, tangent, binormal); setInBuffer(right.getMesh(), (s+1)*(s), normal, tangent, binormal); } else { bottomPoint.set(0, bottom.getHeightmapHeight(s,1), 1); averageNormalsTangents(topPoint, rootPoint, leftPoint, bottomPoint, rightPoint, normal, tangent, binormal); setInBuffer(this.getMesh(), (s+1)*(s+1)-1, normal, tangent, binormal); setInBuffer(right.getMesh(), (s+1)*s, normal, tangent, binormal); topPoint.set(0, this.getHeightmapHeight(s,i-1), -1); bottomPoint.set(0, this.getHeightmapHeight(s,i+1), 1); averageNormalsTangents(topPoint, rootPoint, leftPoint, bottomPoint, rightPoint, normal, tangent, binormal); setInBuffer(this.getMesh(), (s+1)*(i+1)-1, normal, tangent, binormal); setInBuffer(right.getMesh(), (s+1)*(i), normal, tangent, binormal); averageNormalsTangents(null, rootPoint, leftPoint, bottomPoint, rightPoint, normal, tangent, binormal); setInBuffer(this.getMesh(), 0, normal, tangent, binormal); setInBuffer(left.getMesh(), s, normal, tangent, binormal); averageNormalsTangents(topPoint, rootPoint, leftPoint, bottomPoint, rightPoint, normal, tangent, binormal); setInBuffer(this.getMesh(), 0, normal, tangent, binormal);