ブロック崩し
C++,DirectX,個人開発
-
作品概要
-
概要
- DxLibを用いて2Dのブロック崩しを制作しました。
-
使用言語
-
使用ツール
- DirectX 12
- DxLib
- Visual Studio 2022
- Rider 2023.1.2
-
開発人数
-
制作期間
-
作品データ
作品PV
製作時のこだわり
- コードの可読性
- 他の人が中身の関数をみた際にどのような処理を行うかわかるようにコメントを多く書きました。引数のある関数のコメントを書く際はDoxygen形式を用いて書くように意識しました。
マウス処理部分の関数
- フォントや音楽のインストール部分・再生部分
- フェードイン・フェードアウト
- DxLibではDrawBox()にアルファ値がなかったため、SetDrawBlendMode()を用いることでフェードイン・フェードアウトの実装を行いました。
フェードの処理を行う関数にはフェードの時間指定を行えるようにしてなるべく扱いやすいように工夫しました。
game.cpp
game.h
- FPS処理
- コード内でフレームレートを指定し、実際にゲーム画面がそのフレームレートに合うようにコードを書きました。
今回の処理ではフレームレートによってゲーム内のスピードも変わってしまうので、固定フレームレートでのみ行える手法となってしまいました。今回のようなゲームでは固定のほうが処理がしやすいと思ったのですが、今後3Dのゲームを作る際にはより滑らかな動きが必要とされるので可変式の組み方を考える必要があると実感しました。
fps.cpp
fps.h
- ボタン処理
- ゲーム内でよく使うボタンの機能をクラスとしてまとめて作りやすくしました。コンストラクタでボタンのサイズや色の設定などを行えるようにし、ボタンが押された際のSEの再生などもクラス内で処理を行いました。
Button.cpp
Button.h