root/3d/intro/trees.gd

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
tool
extends MultiMeshInstance

export(bool) var reposition = false setget set_reposition

func _ready():
	set_reposition(false)

func set_reposition(_value):
	reposition = false
	var trees = self
	trees.multimesh.visible_instance_count = -1
	trees.multimesh.instance_count = 64
	var rng = RandomNumberGenerator.new()
	rng.seed = 23
	#var start_tree = $"../pine_tree"
	for i in range(64):
		var t = trees.multimesh.get_instance_transform(i) #start_tree.transform.translated(Vector3(rand_range(0.0, 256.0), 0.0, rand_range(0.0, 256.0)))
		t.origin = Vector3(rng.randf_range(-60.0, 60.0), 0.0, rng.randf_range(-60.0, 60.0))
		trees.multimesh.set_instance_transform(i, t)
	pass