perlin attempt