UEのごちゃごちゃにメモ

メモです。

最終更新
2023/06/06



Action Mapping

Input Action Fireを設定したいときには、 Project Settingより、
fireと検索すると Engine - Inputの中でFireとして認定するアクションを決定できる。

BPでInputAction Fire nodeでそれを検知することができる。



Animation Montage

単にはAnimationの事だと思っても大丈夫。Animation Sequenceをまとめて便利に扱うための存在。

アニメーション モンタージュ (略して モンタージュ) を使うと、ブループリントまたは C++ のコードで Animation アセットを直接制御することができます。 アニメーション モンタージュを使うと、複数の種類の アニメーション シーケンス をひとつのアセットに結合して、それを セクション に分けて、個別または組み合わせて再生することができます。 モンタージュ内で イベント を発行して、様々なローカルのタスクやレプリケートしたタスクを行うことができます。例えば、サウンド キューやパーティクル エフェクトの再生、弾薬数などのプレイヤーの値を変更、アニメーションでルート モーションが有効になっていることを前提にネットワーク ゲームで ルート モーション のレプリケートをすることもできます。




Camera

Cameraの基本的な設定項目


メインカメラ設定する

Play時に選ばれるカメラを設定する方法

Level Blueprintを開く。

設定したいカメラをOutlinerで選択したまま、Level Blueprintで右クリックして、

Create a Reference to Cine Camera Acotor1を選ぶ。
OutlinerからのReferenceのTargetが呼び出せる。

GetPlayerController(Play時のPlayer Targetを受け取る)を作って、そこからのばして、Set View Target with Blendを作る。
new view Targetにcamera Actorを入れて、beginPlayで実行するようにする。


https://webhoric.com/programming/unreal-engine/%E3%80%90ue4%E3%80%91%E3%83%97%E3%83%AC%E3%82%A4%E6%99%82%E3%81%AE%E6%9C%80%E5%88%9D%E3%81%AE%E3%82%AB%E3%83%A1%E3%83%A9%E3%82%92%E6%8C%87%E5%AE%9A%E3%81%99%E3%82%8B/

これでPlayするとカメラの視点になって、出力される。
ただ、もちろんこれだけでは、動くことはできないが、カメラのLocationを動かせば始点がもちろん動く。





キャラクターに対してThirdPersonとFirstPerson切り替え

キャラクターのBPに対して、
FirstPersonとThirdPerson用のカメラを配置して、BPで片方をActiveにしたりしなかったりする。



キャラクターカメラの位置自動調整



カメラの視錐台ピッタリの大きさに平面を表示する。


必要Plugin
Image Plate



Tracking



Unreal Remote2

iOSのアプリ Unreal Remote2をインストールする。

Unreal EngineとiOSが同じネットワークに接続されていた場合、
アプリ側にUnreal側のPCのipを打ち込んであげる。

Unreal側のProject settingより、
transportと検索して、UDP Messagingを探す。
Unicast Endpointがデフォルトでは0.0.0.0:0になっているので、
Unreal側の (ex)192.168.10.1:0とかにする。


PluginからVirtual Production Utilities, Virtual Cameraの二つをEnableにする。

LivelinkもEnableにする。

Remote Control API

RemoteSession

Apple ARKit


Virtual Production Utilitesを入れたため、Place ActorsのところにVirtual Productionの項目が追加されている。
Virtual Caemra2 Actorをレベルに出す。

アプリ側でConnectを押してUnrealとつなげる。
Window > Live Linkを出しておく。

Sourceを押して

Message Bus Sourceを押すと、iOS端末の名前がでてくる。追加する。
Activeになっていればおk

Virtual Camera 2 ActorのComponentからVcamを選択して

outputから is Activeをonにする。

Live Link Subjectをcamera transformを選ぶ。

Enabledをonにすると、さっそくカメラが連携される。

アプリ・unrelaともに画面が色々変更される。

カメラの角度と移動も検知してくれている。




Video I/O


Video In Blackmagic AJA(Media Bundle)

必要plugin

Blackmagic Media Player

Media Framework Utilites


ContentBrowserよりAdd/ImportからMedia > Media Bundleを作る。

MediaBundleを作ると以下の二つができあがる。

Media Bundleを開いて、Media SourceをBlackmagicMediaSoruce, or AJA Media Srouceを選ぶ。

Blackmagicの中を開けていくと、Configurationの▽を押して、inputのSDI, HDMIのFormatを決める。

その他細かい設定が終われば、

Media Bundleをそのままレベルに投げると、映像ソースが配置できる。

https://docs.unrealengine.com/4.27/ja/WorkingWithMedia/IntegratingMedia/ProVideoIO/BlackmagicQuickStart/

Media BundleのDetailsより、Media Bundle > Request Play Mediaを押すと再生されたり、SDIの信号が動き出す。

https://docs.unrealengine.com/4.27/ja/WorkingWithMedia/IntegratingMedia/ProVideoIO/BlackmagicQuickStart/




Video In Blackmagic


Video out Blackmagic



Content Browserより、Media > Blackmagic Media Outputで作成する。

https://docs.unrealengine.com/4.27/ja/WorkingWithMedia/IntegratingMedia/ProVideoIO/BlackmagicQuickStart/

BMD Media Outputをダブルクリックして開く。
input同様Configurationから開いて、信号を選択する。

Saveして閉じる。

https://docs.unrealengine.com/4.27/ja/WorkingWithMedia/IntegratingMedia/ProVideoIO/BlackmagicQuickStart/

Window > Developper > Media Captureを開く。

Media Viewport Captureを選んで+を押して、
0 > Cameras +をさらに押して、出力したいCamera Actorを選ぶ。
Media OutputにBlackmagic Media Outputを選択する。

Capture Optionは任意で調整してもらって、
左上Captureを押すと、SDIなどのoutputから出力されるようになる。


Video In AJA

必要plugin

Media Framework Utilites


Video out AJA



Media Capture OutをPlayに連動


BPにて CaptureをPlayと同時にOnにするように仕込む。

Level Blue Printに仕込む。
型がBlackmagicMeidaOutputのObject referenceの変数を作る。

Instance Editable(変数の目のアイコンと同機能、他からのぞけるようにする。)をtrueにしておく。

Instance Editable

コンパイルして、Default Valueに自分で作った、Blackmagic Meida Outputを選択しておく。


この今作った変数のgetterを置いて、

create Media Captureをつなげる。Meia capture objectがreutrnに帰ってくる。

Create Media Captureからのばして、Promote to variableで変数へ昇格させる。

getterを用意して、Capture Active Scene ViewportとStop captureにつなげる。後は、キーボード入力によるショートカットもついでにつけておいて、それでflipflopでon/offできるようにしておく。

error

LogMediaIOCore: Error: Can not start the capture. The Render Target size doesn't match with the requested size. SceneViewport: 703,572  MediaOutput: 1920,1080


New Editor Window (PIE) または Standalone Game でプロジェクトをプレイするときのみ、エディタからビデオ キャプチャが動作します。デフォルトの Selected Viewport モード、または Simulate モードでは機能しません。
さらに、プロジェクトのビューポート解像度 (つまり、Unreal Engine が各フレームを生成するレンダリング画像のサイズ) は、これが出力ビデオ フィードの適切なサイズになるように、アクティブなメディア プロファイルの出力解像度に一致する必要があります。

https://docs.unrealengine.com/4.27/ja/WorkingWithMedia/IntegratingMedia/ProVideoIO/BlackmagicQuickStart/



この記事が気に入ったらサポートをしてみませんか?