国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【Terraria機制】傳送槍子彈的射速

2019-01-08 02:15 作者:putianyi888  | 我要投稿

今天電路群內(nèi)在討論傳送槍子彈的射速。很久以前白霜心做過測試,每秒348格。最近我做過的測試顯示第一幀5格。顯然傳送槍子彈每幀前進的距離是小數(shù)格,所以348這個數(shù)據(jù)也不一定準(zhǔn)。通過查看源碼,連蒙帶猜,大致搞清楚了傳送槍子彈的精確射速。

結(jié)論:傳送槍子彈射速是93像素/幀

首先是實驗值。348格折合348*16=5568像素。5568附近的5580是60的倍數(shù),因此猜測子彈實際前進了5580像素,速度折合93像素/幀。

然后是源碼查詢過程。

在 ItemID.cs 里查找“portal”可以找到傳送槍的id是3384。

在 Item.cs 里查找“3384”可以找到傳送槍的屬性,可以看到傳送槍子彈的id是600。

在 Projectile.cs 里查找“600”可以查到傳送槍子彈生成過程,通過38282、38283、38285、38288行可以知道傳送槍子彈的id是601,射速是3。

在 Projectile.cs 里查找“601”可以看到傳送槍子彈的屬性。其中有一個“extraUpdates”屬性比較特殊,大多數(shù)射彈都沒有。同時可以看到子彈的碰撞箱是10*10。

在 Projectile.cs 里查找“update”可以看到關(guān)鍵的刷新函數(shù)(射彈刷新的基本概念可以參考CV1815655

可以看出來,每幀中一個射彈刷新次數(shù)是 extraUpdates+1,所以傳送槍子彈每幀刷新31次,每次前進3像素,每幀總共前進93像素,與實驗值吻合。游戲設(shè)置額外刷新次數(shù)是為了避免射彈速度過快錯過關(guān)鍵的碰撞。93這個奇怪的數(shù)值來源于射彈速度3和額外刷新次數(shù)30兩個設(shè)定,可能沒有實際的原因,只是程序員隨便搞的。

【Terraria機制】傳送槍子彈的射速的評論 (共 條)

分享到微博請遵守國家法律
永福县| 济源市| 岳普湖县| 东台市| 巴彦县| 西峡县| 海丰县| 兴义市| 法库县| 古丈县| 兴安县| 湖南省| 平和县| 正镶白旗| 安远县| 建湖县| 威信县| 南郑县| 石阡县| 洛宁县| 呼伦贝尔市| 铁力市| 乌鲁木齐县| 北川| 诏安县| 突泉县| 甘谷县| 苏尼特右旗| 昭平县| 兴化市| 盘锦市| 洪湖市| 米林县| 府谷县| 陆丰市| 乡宁县| 青浦区| 渑池县| 桐乡市| 兴安盟| 来凤县|