※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

技術指南/フレームワーク

ここではゲームを作るにあたって共通して使われるコンポーネント?要素技術について紹介します。
ただ,ここに上げる要素技術は作る人によって違いどれが正解とも言えないです。まさに十人十色。
今回は実装の一例として紹介します。これを元に自分の使いやすいクラスを作るべきだともいます。

※ただしここにあるソースは一部開発中もモノも含まれていますので利用する場合は適宜調整をお願いします




FPSクラス
まずなんといってもゲームにはFPSの管理が必要です
FPS(Frames Per Second)で一秒あたりの画面更新回数みたいなもんです
大抵のゲームはFPS60とかですが一部処理が重いものはFPS30まで制限しているものもあります
MMDゲームを作る場合はFPS30になることが多いと思います。単純にMMDモデルが重いからです。
FPSには大体2通りあると思います。ひとつは固定型,もう一つは可変型です。
固定型は処理落ちしない限りそのFPSで回り、正確にゲーム内の処理Stepで処理したいときに適する
可変長は処理落ちするとそれに合わせてゲーム内の移動距離を変えてしまい安定しているように見せる

  • ソース(固定FPSタイプ)
    • Fps.h
+ ...

    • Fps.cpp
+ ...

  • 使い方
  1. Fps fps;//定義
  2. ・・・中略
  3. fps.fps_wait(60);//60フレームで処理
  4. fps.draw_fps(0,460);//[0,460]の座標に表示
  5.  


PAD入力クラス
PADからの入力を処理するクラスについてです
ゲームだと,連射のように毎フレーム取得するものと押された瞬間など立ち上がりを検知する必要があります
以下のソースでは
  • 今の状態を取得するNow系関数(now_stickなど)
  • 押されたフレーム時にtrueとなるEdge系関数(edge_buttonなど)
の二種類が使えます
コマンドなどの処理もあるのですが個人的あまり使う機会がなかったので今はなしとします

  • ソース
    • Padinput.h
+ ...

    • Padinput.cpp
+ ...

  • 使い方
  1. Padinput inp;//定義
  2. inp.input_config();//必要ならば
  3. //・・・中略
  4. inp.input_Process();//毎フレーム呼ぶ=更新関数
  5. //・・・中略
  6. if(inp.edge_button(0,1)==true)//ID=0のボタン1がこのフレームで入力されたか@過渡応答
  7. {
  8. //・・・中略
  9. }
  10.  


SEクラス

SAVE/LOADクラス
誰か書いてくれると助かります

Cameraクラス