Re: [遊戲] 橢圓形移動範例
看板RPGMaker (RPG製作大師 - RPG Maker)作者bill (太極狂龍)時間19年前 (2006/12/05 20:35)推噓0(0推 0噓 0→)留言0則, 0人參與討論串2/2 (看更多)
檔案我是用RM2K3打開的,沒辦法看到事件的外觀,只能用編號表示。
1.EV0005的那兩行移到EV0002前面,
少開一個事件"也許"可以省一點記憶體。
2.關於光點位置的演算法我有個點子但沒驗證過,姑且聽聽好了
I.計算光點位置
px = A * cos(θ) + hx
py = B * sin(θ) + hy
px = 光點的X座標
py = 光點的Y座標
hx = 主角的X座標
hy = 主角的Y座標
θ = 光點的θ座標
A = 橢圓路徑的X方向半徑
B = 橢圓路徑的Y方向半徑
II.移動光點,每frame執行一次
θ = θ + ω
ω = 光點移動的角速度
在RM2K中的實作方法
1.找三個變數代表A、B、ω值,開個自動執行事件輸入數值,大小隨便定
2.開一個定期並列處理的事件,事件內容:
.將主角的XY座標存成變數hx、hy
.計算cos(θ)和sin(θ)
.計算px = A * cos(θ) + hx和py = B * sin(θ) + hy
.將圖片移動到座標(px,py)
.將θ加上ω
其中最大的問題是cos(θ)和sin(θ)的計算
RMXP中有內建函數可以用
但在RM2K裡怎麼辦?
嗯...可以用查表的。
事先算好cos(0.1)、cos(0.2)......的值代入變數中
計算時則用內插法求值
RM2K不支援小數點,可在計算過程中把所有的變數值乘
上1000,最後再把答案除回去,可以保持一些精度
只是得小心數值太大會爆掉
不知道能不能用,參考看看。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.117.67.28
討論串 (同標題文章)
RPGMaker 近期熱門文章
PTT遊戲區 即時熱門文章
14
18