Разве что набросал скриптец, расставляющий объекты в случайной позиции, но в определенном интервале, и задающем цвет и размер объекта в зависимости от случайного параметра. Цвет - градиент от синего к красному. Всё на bpy. А сподвиг меня на сей подвиг Flogger-K aka +Alexandr Kir, со своими вопросами, спасибо ему за это большое (это не шутка). Просто был недавно на форуме b3d.org.ua поднят вопрос визуализации астрономического феномена, в общем надо было визуализировать over 9000 объектов, каждый со своим цветом и размером, зависящим от некоторых параметров. Я, редиска, когда нужно было, не сделал, другой человек постарался, честь ему и хвала. Теперь подспудно грызёт интерес - а как это можно было сделать?
import bpy
import random
scene = bpy.context.scene
sceneObj = scene.objects
ob = sceneObj['Sphere']
for ob in sceneObj:
if ob.name != 'Camera' and ob.name != 'Hemi':
e = random.random()
if e != 0.0:
r = 1.0 - 1.0 * e
g = 0.0
b = 0.0 + 1.0 * e
else:
r = 0.0
g = 1.0
b = 0.0
a = 1.0
ob.color = (r, g, b, a)
ob.scale = (e, e, e)
ob.location[0] = random.randrange(-100.0, 100.0, 1.0)
ob.location[1] = random.randrange(-100.0, 100.0, 1.0)
ob.location[2] = random.randrange(-100.0, 100.0, 1.0)
Ниже результат для немногим более двух тысяч объектов в области +/- 100 метров по всем трем осям, ничего особо интересного:
import bpy
import random
scene = bpy.context.scene
sceneObj = scene.objects
ob = sceneObj['Sphere']
for ob in sceneObj:
if ob.name != 'Camera' and ob.name != 'Hemi':
e = random.random()
if e != 0.0:
r = 1.0 - 1.0 * e
g = 0.0
b = 0.0 + 1.0 * e
else:
r = 0.0
g = 1.0
b = 0.0
a = 1.0
ob.color = (r, g, b, a)
ob.scale = (e, e, e)
ob.location[0] = random.randrange(-100.0, 100.0, 1.0)
ob.location[1] = random.randrange(-100.0, 100.0, 1.0)
ob.location[2] = random.randrange(-100.0, 100.0, 1.0)
Ниже результат для немногим более двух тысяч объектов в области +/- 100 метров по всем трем осям, ничего особо интересного:
Комментариев нет:
Отправить комментарий