#memo

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

シークエンス変移について、レベル、サブレベルについて、ロード画面について

UE4のシークエンス変移系まとめ・BPで用意されてる関数は二つあって、一つはOpenLevel、もう一つはLoadStreamLevel・LevelはどれもPersistentLevelが親、その子としてStreamingLevelを持てる構造をしている、孫はなし・OpenLevelはPersistentLevelの切り替え…

Widgetに自動でフォーカス当てる

マウス(ホバー)イベント、ウィジェットを生成して表示しただけでは最初発火しなくて、1回画面内どっかクリックすると発火するようになる、レベルのBeginPlayにWidget生成を挿しただけの状態がgifですWidget生成のあと、PlayerControllerに対してfocusを設定…

バージョン取得する

.h UFUNCTION(BlueprintCallable, BlueprintPure, Category = "Project") static void GetProjectVersion(FString& Version); .cpp void UBlueprintFunctionLibraryCpp1::GetProjectVersion(FString& Version) { GConfig->GetString( TEXT("/Script/EngineSe…

ESCでゲーム終了しちゃうのなくす

メニューとか実装したりしたらこの機能いらないみたいになることがなくもない[ProjectFile]\Config にあるDefaultInput.iniの先頭に以下を追加する [/Script/Engine.PlayerInput] -DebugExecBindings=(Key=Escape,Command="CloseEditorViewport")DefaultInpu…

フォーリッジとinstancedMeshについて

今まで一回も触ってなかったUnreal Engine | フォリッジ インスタンス化メッシュ Unreal Engine | Grass ツールのクイック スタート野菜っぽい名前だけど、大量にメッシュを配置するツールで、かつ負担がないよという物っぽい グラスツールの方はランドスケ…

トゥーンエヘクト道1

入門 Sphere + Orbit + Life Color + Scale Color + Rotation

収差エヘクト

レンズの歪み載せたく、とりあえず中心からの距離でみたいなことをSDで試す いけそうなので、これをUEにもっていって、ポストプロセスマテリアルにでもする 前々から薄々感じてたけど、ポストプロセスのtexcoord、画面に写ってる部分が0~1みたいなかんじにな…

UE4でキーコンフィグの実装

前回キーマッピング操作系関数をBPに公開したので、ついでにキーコンフィグも作っていく miyahuji111.hatenablog.comここで作った関数に追加で、現在どのキーが割り当てられているのか取得する関数が必要.h UFUNCTION(BlueprintCallable, BlueprintPure, Cat…

Viveの利き手問題

現実の手について考えると、同じ作りなので、利き手による機能差の実装とかはいらなく、これは道具側に全処理を書けば良い話 ただ、ゲーム性としてこの道具と手の関係が省略されて、コントローラー固有の実装が乗ってくる可能性があるこうなると、利き手変更…

プレイモードでPawnを切り替える

ちょっとした動作確認とか、わざわざVive装着がめんどくさいことが多々あり、プレイモードで自動でPawnを切り替えできたら便利なのでやる プレイモード本当はゲーム中にVRモードの切り替えをしたかったのだけれど、調べたら出てくるStereo Onコマンドだけで…

UE4でVR開発のメモ

Vive超楽しいピント調節わからなかったけど説明書に書いてた とりあえず基本のカメラまわり Unreal Engine | 2. SteamVR で使うための UE4 の設定方法デフォだと床の高さがZ: 20なので、PlayerStartのZを20にする コントローラー表示と入力とる Unreal Engin…

肩・腕のトポロジーやる

腕、リラックスした状態の筋肉、結構捻りがあって、そのポーズをなぞってトポロジー作るときれいに変形しない ベースポーズ用に、筋肉のストレスが少ない状態を考える肩はいわゆるAPose、TPoseで、Aposeのほうがストレスがない 上腕は、肘をX軸の負方向に向…

1Dブレンドスペース

一次元のブレンドスペース、静止 - 歩き - 走り移動、コントローラーとキーボードじゃ入力値がちがって、Speedどうとるか問題 あと、筋肉が入ってる部位は物理100に頼るのは微妙っぽいので、アニメ入れてちょっとブレンドするようにするブレンドのつよさこれ…

親指のトポロジー

手、適当に作ったモデル(トポロジー)だと変形がよくなく、FPSだとずっと視界にあるわけで、結構綺麗に作っとかないとだめ、しかもVRでもつかう 画面から移りがちなのは、親指を見上げる(?)角度なわけで、最低でも親指とその周囲の変形は綺麗にしておき…

視線移動による腕のアニメーション

こういうの アニメーションは空気みたいなものだらけで、こんなの全然いらないんだけどやっぱり作りたくなってしまうUE4のアニメシステム全容はまったく理解する(できる)気がなく、ステートマシンとブレンドスペースだけでなんとかなるでしょみたいな気持…

SlateBrushについて

Widgetでダイナミックマテリアルインスタンス作成とかやってるとBrushの提出を求められるマテリアルからブラシを作成するノードがふたつあって、どっちもSlateBrush構造体が返ってくるこれはなにかというと、WidgetのDesigner画面でimageを選択した際に、Det…

FPS銃問題その1

FPS銃問題その1とはこれである解決方法は ・銃をカプセルコリジョンの中に収める ・銃を常に最前面で描写する後者は壁を抜いて射撃ができたりしてしまうので、前者ですすめる ここで・大前提として、長モノはX軸方向に沿った配置はしない(両手で持つデザイン…

曲がるLineTrace

グレネード投擲予測以外の使いみちが思いつかないけれど何かにぶつかるまで短いTraceLineをまわしているだけ、斜方投射の式突っ込んでるだけなのでもっと単純にデキソグレネードの挙動もこれに合わないと意味が無いので、ついでにSplineにしておくとかでいろん…

スケルタルメッシュの破損表現

BreakConstraintノードにもげる根本のboneNameを送ると、子階層ごともげる 当たり前だけど頂点に複数ジョイントの値あったらびよーんって伸びてしまうこれは元がフィジクスーボディーのメッシュなので、うごいてるCharacterからもごうとおもったらもうちょっ…

銃痕

普通にデカールでやる、ラフネスも入れたいけどGBufferをEnableしないとできないっぽいのでとりあえずNormalだけ フェード処理はマテリアル側にパラメーター入れてOpacityを変えていく 変化量はリニアは微妙なので補完するか、そもそもプレイヤーが離れたらD…

ヘッドショット判定とる

UE4のアップデートが来るたびにカテゴリが無限に増えてゆくFPSのS廻りの実装は全くやってなかったので、とりあえず弾の発射とヘッドショットの判定くらいは作っておく・プレイヤーの銃が弾をSpawn ・弾はSphereCollisionがある ・弾はHit先にイベントをCall…

ウィンストンのシールドのマテリアル

OverWatchかいました、かっこいいマテリアルがおおいのでいろいろ吸収したいまずマスク用の六角形のタイルをSDで用意する毎回ひっかかるので気をつけること一覧 ・TileGeneratorに突っ込むInputの(どこかの親の)タイリングがNoTilingだとオフセットいじっ…

虚空出現系マテリアル

0-1のパラメーターを渡して0-ノイズテクスチャ-1で変化させたものをマスクにするとできた UVスクロールはなんとなく入れてあるだけなのでまあいらない エッジが光るのはポスプロマテリアル側でアウトライン描写、エヘクトマテリアル側に統合したかったけど綺…

FStringから文字コード取得

4.11で関数ライブラリをC++からつくるとき、公式ドキュメント含めネットで確認できるものと微妙に挙動がかわっている GENERATED_UCLASS_BODY()じゃなくてGENERATED_BODY()をつかえばコンパイルがとおって、前者だとだめ。デフォルトだと後者が生成されるので…

SubUV用テクスチャの作成とその設定

UE4のパーティクルシステム、たまにしか触らないので忘れてしまう… ナイアガラはUE4.11でつくみたいな記憶があったけど、今触ったら普通にカスケードであったSubUVってやつがいわゆる連番の画像をアニメーションしてくれるやつなので、それ用に画像を作って…

ミニマップ実装

RenderTargetをそのまま描写するのは味気ないので一工夫ほしい一工夫の方法、とりあえず思いつくのは2つ 1.プレイヤー上空からのRenderTargetの部分にエフェクト(ポストプロセス)のせてなんとかする 2. マップ表示専用のオブジェクトを作っておいて(更新…

Mayaのメモ

ジョイントサイズを調節 Display > Animation > Joint Size Maya ユーザ ガイドグリッドサイズを調節 Grid表示切り替えボタンのGridOptionからオブジェクトリストみたいな奴 Windows > OutlinerIKをつける Skeleton > Create IK Handle IKの支点と終点のジョ…

DestructibleMeshをカスタムメッシュで定義する

被破壊メッシュ、コンテンツサンプルにはカスタムメッシュで定義するやつがあるのだけれど、ドキュメントを見てもいまいちよくわからないので調べる 木箱を殴ると木片に分かれるやつをやりたいフォーラム眺めても全然まとまってない…まとまってなくない…? …

3SWidgetをScreenSpaceで配置したときの入力を無視する

Componentの方でウィジェットを配置した時、スクリーンスペースだとコリジョン設定をignoreにしていてもマウスイベントを拾ってしまう これはウィジェット側の設定、Behavior>VisibilityをSelf Hit Test Invisibleとかに変更することで入力を無視してくれる…

BLUIを入れる

UI設計、JavascriptとCSSでやりたい、ありがたいことにオープンソースのプラグインがある Releases · AaronShea/BLUI · GitHub VS2015版をここから Simple Setup (Windows 64 Bit) · AaronShea/BLUI Wiki · GitHub 設定はここからデモプロジェクトが配布され…

Quixel SUITE使い方メモ

SubstancePainterだけじゃやっぱり微妙なところがあって(ブラシ挙動がPSに慣れちゃっている、ステンシルが絶妙に使いにくい)、QuixelはPhotoshopのブラシをそのまま使えるって所がすごい魅力だ公式でいろいろ動画が用意されているので見ていきたい learn - Q…

FX-Map

同心円ぐわ~みたいなのが換気扇とか扇風機作るときに必要で、既存のノードの組みわせで思いつかなかったのでFx-Mapの勉強も兼ねて、それでジェネレーターを作ってみた Fx-Map内の合成方法が3種類しかなくて、Subtractの処理が必要で、どうしようかなと思っ…

HDRテクスチャの受け渡しについて

UE4からOpenCVにテクスチャを渡す時、RenderTargetのテクスチャがHDR画像だとおかしなことになるみたいなことを以前書いたけど、今考えたら単にデータ型が違うだけで、HDR画像をそのまま処理できたら黒飛び問題とかがマシになる RenderTargetのテクスチャ設…

UE4でカメラ実装: シャッタースピードの実装3

UE4でカメラ実装: シャッタースピードの実装2 - #memo 続きソース画像を0として、指定角度と長さのブラーをかけられるようになった 45°, 50 const int Length = 50; const double Angle = 45.0; const double Scale = 0.70; // 回転 Point center( img.cols/…

UE4でカメラ実装: シャッタースピードの実装2

UE4でカメラ実装: シャッタースピードの実装 - #memo 続き、OpenCVでDirectionalBlurとかMotionBlurあれば楽なんだけど、画像加工する物ではないので自作しないといけないたたみ込み演算による画像処理ぼかし量だけど、撮影開始と撮影終了のカメラ方向のベク…

UE4でカメラ実装: シャッタースピードの実装

最後の関門感のあるシャッター速度 実装方法を練っていくまず現実のシャッター速度周りを見てみる、光量調節、絞りも光量調節 この2つの値と光量からわかる適正露出みたいなのがある、適正露出算出の仕組みってどんなのか調べる露出 (写真) - Wikipedia適正…

Spline Meshについて

Blueprint Splines Content Examples | Unreal EngineSpline Meshよくわかっていない、日本語のドキュメントない Content ExamplesにSpline Meshのマップがある、見ようまずUE4に用意されているSplineと名がつくのは、ComponentのSplineとSpline Meshの2つ、…

DoFを光学的なパラメーターから設定する

UE4のDoFのパラメーターについて - #memoこれの続き、UE4でカメラのシミュレーションを作る、DoFの微妙に直感的でないパラメーターを自動的に設定できたいレンズの公式 - Wikipedia 被写界深度 - Wikipedia 4.ピント - カメラと光のはなし 5.被写界深度 - カ…

UE4のDoFのパラメーターについて

良くわからなかったのでこんなテストレベルで確認する、黄色い奴はFocal Distanceの位置Unreal Engine | 被写界深度まずMethodはBokehとガウスの2種類あって、Bokehだとアイリスの形とかが出る、選択したMethodで使用できるパラメーターとかも変わる 今回はB…

TextureRenderTarget2DからTexture2D作成する

C++でTexture2Dからデータを見れるのか調べる 最終的には、Texture Render Target 2DをOpenCVに渡したい、のでまずはここ見てみる Unreal Engine | UTextureRenderTarget2D 全然よくわからないのでとりあえず、単純にTexture2DからOpenCVができないのか調べ…

UE4でOpenCV使う

Integrating OpenCV Into Unreal Engine 4 - Epic Wiki そのままガイドがあるのだ、作者が配布してるPluginを導入してBuild.CSを書き換えたら自分で別にOpenCV用意しなくても、もうそれだけで使えるようになる。プラグイン使わない方法も乗っているので、4.9…

Substance Graph InstanceをBP内で生成する

UE4のダイナミックマテリアルインスタンスの挙動で、同じクラスのインスタンスだけれども、それぞれのseed値は違うみたいなことをsubstanceでしたい、が、やっとできたのでメモ Allegorithmicのフォーラムみても、同様の質問あっても回答がいまいちよくわか…

SubstanceのパラメーターをBP側からいじる

1秒毎にseedを変更 まずSubstanceが入ってるマテリアルから普通にConstantインスタンスを作成 次に適応したいメッシュにDynamicインスタンスを作成、ここまではベーステクスチャがsubstanceになってるの以外は通常 ここからsubstanceのパラメーターにアクセ…

UE4でSubstance使う

地味に今回使ってなかったのでメモ まずランチャーでSubstanceプラグインを探してきてインストールする、4.8と4.9に対応インストール終わった後にプロジェクトを開いて、Edit > Pluginsを開いてインストールされてるのが確認できる、4.5とかの時もっとめんど…

Per Pixel Proccessorについて

全然情報がないのでチュートリアルを見つつまとめる こんな感じでinputした画像に対してなんか処理して返すみたいなノード、なんか処理しての部分を自分で作れる 最初はfloat4(0,0,0,1)が配置されてるだけでわけがわからないけど、get float2を配置して、プ…

ノード備忘録

Substance Designerのメモ ・動物っぽいノイズ ワープ、Perlin, Cells 1 ・シマウマ Splatter ・魚の鱗 Circleをずらして合成して銀杏の葉をつくって輪郭抽出してタイリングSubstancePainterとかPainterの素材用 素材用といったものの画像書き出しならまだし…

パーティクルのパラメーターをBPで制御する

雨のパーティクルがあって、SpawnRateScale辺りをBP側から制御できるようにしたい ディストリビューション | Unreal Engine DistributionFloatParticleParam このタイプは、エミッタ用のパラメータの単純なゲームコードの設定を可能にし、コード、ブループリ…

AOMask

https://www.unrealengine.com/ja/blog/unreal-engine-49-released 4.9の新機能のAOマスク、マップ全体のAOをマスクに保存しておいてマテリアルから使うみたいなやつWorldSettingsのLightmass内にあるGenerate Ambient Occlusionにチェックを入れてBuildマテ…

Showdownのアスファルトマテリアル

M_AsphaltBlendNickを見る、水たまりの感じが理想なのでそこまで多くないなと思って見てたけど、マテリアルファンクションが最悪な感じで多かったので、重要そうなところをみる

BumpOffsetつづき

これだけで酔う、これは段階ごとにmaskをかけていくshowdownの写経です昨日はちゃんとみてなかったけど、段階ごとにUV座標も調節していて(BackはUV座標を少し小さくしてあるのでタイリングしている)、更にキモっぽかったのが、BumpOffset内のReferencePlane…