Low-Poly-Motiv: Stein

Lernziel

Was kann modelliert werden? Das wohl häufigste Motiv sind Landschaften mit den folgenden Objekten, die wir zum Teil auch erzeugen wollen:

  • Wolken

  • Steine

  • Bäume

  • Gras

  • Wasser

  • Berge/Landschaft

Handlungsanweisungen/Aufgaben

  1. Kopiere das Skript für den Wolken-Generator (vorherige Station).

  2. Was ändert sich? Welche Eigenschaften und Parameter müssen angepasst werden?

  3. Verteile 10 Steine auf einer Fläche mit den Abmessungen 20x20.

Wolken und Steine

Das Muster für die Erstellung von Steinen entspricht denen der Wolken. Das Skript sollte also schnell kopiert und die Anpassungen einfach sein.

Das Gerüst

 1#!bpy
 2"""
 3Name: 'Stone-Generator'
 4Blender: 2.7x
 5Group: 'Low poly'
 6Tooltip: 'Part of a Low-Poly-Skripts collection'
 7"""
 8import bpy
 9
10
11class Stone():
12    """Create a stone as low poly"""
13
14    def __init__(self):
15        pass
16
17    def setColor(self):
18        pass
19
20    def new(self):
21        """ constuction of a new stone """
22        pass
23
24    def remove(self):
25        """ Delete a stone or all"""
26        pass
27
28if __name__ == "__main__":
29
30    # switch to object mode, if nessasary
31    if bpy.ops.object.mode_set.poll():
32        bpy.ops.object.mode_set(mode='OBJECT')
33    stone = Stone()
34
35

Eigenschaften eines Steines

Diesmal sollte der Modifiere „DECIMATE“ Verwendung finden, denn Steine sind durch Witterungseinflüsse oft abgerundet.

Die Anweisungen dazu ähneln denen des DISPLACE-Modifiers für die Wolken.

        
        bpy.ops.object.modifier_add(type='DECIMATE')
        obj.modifiers["Decimate"].ratio = random.uniform(.1, .2)

Ein Beispiel:

../../../../_images/stones-big.png