CF2.5 重力の作り方② イベント編
長く空きましたが、前回の重力講座の続き、今回は実際にイベントを組んでみてみましょう!
下準備
それでは新規フレームを作成し、どこでもいいので「アクティブオブジェクト」を作成してみて下さい。
プロパティは何もいじらずでOKです。動作も「静止」のままにして、画面外に配置しておきます。
ここから、「クリックしたら画面上方から、先程作成したオブジェクトが重力を伴って落ちていく」という動作を作って行きます。
作ったものがコレ
はい、これだけです!
流れとしては、何の動作設定もしていないオブジェクトをクリックすることで決まった場所(適当な場所でOK!)に出現させたら、それを常時実行で強制移動させる形ですね!
イベント文を見ていきます。
2行目で加速度を、3行目で計算された加速度分をY軸下方に強制移動させています。
常に実行=1フレーム毎に実行されますから、1フレーム目にはY軸に1を足す。2フレーム目には2を足す。…という風に、
1フレーム毎に動く距離が増えていく
という処理ができましたね!
それではフレームを実行してみて下さい。
オブジェクトが時間とともに加速度を上げて落下して行きますね!
変数Aには「重力」とか「落下速度」なんて名前を付けてやれば分かりやすくなると思います(⌒▽⌒)
今回は変数に1を足していますが、イベントエディタ中では浮動小数を使えますから、変数Aに足す数字を小さくしてやれば、ゆっくりと落下する=物体の軽さを表現することが可能です。
こうして分解して考えれば、最低限重力っぽい動きをつけるのは簡単ですね!
ここに地面に着地した時や、ジャンプしたり、移動しながら落下したり、といった処理を加えて動作を作っていくわけですね(^o^)
だが本当に苦労するのはこれから
というわけで、まだまだ私も重力を伴う複雑な動作制御は試行錯誤しながらやっております( ´_ゝ`)
次回は機会があれば重力制御しながら移動するオブジェクト(マリ⭕️で言うとこの栗坊?みたいな動き)の作り方をやれたらいいなあと思います❗️いつになるかは全く未定ですが(;´Д`(小声)
拙い説明ですが、少しでもゲーム作成の手助けになれば幸いです。
閲覧ありがとうございました(⌒▽⌒)