无码av一区二区三区无码,在线观看老湿视频福利,日韩经典三级片,成 人色 网 站 欧美大片在线观看

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

【逆旅】algodoo進階教程2:彈跳板,傳送帶和重力改變板

2023-09-23 12:37 作者:逆旅譚帝諤  | 我要投稿

通過本次教程,可以讓大家掌握彈跳板,傳送帶,重力改變板等基礎(chǔ)元件制作。

目錄

一、彈跳板

二、傳送帶基礎(chǔ)版

三、重力改變板

一、彈跳板

為了讓小球碰到水平放置的板子有彈跳的效果,則我們可以在該板子的腳本中寫:

onCollide =?(e)=>{

e.other.vel = [ x , y ]

}

就會有如下的效果:

大青の拋物線


二、傳送帶(基礎(chǔ)版)

在 @灰安教主 的地圖中經(jīng)常看到有的關(guān)卡四周有天藍色的傳送帶:

明示點贊

其實它的制作也很簡單:

豎直向上傳送帶:onCollide = (e)=>{

e.other.vel = [ 0 , a ]

}

水平傳送帶:onCollide = (e)=>{

e.other.vel?= [ a?, 0?]

}

注意:1.a的值盡量偏大,具體數(shù)值需按實際運行效果調(diào)試

2.別忘了給傳送帶加上“>>>>”的文字哦


三、重力改變板

1.單球重力改變

要想改變單球重力,那么一切操作只能針對這個球本身。

所以我們要對小球進行加速度的改變。

眾所周知,重力加速度g約等于9.8m/s^2,那么如果我們想讓小球向上加速且像在重力場一樣,就要把小球的加速度改為-9.8m/s^2。

于是就有了如下代碼:

在板子的oncollide里寫

oncollide = (e)=>{

? ? e.other.postStep := (e)=>{

? ? ? ? vel = vel + [0, 2 * sim.gravitystrength / sim.frequency]

? ? }

}

解釋一下:sim.gravitystrength就是g,但我們不能直接用,因為我們是在對小球進行每幀速度改變,因此要除以sim.frequency(每秒運行幀數(shù)),也就是60。△a=2g,故前面要乘二。

同理,如果要向右,則

oncollide?=?(e)=>{

? ? e.other.postStep := (e)=>{

? ? ? ? vel = vel + [sim.gravitystrength?/?sim.frequency, sim.gravitystrength?/?sim.frequency]

? ? }

}

要想改回來,則寫

oncollide?=?(e)=>{

? ? e.other.postStep := (e)=>{}

}

即可。

2.全體重力改變

這個就簡單多了,改變?nèi)w重力,就是改變重力方向。

但是我們只能在重力選項里手動調(diào)節(jié),因此需要找到該控制選項對應的變量進行修改。

通過查表可得,其變量名是sim.gravityAngleOffset,默認值是0,弧度制,方向豎直向下,順時針旋轉(zhuǎn)的弧度數(shù)即為其值。

則我們可以寫:

oncollide?=?(e)=>{

? ? sim.gravityAngleOffset = 3.1415927

}

以此來使全場重力方向向上。

我還利用這個特地做了一期國色比賽,大家可以在這里看一下實際效果。

鏈接:【逆旅】第13期——本末倒置


好了,這一期的教程就結(jié)束了哦

留個作業(yè):請大概寫出上面的視頻里青黑閃方塊和紅白閃方塊的代碼

下期內(nèi)容預告:區(qū)域性碰撞塊(毒氣,傳送帶等)

【逆旅】algodoo進階教程2:彈跳板,傳送帶和重力改變板的評論 (共 條)

分享到微博請遵守國家法律
社旗县| 东兰县| 抚顺县| 衡水市| 长治县| 偃师市| 凤山县| 绍兴市| 桃江县| 平陆县| 棋牌| 桐乡市| 河北省| 揭东县| 九江县| 司法| 姚安县| 万山特区| 大姚县| 丹东市| 绩溪县| 博爱县| 通江县| 礼泉县| 二连浩特市| 宿松县| 元氏县| 梧州市| 惠东县| 长宁县| 阳江市| 许昌市| 中阳县| 增城市| 嘉祥县| 轮台县| 泗水县| 垦利县| 晋宁县| 行唐县| 伽师县|