Wwiseのインストールについての備忘録
非商用に限り無償使用可能
ただし性能は制限される。
Audiokineticに無料登録。
https://www.audiokinetic.com/ja/
とりあえずSDKやらC++やら全部インストール。
プロジェクトごとにインテグレーションするかエンジン自体にインテグレーションするかがあるがとりあえず検証用なのでプロジェクトに。実際プロジェクトに突っ込むほうが楽そう。
プロジェクト見つからないときはBrowse for projectで検索
インテグレーションするときOSXのSDKがないって言われたのでOSXにチェックを入れ直して再インストールしたら問題なく行けた。
備忘録で書いてるけど正直インストールしてUE4用にインテグレーションするなら書いてあるとおりにやるだけで行ける。Wwiseすごい。
実際にどういったことができるかは、先人たちの情報に助けられることになりそうだが、これで音ゲーが捗りそう。目指せ、Airtone。
ぷちコンに出す際はWwiseは商用利用じゃないから使っても良いんだろうか・・・(多分良いとは思うが)
逆行列についての備忘録
ゲームにおける各行列
オフセット
| 1 0 0 0 |
| 0 1 0 0 |
| 0 0 1 0 |
| x y z 1 |
スケール
| x 0 0 0 |
| 0 y 0 0 |
| 0 0 z 0 |
| 0 0 0 1 |
回転
X軸
| 1 0 0 0 |
| 0 cosθ sinθ 0 |
| 0 -sinθ cos 0|
| 0 0 0 1 |
Y軸
| cosθ 0 -sinθ 0 |
| 0 1 0 0 |
| sinθ 0 cosθ 0|
| 0 0 0 1 |
Z軸
| cosθ sinθ 0 0 |
|-sinθ cosθ 0 0 |
| 0 0 1 0|
| 0 0 0 1|
回転は面倒くさい。
各行列を掛け合わせることで連続的な変換になる。かける順で結果が変わる。基本的にはスケール、回転、オフセットの順でかける。
|_11 _12 _13 _14|
|_21 _22 _23 _24|
|_31 _32 _33 _34|
|_41 _42 _43 _44|
と対応する行列を掛けることで結果が
|1 0 0 0|
|0 1 0 0|
|0 0 1 0|
|0 0 0 1|
になる行列のこと。これを利用することでゲーム上ではワールド座標系からローカル座標系に変換することができる。
4行4列の逆行列の求め方
余因子行列を用いる方法、掃き出し法を用いる方法がある。
4行4列の逆行列を求めるには、 余因子行列を用いる方法と、 掃き出し法を用いる方法の二つがある。
うだうだとたくさん書いたが実はUE4ではBPでは行列の取得はできない。
代わりにTransformを受け取ることができ、そこにはLocation、Rotation、Scaleが格納されており非常に操作しやすい。
今回はこれを使って↓のようなミニマップ的なものを作るための土台を作るためのBP操作の備忘録。
ただし今回のBPはVR用の備忘録なので3D空間に配置したメッシュとメッシュの座標を合わせるだけ。基本的には同じような感じで2D⇔3Dができる。
①サイズの異なるメッシュの作成
配置
②とりあえずデバッグ用にカメラ向きの先にレイを飛ばす
当たったオブジェクトを判別。相互で位置の共有ができるようにするため。
クリックしたときにレイのヒットしていたポイントにSphereを出すために値を保存
③ヒットしたオブジェクトのTransformと位置を共有したい先のオブジェクトの逆行列後のLocationを取得。相互に使用するため2つ用意した。UE4ではInverseTransformLocationがその座標系に合わせて逆行列を掛けローカル座標にするといった(解釈間違ってるかも?)有能なノードがあるのでそれを使用。
逆行列してローカル座標系にしたLocation共有先のTransformをかける。
マジックナンバーが腹立たしいが解決方法がわからず。
イメージ的にはこんな感じしたものを元に戻す感じ。
それらを配置するように値を保存し、そこにSphereをスポーンするような処理を書いてやる。
ちょっと広めに見たらこんな感じ
結果
こうなる
処理不可がそこそこ食いそうな気がするのでもう少し処理不可を軽減したいのであれば、限定的な使い方ではあるが、基準点を2つ用意して位置の最大値最小値を計算して合わせる方法があるがこちらは力技感があるのでがんばってください。
逆行列はアニメーションモデルを読み込んだ際にボーンの親子関係などで触った以来だったがUE4では難なく使用できた。
こいつを使うことで侵入してきたものがどちらから侵入してきたかと言った取得もできるので非常に有用。
不備や間違いなどあればtwitterで教えていただけると助かります。
Viveが届きました
いろいろ体調が悪い中Viveが届きました。