我創建了以下腳本來生成「煙花」(術語鬆散地使用)作爲指導我的導師。它基於我必須使用的骨架腳本。Maxscript動畫「煙火」腳本動畫卡住
有微調控制某些參數,但是對於我的生活我無法弄清楚什麼是錯的!請幫幫我!!!
任務是通過腳本來創建動畫,一個球體上升,其中的臉部「爆炸」,並通過時間尺度向下改變方向。
(焰火上升,爆炸和碎片墜落地球)
我相信我已經寫是正確的,但是沒有動畫實際產生。儘管我盡了最大的努力和數月的努力。
我是新來的編碼,並沒有註冊任何編碼。我想要做的就是學習如何建模。不過,我的導師是我傳球的關鍵。
在這個時候,我準備好「瘋狂退出」,並且只是從我的礦井出去。任何幫助將不勝感激。
這是迄今爲止我已經寫劇本......
-- Empty varables to be called in or adjusted by spinners
numOfSpheres = 0 --number of exploding spheres
sphereRadius = 0
creationBoxSize = 0 -- spawn radius in what box size?
objs = #() -- objs created go to empty array!
maxHeight = 0
startTime = 0
dropping = false --boolean flag to trigger the falling sphere stage
animate on
(
for i = 1 to numOfSpheres by 1 do
(
at time (startTime + 50.000) (meshop.bevelFaces objs[i] #{1..objs[i].numFaces} 0.0000001 0)
at time (startTime + 50.001) (meshop.bevelFaces objs[i] #{1..objs[i].numFaces} 0.0000001 0)
at time (startTime + 100) (meshop.bevelFaces objs[i] #{1..objs[i].numFaces} 100 0)
at time (startTime) (objs[i].pos = objs[i].pos)
local height = maxHeight
for t = 5 to 100 by 5 do
(
height = height - 2
at time (startTime + t) (objs[i].pos = objs[i].pos + [ 0, 0, height])
)
)
)
rollout FireWorks "FireWorks"
(-- button ui code starts here
label lbl1 "By Luke Fahy" style_sunkenedge:true width:67 height:17
spinner count "FireWorks: " type:#integer range:[1,100,10] -- 1 to a 100: default value of 10: integer = whole number not fraction!
spinner size "Size: " type:#float range:[0.1,30,1]
spinner sPlane "Spawn Plane: " type:#integer range:[1,200,30]
spinner maxHeightSpinner "Max Height: " type:#float range:[1,100,14]
spinner startTimeSpinner "Start Time: " type:#float range:[1,100,1]
button create "Create Fireworks"
on create pressed do -- Event handler code start
(
numOfSpheres = count.value
sphereRadius = size.value
creationBoxSize = sPlane.value
maxHeight = maxHeightSpinner.value
startTime = startTimeSpinner.value
dropping = false
--create spheres
for i = 1 to numOfSpheres by 1 do
(
objs[i] = sphere radius:sphereRadius
local r = random 0 255
local g = random 0 255
local b = random 0 255
objs[i] .wirecolor = (color r g b)
objs[i] .pos = [random creationBoxSize -creationBoxSize, random creationBoxSize -creationBoxSize, 0] -- random possative and negative x/y values to create spawn box.
convertToMesh objs[i]
meshOp.explodeAllFaces objs[i] 0
)
)
) -- button ui code end
createDialog FireWorks width:200
而且,我的意見和縮進任何建議,將不勝感激。 (格式化似乎已經扔出去後切和過去的窗口,我的道歉,我新來這個論壇的文件將作爲附件。)
親切的問候, ShineSmith :)
附加信息:
此外,這是我的導師給我的基礎工作的腳本。
(這裏需要對象數組或單一對象的名字,其他人使用的單球的$名稱和它的實例複製多個「煙花」)
convertToMesh $
meshop.explodeAllFaces $ 0
update $
v = 20
animate on
(
at time (sliderTime+50.000) (meshop.bevelFaces $ #{1..$.numFaces} 0.0000001 0)
at time (sliderTime+50.001) (meshop.bevelFaces $ #{1..$.numFaces} 0.0000001 0)
at time (sliderTime+100) (meshop.bevelFaces $ #{1..$.numFaces} 100 0)
at time (sliderTime) ($.pos = $.pos)
for t = 5 to 100 by 5 do
(
v = v - 2
at time (sliderTime+t) ($.pos = $.pos + [0,0,v])
)
)