Хочу реализовать простенький генератор LOD' ов, написал такой скрипт:
fn GenerateLODs obj =
(
baseObj = obj
i = 1
while baseObj.numfaces >= 300 do
(
lodObj = copy baseObj
addModifier lodObj (MultiRes())
lodObj.modifiers[#MultiRes].vertexPercent = 50
lodObj.modifiers[#MultiRes].reqGenerate = true
convertToMesh lodObj
lodObj.parent = obj
lodObj.name = "$lod" + (i as string) + " " + obj.name
baseObj = lodObj
i += 1
)
)
В итоге получился бесконечный цикл!
Переменная baseObj.numfaces не изменяется и проверка в теле цикла каждый раз возвращает true. С точки зрения синтаксиса и логики все правильно и должно работать! Почему так?
Доступ к резюме доступен только по пакетному доступу HR менеджерам зарегистрированных компаний. Узнать о вариантах корпоративных пакетов можно по ссылке.
Castello2401
fn GenerateLODs obj = ( baseObj = obj i = 1 while baseObj.numfaces >= 300 do ( lodObj = copy baseObj addModifier lodObj (MultiRes()) lodObj.modifiers[#MultiRes].vertexPercent = 50 lodObj.modifiers[#MultiRes].reqGenerate = true convertToMesh lodObj lodObj.parent = obj lodObj.name = "$lod" + (i as string) + " " + obj.name baseObj = lodObj i += 1 ) )В итоге получился бесконечный цикл!Переменная baseObj.numfaces не изменяется и проверка в теле цикла каждый раз возвращает true. С точки зрения синтаксиса и логики все правильно и должно работать! Почему так?
Александр Якушев
fn GenerateLODs obj = ( baseObj = obj i = 1 num = baseObj.numfaces while i < 5 do ( lodObj = copy baseObj addModifier lodObj (MultiRes()) lodObj.modifiers[#MultiRes].vertexPercent = 50 lodObj.modifiers[#MultiRes].reqGenerate = true convertToMesh lodObj num = lodObj.numfaces lodObj.parent = obj lodObj.name = "$lod" + (i as string) + " " + obj.name baseObj = lodObj i += 1 print num ) )на сфере возвращаеттут, может быть, скрипт просто не успевает применять MultiRes()
igorznag
fn GenerateLODs obj = ( baseObj = obj i = 1 while baseObj.numfaces >= 300 do ( lodObj = copy baseObj addModifier lodObj (MultiRes());redrawViews() lodObj.modifiers[#MultiRes].vertexPercent = 50 lodObj.modifiers[#MultiRes].reqGenerate = true convertToMesh lodObj lodObj.parent = obj lodObj.name = "$lod" + (i as string) + " " + obj.name baseObj = lodObj i += 1 ) )Castello2401