【第32回】〜Pro Camera 2D〜2Dカメラのセットアップを決定版
Pro Camera 2Dとは
Luis Pedro Fonsecaよりリリースされている、
2Dゲームでのカメラを簡単にカスタマイズ、セットアップができるアセット
2Dカメラのアセットといえばコレ、というレベルで人気の定番アセットですね。
どんな人にオススメ?
- 2Dゲームでカメラのセットアップを簡単に行いたい
- さまざまなカメラエフェクトも実装したい
- プレイヤーに追従するように設定したい
- プレイヤーと敵が画面内に収まる様に動くようにしたい
- ステージごとに移動するカメラを実装したい
使ってみた
2Dゲームを作ってらっしゃる方には有名なアセットだと思います。
カメラにやらせれる様な事はこのアセットで大抵実装可能で、
それも方法が比較的簡単でかなり時短になります。
![](https://temoshiblog.com/wp-content/uploads/2021/08/スクリーンショット-2021-08-10-11.39.02-1024x759.png)
各効果ごとにデモシーンが用意されているのでみてみます。
CameraWindowのデモシーン。
ステージにプレイヤーがいるシンプルなシーン。
Main Cameraのインスペクターをみると、
![](https://temoshiblog.com/wp-content/uploads/2021/08/スクリーンショット-2021-08-10-11.41.44-1024x580.jpg)
Pro Camera 2Dというスクリプトが付いています。
そしてTARGETを設定する場所にPlayerがアタッチされています。
下のEXTENSIONSにはさまざまエフェクトのボタンが並んでいますが、
一番上のCamera WindowのEnableが押されている状態です。
![](https://temoshiblog.com/wp-content/uploads/2021/08/スクリーンショット-2021-08-10-11.42.01-1024x580.png)
ここが押されると自動的にその効果のスクリプトが追加されます!
![](https://temoshiblog.com/wp-content/uploads/2021/08/スクリーンショット-2021-08-10-11.42.46-1024x580.png)
パラメーターがあるので、
効果の詳細はここで調整できそうです。
デモシーンなのでここまでは既に実装されているので再生してみます!
移動するとカメラが追いかけていますね!
この動きだけで2D横スクロールアクションっぽくなります!
Camera Window内のパラメーターを変えてみると、
プレイヤーにビタっとついていくか、極端にやると画面外に行くまで追従しないなど
挙動を変化させることができました。
他の効果も見てみます。
こちらはCinematicsというシーン。
![](https://temoshiblog.com/wp-content/uploads/2021/08/スクリーンショット-2021-08-10-11.58.07-1024x580.jpg)
Cinematicsというスクリプトと、Numeric Boundariesというスクリプトが付いています。
Cinematicsはその名の通り上下に黒い枠が出てきて映画の様な、
カットシーンとかが流れそうな効果です。
このようにTargetに設定しておいたキャラクターに、
設定した時間をかけてフォーカスして切り替わっていき、
Letterboxがその間出てくるという効果ですね。
Numeric Boundariesはカメラの移動が若干ソフトになります。
ついでにShakeも追加してみました!↓
![](https://temoshiblog.com/wp-content/uploads/2021/08/スクリーンショット-2021-08-10-12.20.29-1024x580.jpg)
Create ShakePresetを押して作ってあるShakeの仕方プリセットを設定します。
今はとりあえずNew ShakePresetというデフォルトのまま行きます。
再生してShake!を押すと画面が揺れます!↓
さらについでに、
Cinematicコンポーネント内に関数を設定するところがあるので、
そこにShakeスクリプトのNew ShakePresetを再生する関数を設定します!
![](https://temoshiblog.com/wp-content/uploads/2021/08/スクリーンショット-2021-08-10-12.26.04-1024x580.jpg)
タイミングはOnCinematicFinishedとなっています。
Cinematicが完了したときに画面が揺れればいいのかな・・・
上手くいきました!
こんな感じでスクリプトの関数を取得してあげれば任意のタイミングで効果を実行してあげることもできそうです!
ほかにも大量にできることがあります!
公式のトレーラーで確認できます!
こちら↓
まとめ
いかがでしたでしょうか?
気になった方は是非アセットストアでチェックしてみてください!
こちら↓
2Dゲームのカメラ周りはこのアセットがあればほぼ心配ありませんね。
必須レベルで使えるアセットだと思います。
コードで自分で動かそうとすると結構大変そうな実装もインスペクターで追加、調整でいけますね。
今回はこんな感じで!
それでは💤