※難易度によっては見えなくなる。
クライミングするための位置がフォーカスしないと表示されない。
難易度によっては表示されないのでそれを考慮した設計かもしれないが、アサクリなどのように目立たなくなるので風景を見たい人にとってはいいかもしれないと思いました〇。
フォーカスについて
【ホライゾン2】フォーカスの機能と使い方 | ホライゾンフォビドゥンウェスト - 神ゲー攻略
※難易度によっては見えなくなる。
クライミングするための位置がフォーカスしないと表示されない。
難易度によっては表示されないのでそれを考慮した設計かもしれないが、アサクリなどのように目立たなくなるので風景を見たい人にとってはいいかもしれないと思いました〇。
フォーカスについて
【ホライゾン2】フォーカスの機能と使い方 | ホライゾンフォビドゥンウェスト - 神ゲー攻略
図書館でサウンドプログラミングの本を読んでみたら[mmsystem.h]というのを使っていたのでそこから色々調べてみてまとめてみました。
waveファイルの再生(PlaySound) | WINAPI入門~bituse~
#include "iostream" #include "Windows.h" #include "mmsystem.h" int main() { if (!PlaySound(TEXT("戦慄.wav"), NULL, SND_SYNC)) { std::cout << "再生できません\n"; } system("pause"); return 0; }
VSのプロパティにて以下を設定
・[C/C++]->[全般]->[追加のインクルードディレクトリ]->[C:\Program Files (x86)\Microsoft SDKs\Windows~\Include]を追加
・[リンカ]->[全般]->[追加のライブラリディレクトリ]->[C:\Program Files (x86)\Microsoft SDKs\Windows~\Lib]を追加
・[リンカ]->[入力]->[追加の依存ファイル]->[WinMM.Lib]を追加
第一引数は再生対象のサウンドファイルか、リソース名を指定する。
第二引数はインスタンスハンドルを指定する。第一引数にファイル名を指定した場合は、NULLを指定する。
第三引数は再生フラグを指定する。参考:waveファイルの再生(PlaySound) | WINAPI入門~bituse~
参考:MCIコマンドによる音声ファイル再生 | WINAPI入門~bituse~
waveファイルだけでなく、mp3ファイルや動画ファイルの再生なども扱うことができる。
詳細は参考先のサイトを見る。
後日…覚えてたら……
最近よく見かけるコールバックを簡単に書いてみた!
ここでは単純にUpdateにてループしているときにコールバック関数があれば実行を行い、中身を消しています。
<iostream>って書くとタグとみなされて消えるので""に囲ってます。
#include "iostream" #include "functional" class Func { private: typedef std::function<void()> FunctionCallBack; public: Func() {} ~Func() {} void SetFunction(FunctionCallBack func) { m_func_callback = func; } void Update(float delta) { if (m_func_callback) { m_func_callback(); m_func_callback = NULL; } } private: FunctionCallBack m_func_callback; }; void Disp() { std::cout << "aiueo\n"; } int main() { Func* m_func(new Func); m_func->SetFunction(Disp); int i = 0; while (i++ < 100) { m_func->Update(0.0f); } return 0; }
実際に使う場合は、例えば画像を読み込みした後にコールバックとして画像の生成をして表示を行ったり、ローディングの完了後にコールバックとして次のシーケンスへ移動するための処理を呼ぶようにしたり、メールの送信処理が完了した後のコールバックとして送信されましたの表示をするなど…いい例が思いつきませんね……