2
이 작업을 수행하는 데 필요한 스크립트 또는 코드를 알고 계십니까?씬의 각 오브젝트에 고유 한 와이어 컬러를 지정 하시겠습니까?
나는 무작위로 색상을 제공하는 몇 가지 본 적이 있지만 나는 두 개의 객체가 같은 wirecolor이 없습니다 있는지 확인해야합니다 ..
감사합니다! =)
이 작업을 수행하는 데 필요한 스크립트 또는 코드를 알고 계십니까?씬의 각 오브젝트에 고유 한 와이어 컬러를 지정 하시겠습니까?
나는 무작위로 색상을 제공하는 몇 가지 본 적이 있지만 나는 두 개의 객체가 같은 wirecolor이 없습니다 있는지 확인해야합니다 ..
감사합니다! =)
아무 것도 모르지만 글을 쓰는 것은 그렇게 어렵지 않습니다.
모두는 당신이 그것을 사용하려는 목적에 따라 달라집니다 물론fn shuffle &arr =
(
local temp, swapIndex, counter = arr.count + 1
while counter > 1 do
(
swapIndex = random 1 (counter -= 1)
temp = arr[counter]
arr[counter] = arr[swapIndex]
arr[swapIndex] = temp
)
OK
)
fn incrementCounters &r &g &b step =
(
if (b += step) > 256 do
(
b = 1
if (g += step) > 256 do
(
g = 1
if (r += step) > 256 do r = 1
)
)
)
fn assignRandomWirecolor objs simple:true =
(
local stepCount = objs.count^(double 1/3) + 1
local step = 255./stepCount
local redArr = #(0) + #{1..255}
local greenArr = copy redArr #noMap
local blueArr = copy redArr #noMap
local r = local g = local b = 1
if simple then
(
shuffle &redArr
shuffle &greenArr
shuffle &blueArr
)
else shuffle &sel -- slower with many objects
for obj in objs do
(
obj.wirecolor = [redArr[int(r)], greenArr[int(g)], blueArr[int(b)]]
incrementCounters &r &g &b step
)
)
sel = selection as array
clearSelection()
assignRandomWirecolor sel --simple:false --> if simple is not so cool, try the other option
select sel
는이 같은 단지 일반적인 접근하고있다 : 당신이 가서 여기
, 그것은 당신이 그것을 예상 할 것입니다 희망 그 정확한 작업에 적합하지 않을 수도 있습니다. 이 경우 세부 정보를 제공 할 수 있으며 조정할 것입니다.
도움을 주셔서 감사합니다. 이것은 내가 찾고 있던 것이고, 지금은 작동 중입니다! ;) 고마워! –