#memo

不正確な内容です、UE4についてが多い

LOD Blending

UE4 4.16.1

Static, SkeletalMeshのLODManagement

UE4 4.16.1

距離によるカリング

UE4 4.16.1

単一FBXからのLODImport

UE4 4.16.1

Merge Actorsについて

UE4 4.16.1 SimplygonSDK 8.2.228.2800

UE4のLODまとめ、Simplygonについて

4.14以前のLOD、Simplygonを使用して自動生成したり手動インポートしたりしていたのだけれど、SimplygonがMicrosoftに買収されて一時ダウンロードできなくなったり、UE側にデフォルトでLOD生成機能がついたりそもそもLODにバリエーションがありすぎるなど色…

HLOD (Hierarchical Level of Detail)について

UE4 4.16.1 SimplygonSDK 8.2.228.2800

UE4へのSimplygonのインストール

UE4 4.16.2 SimplygonSDK 8.2.228.2800

BPノードが取り除かれるDevelopmentModeについて

BPノードは、DevelopmentModeかどうかに応じてパッケージ時にノードを取り除く(コンパイルしない)機能がある このDevelopmentModeというの、ビルド設定の、Development、Shippingを見ているのかと思ったらなんか違うっぽく、実際にパッケージングして確認し…

VolumetricFogを出す

VolumetricFogはなにかというと、上記gifのようないわゆる薄明光線が表現できる 最近だとINSIDEの懐中電灯や水中で印象的な使われ方をしていたこれまでUE4でこのような表現をする時は、三角錐やら板ポリにテクスチャ貼ってでやっていたが、ついに4.16のPrevi…

Houdiniで作成したエフェクトをUE4で動かす(VertexAnimationTexture)

先日のGDC2017での公演、Houdini側で頂点アニメーション用のテクスチャを生成してUEで読み込むことで、Houdiniで作成したエフェクトがUE内で表現できちゃうというものがあったvimeo.comUE側にプラグインを入れて云々というものではなく、あくまでHoudini側で…

UnrealC++のデリゲート、イベントについて

UE4のデリゲート関連、なんかいろいろあって混乱しているのでまとめる 元ネタのC#、UEC++、BPエディタでの使用について確認していく

UObjectのコンストラクタのバリエーション

UObjectのコンストラクタの話、宣言に3つのバリエーションが有る ClassName() のデフォルトコンストラクタ ClassName(const class FObjectInitializer& ObjectInitializer) : Super(ObjectInitializer) の形をとるもの 何も宣言しない(GENERATED_BODY()のみ)…

IWYUでコーディングしよう

IWYUとは 4.15で追加された一つの要素として、C++コンパイルの高速化が上げられている アンリアル 4.15 がリリースされました! これは、UEのソースコード全体がIWYU(Include-What-You-Use)という方法で再構築された事によるもので、 従来、Engine.h等、同モ…

仮想関数まわり、NativeEvent関数のオーバーライドについて

miyahuji111.hatenablog.com NativeEvent、ImplementableEventについては上記を参考通常のvirtual付き関数と、NativeEvent指定した関数の継承時の振る舞いについてまとめる

Superクラスについて

BeginPlay()関数の中に見かけがちなSuperクラスについて、標準のC++ではなく、UObject継承のクラスに提供されている何かっぽい

UENUM()マクロの使用

UENUM(BlueprintType) enum class EHoge : uint8 { None, Foo UMETA(DisplayName="Bar"), Huga }; C++11のscoped enumerationつかう なので値を代入する時は型名修飾が必要 EHoge hoge = EHoge::Huga; Enums For Both C++ and BP - Epic Wiki

BPに公開する関数のツールチップ設定

BPエディタでノードにマウスカーソルをのせるとToolTipがでてくる、これはノード自体と、ノード内部の引数で内容が変わったりもしている、これのやり方こんな感じです、以上

BankやEventをWwiseのみで完結させる

Wwise on UE4記事、目次はこちら

UE4でとりあえず音を鳴らしてみる

Wwise on UE4記事、目次はこちら

Wwiseがあると何が楽しいのか、WwiseによってUE4に追加される物

Wwise on UE4記事、目次はこちら

Wwiseのインストール、UE4へのインテグレーション

Wwise on UE4記事、目次はこちら

WwiseをUE4で使う 目次

Wwise on UE4記事、インストールまでとかは見かけるけれど、公式ドキュメント含めUE4で扱うにあたってのチュートリアル的なものが見つからなかったので、ほぼ自分用のメモとしてまとめておく 仕様が変わっている可能性があるので、作成時のバージョンやらは…

コリジョン応答にカスタムメッシュを使用する

オブジェクトマーカーの実装

正式名称謎だけど、こういうやつとりあえず基本的な機能は 画面内に収まっているマーカーは、3DWidgetを描画 画面外のものは、画面端に方向を示すWidgetを描画 メインのマーカーWidget作る マーカー用アクタに3DWidgetで適当にやる 画面外の判定 次に、画面…

UE4.13、WidgetでSpriteが使えるようになった

タイトルそのままなのだけれど、UE4.13ではWidgetのimageで、従来のTexture、Materialに加えてPaper2DのSpriteが指定できるようになった今までは、例えばアイコンをまとめたアトラステクスチャからWidgetに個々を表示をやるときは、マテリアルを作成してUV座…

UE4.13で追加されたメッシュデカールについて

デカール、これまでは平面投影するDeferredDecalしかなかったけれど、4.13でメッシュ形状でDecalを描写できる機能がついた 平面投影だと、柱の角とかをきれいに出すのは難しかったのだけれど、これを使うときれいな見た目になる モデル用意 とりあえず柱のメ…

UE4、#IF DEBUGもどきマクロの作り方

色々やっているとShippingバージョンではやってほしくないノードとかが出てくる、C++の#IF DEBUGはDEBUGバージョンだけ指定コードをコンパイルしてくれる機能で、これと似たようなマクロがあったら便利 今回できるものは本家と違ってBPから除外するわけでは…

UE4、Inputの長押し処理の実装

十字キーでインベントリのリストを送るみたいな処理、長押しのときはループでやってほしい これを作るためには、Inputの長押し判定を作る必要があるPlayerControllerのGetInputKeyTimeDown()関数にKey構造体を渡すとそのボタンが何秒押されているかを返して…

UE4、KillZVolumeの挙動について

KillZVolumeは、触れたアクタの持つFellOutOfWorld()という関数を実行するように言う(これだけの実装) FellOutOfWorld()はAActorに実装があり Physicsを切る ActorHiddenInGameをtrueに ActorEnableCollisionをfalseに Destroy()実行 という処理を行うFell…