ラベル UE4 の投稿を表示しています。 すべての投稿を表示
ラベル UE4 の投稿を表示しています。 すべての投稿を表示

Project Tangoの最近の変更を軽く追いかけたメモ

2016年6月6日月曜日

C APIのヘッダ的な意味で。
じきにUE4+Tangoの組み合わせで使いたいので、ベースリビジョンにはhttps://github.com/opaquemultimedia/ProjectTangoPluginに取り込まれているものを利用。
そしてProject TangoのSDKダウンロードページhttps://developers.google.com/project-tango/downloads?hl=ja#project_tango_sdk_filesから得られる最新(2016年5月にリリースされた"Mira"のもの)を入手。
簡単にdiffを取れるかなーと思って開いてみると、doxygen用の記法を変えたようでほぼ全行のdiffが出てきた。最低限1行コメントを削ったり行末スペースを加工してdiffを取ったところ、それでも2,000行ぐらいのdiffがでてきた。
コメントの再フォーマットなどの影響をずいぶん受けていると感じたため、clocコマンドで複数行コメントを削り、それをある程度手加工したうえでclang-formatへ通して最低限まともな感じにした*1
得られたdiffがhttps://gist.github.com/muojp/9db610e6dc14be97a033a160c9d89674
いくつかenumの追加と構造体追加にそれら関連の定数追加、そして現状どこまで本気で動くか分からないユーティリティ関数がいくつか*2追加されている。
ん???
- TANGO_RECORDING_MODE_SCENE_RECONSTRUTCION = 1,
+ TANGO_RECORDING_MODE_SCENE_RECONSTRUCTION = 1,
どこが違うっけ、としばし悩んでRECONSTRUCTIONのtypo修正かーーーと気付いた。
Android本体でも時折あったやつですね。今回は時間切れにつきここまで。
UE4.11+に対応していない理由に関して、https://github.com/opaquemultimedia/ProjectTangoPlugin/issues/1#issuecomment-223446785になかなか悲しい事情が書かれてた。というわけでTango Coreチームの次リリース時にきっと更新される。
[*2] 元ファイルではexperimentalとわざわざ明記されているものも多い。

Unreal Engine 4 ビデオチュートリアル記 #5

2015年6月20日土曜日

前回: Unreal Engine 4 ビデオチュートリアル記 #4
前回はベルトコンベア作りだった。
やっている時には結構つらいと思ったけれど、振り返ってみると辛かったのは慣れが剥落してUI体系を触り直しになったあたりで、やっていたことはシンプルだった。
コライダーで見つけた対象へと適切に力を加えるという話だった。
今回でBlueprint Jump Startsシリーズは終わり。概要によると「ゲームの機能群をモジュール化されたBlueprintableなコンポーネント群へと切り分ける方法を紹介する」ものということ。

Blueprintableコンポーネントでゲームの振る舞いを構造化する

Using Blueprintable Components for Game Behavior

18分ぐらい。
今回は、これまでのものとは趣が違った。ゼロからハンズオンやっていく形ではなく、ワークフローを観て学ぶ感じだった。
UE 4.7以上でメインとなったBlueprintable Componentsについて。UnityのPrefabみたいなやつ。
ステージ上に配置したオブジェクトにスプライトや既存のBlueprint群を割り当てていき、それを再利用可能なBlueprint Classへと変換するのが前半のところ。
変換後のものを編集するためには、他のBlueprint Classと同様に一旦BP Editorで開くことになる。
当然のようにサブコンポーネントとなったBPが変数としてエクスポートしているものはUEのレベルエディタ側で編集できる。

感想

「UnityのPrefab、UE4ではどう扱うんだろう?」と思っていたところの実際の動きを眺めながらふんわり掴めるので良いチュートリアルビデオだった。
なお、前回の最後に書いていた動画再生とUE4操作のバランス取りについて、今回は実際に手を動かして編集するフェーズがなかったので次回へ持ち越し。

Unreal Engine 4 ビデオチュートリアル記 #3

2015年4月30日木曜日

前回: Unreal Engine 4 ビデオチュートリアル記 #2
前回はシーンレンダリング時の色合いを変化させる(Color Grading)方法とスローモーション効果についてだった。
今回はその続き。

ジャンプ台の作り方

https://wiki.unrealengine.com/Videos/Player?series=PLZlv_N0_O1gYeJX3xX44yzOb7_kTS7FPM&video=6admWItFIsE

3分弱。
ジャンプ台のメッシュをCylinderで適当に作って、コリジョンタイプをデフォルトのBlockAllDynamicからOverlapAllDynamicへ変更することで自キャラが踏めるようにする。
あとはActor Begin Overlapのイベントを受け、対象をThird Person Characterへキャストできたらその対象に対してLaunch Characterで吹っ飛ばすというもの。
とても分かりやすい流れだった。
しかし、UE4自体が日本語UIになっているとBPの補完候補絞り込み部分で非常に不便(castなどがカタカナでないと出なくなる)なので英語UIにしようと思った。

ホバーコンポーネントの作り方

https://wiki.unrealengine.com/Videos/Player?series=PLZlv_N0_O1gYeJX3xX44yzOb7_kTS7FPM&video=5kltaGld6fQ

15分弱。長い。
プリミティブに作用して対象を空間へ浮かせておけるようにするコンポーネントを作るという回。
Line Trace by Channelを使って浮遊表現をする。
Promote To Variable便利。適当な値を指定してBPを作り、それを変数化するとデフォルト値がさきに指定したものになるのでよく使うテクニック、という話をしていた。
内部で変数定義したものを外部へと公開するのもとても簡単。
Line Trace by Channelで対象オブジェクトが何かにぶつかった場合の処理を作っていく部分が少々複雑だった。Break Hit Resultでヒットテスト情報を分解し、World Locationとの差分の長さを適当なファクタで割り、結果を適当な範囲へと正規化してImpact Normalに掛けたものをAdd Forceでオブジェクトへ反映する、というところまでがメイン。
これだけだと地面すれすれで跳ねる度に反発が大きくなっていくのでLinear DampingAngular Dampingを設定して制限する、というのが仕上げ。
シミュレーション実行中にプロパティを変更した際、kを叩くと値を保存できるというのが便利そうだった。

図1 ホバリングするコンポーネントのBP

2つめが長かったので今回はここまで。次回で最初のシリーズが終わるはず。