Пример #1
0
import art


def voronoishader(x, y):
    c, C = art.voronoinoise2d((x * 16.0, y * 16.0))
    C = art.tilenoise2d(C)
    # remap domain from (-1,1) to (0,1) for output
    return (C[0] * 0.5 + 0.5, C[1] * 0.5 + 0.5, C[2] * 0.5 + 0.5)


if "__main__" == __name__:
    art.render(voronoishader, "example_004.png", 256, 196, 4)
Пример #2
0
import art


def tileshader(x, y):
    C = art.tilenoise2d((x * 16.0, y * 16.0))
    assert 3 == len(C)
    # remap domain from (-1,1) to (0,1) for output
    return (C[0] * 0.5 + 0.5, C[1] * 0.5 + 0.5, C[2] * 0.5 + 0.5)


if "__main__" == __name__:
    art.render(tileshader, "example_001.png", 256, 196, 4)
Пример #3
0
import art


def simshader(x, y):
    C = art.simnoise3d((x * 16.0, y * 16.0, 0.5))
    return (C[0] * 0.5 + 0.5, C[1] * 0.5 + 0.5, C[2] * 0.5 + 0.5)


if "__main__" == __name__:
    art.render(simshader, "example_006.png", 256, 196, 4)
Пример #4
0
import art

def distance(A,B):
    return max(abs(a-b) for a,b in zip(A,B))

def shader(x, y):
    P = (x*16.0, y*16.0)
    c, C = art.voronoinoise2d(P, distance)
    return (c,c,c)

if "__main__" == __name__ :
  art.render(shader, "example_011.png", 256, 196, 4)
Пример #5
0
import art


def noiseshader(x, y):
    C = art.valuenoise2d((x * 16.0, y * 16.0))
    assert 3 == len(C)
    # remap domain from (-1,1) to (0,1) for output
    return (C[0] * 0.5 + 0.5, C[1] * 0.5 + 0.5, C[2] * 0.5 + 0.5)


if "__main__" == __name__:
    art.render(noiseshader, "example_002.png", 256, 196, 4)
Пример #6
0
import art


def shader(x, y):
    P = (x * 44.0, y * 2.0)  # high frequency signal
    dP = art.simnoise2d(
        (13.5 + x * 1.3, 23.5 + y * 1.3))  # low frequency signal
    P = art.addV(dP, P)  # dP added to P
    c, C = art.voronoinoise2d(P)
    brown1 = (0.5, 0.4, 0.05)
    brown2 = (0.35, 0.27, 0.03)
    return art.mixV(brown1, brown2, c)


if "__main__" == __name__:
    art.render(shader, "example_013.png", 256, 196, 8)