読者です 読者をやめる 読者になる 読者になる

#memo

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

アニメについてのメモ

過去 ルートモーションについて miyahuji111.hatenablog.com09/08 歩きの種類について 歩きといっても、敵がいる状態での歩き、町中の歩き、いろいろコンテクストがある09/11 AnimMontageについて Unreal Engine | AnimMontage Unreal Engine | 加算アニメー…

AnimDynamics / 髪のシミュレーション

髪の動きやる、いくつかの方法あるのでどれが良さそうか見ていく、初音ミクちゃんくらい長い髪はまた違うと思うので、長さ別にも見る、また髪の作り方も何パターンかある、バリエーションいくつか、以下です 1. 手付アニメ 2. PhAT(物理アセット) 3. AnimDyn…

UE4、SkeletalMesh周りのレギュレーション

UE4の機能を使うにあたって、やっておいたほうがいいことがままあり、とくにスケルタル 見つかり次第追記Rootを移動用と回転用で分けるようにする、具体的には原点に移動専用のRootを作って、その下に回転専用のルートジョイントを作る →ルートモーションを…

UE4のApex Clothing

Mayaでもできるっぽいけどプラグイン入れ方よくわからんかったので、おなじみのこちらでやりました 物理-布シミュレーション - UE4 Document@com04前提 ・布やる部分のメッシュ、マテリアルはわけておく ・ボーン入れてウェイトやっておく引っかかった所 ・S…

つんのめりアニメーション

敵とか撃たれた時の反応のアニメーションHalfLife2とかではこの反応はなくて、インパクト部位から出血やら火花が出るだけ 最近のリッチなゲームだと結構見かける敵が人型と仮定して、まず当たる部位のバリエーションがある 分けると、頭部、胴体、腕(左右)…

ルートモーションについて

ルートの差分をとって、キャラクタ移動に変換してくれる機能ルートに回転のキーあったら回転しちゃうので、スケルトン構造は、原点にRootを作ってこれをルートモーション用として、移動のみ、その子にキャラルートを作るようにしておくと安心キャラクタ側で…

NavMesh周りやる

NavMesh絶対しんどい、即死 箇条書き、即死 AAIController AAIController::MoveTo FAIMoveRequest型のMoveRequestを渡す 引数が正常か、もうゴールに到達してるかをチェックして、移動できるようであれば 1. FPathFindingQuery型のQueryを用意する 2. AAICon…

CharacterMovement続き

次はNavMeshだ…

CharacterMovement周りを読む

214301428行あるけど絶対に読む

Boids

ABZU最高!→Boidsやろう!→糞重い!!計算減らせそうな部分 ・2,3段階くらいのレベルつくって、そこで計算をさせて、魚自身はそこの値見て動くだけにする ・プレイヤーとの距離で処理の精度を調節する ・Separationの簡略化でそれっぽくが難しい ・単純にメ…

プレイヤー名の表示、参加者一覧の取得

・ゲーム参加直後はログイン処理がある ・ゲーム開始時クライアント側では、あるはずの変数やインスタンスがちゃんと存在している保証はない参加者一覧は、各クライアントで、レベルにあるPlayerStateをイテレーターで名前やらPingを取って表示したら良いの…

マルチプレイ時のプレイヤーポーンのスポーンのタイミング

GameModeのログイン処理、パーシスタントレベルのロードが終わると始まるっぽいけど、ストリーミングでマップをロードするタイプの設計だと、最悪床のロード前にプレイヤーがスポーンして奈落即ち死になる可能性がある 死かといって、ロード終わった瞬間にプ…

フレームワークについて

マルチプレイの実装みてて、今あらためてフレームワークの役割をちゃんと見ておく必要ある、これはかなり初期にやっておくべきだった感ある まず適当にゲーム起動して、WorldOutlinerで何があるかみる、ViewOptionsからサーバーに何がありクライアントになに…

UE4の解像度設定の実装

前回の内容の派生記事、解像度設定部分だけまとめ とりあえずフルスクリーンと解像度数値設定のみネットで出てくるコンソールコマンド(r.SetRes)をつかった解像度設定は、Configファイルに反映されないので、自分でゲーム開始時にどうこうする必要がある Con…

Configurationファイル何処に何があってどれをどうしているのか問題

Unreal Engine | コンフィギュレーション ファイルConfigurationファイル、各地に散らばっており、何がどうなっているのかさっぱりわからない

ドラッグ中もマウスの位置取得する

Mouse position not updated while dragging - UE4 AnswerHubUE4、ボタンをクリック中は用意されてる関数じゃマウスの位置が帰ってこない、具体的に実装したいのは、ウインドウのドラッグ移動フォーラムではマウスポインタアクターを用意してそこから取れと…

Widgetの自作パネルについて

Widgetのデザイナーでは初めから用意されてるパーツの他に、自分で作ったものも置ける 一番下のタブのUserCreatedがそれで、というかこれはWidgetである 自分でWidgetを作ると勝手にここから参照できるようになっていて、複雑な構造のWidgetを個別に定義して…

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

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…

1Dブレンドスペース

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

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

こういうの アニメーションは空気みたいなものだらけで、こんなの全然いらないんだけどやっぱり作りたくなってしまう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…