예제 #1
0
파일: AltNoise.java 프로젝트: TTFTCUTS/ATG
  public AltNoise(long seed, double scalex, double scaley, double scalez) {
    this.scalex = 1.0 / scalex;
    this.scaley = 1.0 / scaley;
    this.scalez = 1.0 / scalez;

    this.seed = seed;
    this.rand = new Random(seed);

    this.samples = new Vector3[256];
    for (int i = 0; i < this.samples.length; i++) {
      this.samples[i] = Vector3.randomUnitVector(this.rand);
    }
  }
예제 #2
0
파일: AltNoise.java 프로젝트: TTFTCUTS/ATG
  private double gradNoise(double fx, double fy, double fz, int ix, int iy, int iz) {
    Vector3 grad = this.grad(ix, iy, iz);
    Vector3 point = new Vector3(fx - ix, fy - iy, fz - iz);

    return grad.dot(point) * 2.12;
  }