PaperSloth’s diary

主にゲーム開発関連についての記事を書きます。

UE4 個人開発メモ

UE4

最終更新日:2017/12/03 目次 目次 概要 環境 Project Settings Windowタイトルの変更方法(UE4.17.2) Application名の変更方法(UE4.17.2) シェーダーモデルの制限によるメモリ容量削減(UE4.17.2) パッケージング関連 PakFileの使用(UE4.17.2) パッケージの圧…

日記 第4回UE4何でも勉強会のLT に登壇してきました

イベントページはこちら ue4allstudy.connpass.com 登壇内容は「Blueprint Tips 30選」です 資料はslideshareとgithubにアップしました。 Blueprint Tips 30選 from PaperSloth www.slideshare.netGitHub - PaperSloth/Presentation: 登壇資料 公開した資料…

UE4 外部ライブラリの使用方法について

この記事はUnreal Engine 4(UE4) Advent Calendar 2019の22日目の投稿記事です。 Unreal Engine 4 (UE4) Advent Calendar 2019 - Qiita 目次 環境 結論 概要 Static Libraryの作成 Dynamic-link libraryの作成 UE4でのLibraryの使用方法 Static Libraryの使…

UE4 C++のバージョンを変更する方法

環境 ・UE4.23.1 ・Visual Studio Comuunity 2019 UE4のUnreal C++環境について リリース時のUE4のUnreal C++はC++11をベースに一部C++14で開発されていました jp docだとC++11, us docだとC++14と記載されています。 Coding Standard | Unreal Engine Docum…

UE4 Lighting Channelsについて

UE4

環境 UE4.23.1 Lighting Channelsについて 通常のLightingではChannel 0番のみが使用されており、特に意識する必要はありません。 Lighting Channelsを使うと独特で面白い絵作りや 広いワールドに対してエリアごとに全く異なるライティングの絵作りなど 特徴…

UE4 Projectから直接参照されていないuassetをパッケージに含める方法

UE4

環境 UE4.23.1 登録方法と概要 Project内では通常使用されないが、特殊なケースで使用したい場合に使えると思います。 例:開発用に外部のjsonやcsvからパス指定でロードするアセットを変更して確認を行いたい場合 例:ロードしたいアセットがパッケージに上…

UE4 Blueprintでdelegateを引数で使用する方法

環境 UE4.23.0 Delagateとは Blueprintから使用するDelegateではSetTimer by EventやEvent DispatcherにBindする際に使用するEvent等があります。 今回はSet Timer by Eventで例を作成していますが Event DIspatcherを使用した場合でも同様にBindすることが…

UE4 EditConditionsについて

環境 UE4.23.0 Visual Studio Community2017 EditConditionsについて EditConditions metadataはbool値によって任意のPropertyの編集を有効化/無効化する機能です。例 : 水泳可能フラグが有効なキャラクターのみ水泳速度を設定する場合 UPROPERTY(EditAnywhe…

UE4 MaterialのHierarchyの紹介

環境 UE4.23.0 Hierarchyボタンについて UE4.23からMaterial Editor, Material Instnce EditorにHierarchyボタンが追加されました。 Hierarychyボタンが追加されたのはMaterialで、Material Instanceには以前のバージョンからありました。 具体的なバージョ…

UE4 1フレーム処理をスキップさせる方法

環境 UE4.23.0 処理を1フレームスキップさせる方法 結論からいきましょう。 DelayノードをDuration 0で配置するだけで実装ができます。 実験その1 Sequence Sequenceノードは上から順に実行されていくものでしたね。 ここではThen 0で1フレーム後に"Delay"と…

UE4 Delay nodeと実行順序について

環境 : UE4.23.0目次 Delayの挙動のよくある勘違いについて ケース1 (Delay) ケース2 (Delay + Seqeuence) 処理を遅らせたい場合 -> Macroとして処理する Delayの挙動のよくある勘違いについて Delayを挟んだはずなのに何故か処理が遅れて実行されないという…

UE4 Includeファイルが認識されない場合の対処法

環境 UE4.23.0 Visual Studio 2017 Community Includeファイルがエラーになるケース/対処法 例えばキャラクターの生成時にNiagaraEffectをSpawnしたいケース 下記のようなコードを書いてみます。 // SandboxCharacter.h #pragma once #include "CoreMinimal.…

UE4 Oculus Go, Questの開発について

環境 UE4.22.2 Windows 10 Home Edition 環境 概要 Oculus Go/Quest向けのセットアップ Project側の設定を変更する HMDと接続して動かしてみる HMDをUSB接続せずにadbを用いてリモートで開発する 参考資料 概要 UE4のOculusGoとOculus Quest向けのTemplateを…

UE4 Niagaraリンク集

概要 いくつかNiagaraの素晴らしい情報が増えてきたので、まとめました。 まとめただけです。 私の書いた古いNiagara記事へのアクセスが多く それではこれから学ぶ人にとってあまりにも不便だと思ったので書きました。 目次 公式ドキュメント Content Exampl…

UE4 Blueprintで2次元配列を作成する方法

環境 UE4.22.2 Blueprintでの2次元配列の作成方法 先に結論だけを書くと 配列を持った構造体を用意 その構造体を配列で定義 上記の2ステップでできます。 コードで示すと下記になります。 USTRUCT(BlueprintType) struct FIntArrayElement { GENERATED_USTRU…

UE4 Unreal C++でのEnumとStringの変換について

環境 UE4.20.3 Visual Studio 2017 CommunityUnreal C++でのenumについてはこちら papersloth.hatenablog.com Enumから文字列への変換 先ずは列挙型の宣言と定義から。 UENUM(BlueprintType) enum class EConnectionType : uint8 { Multicast, Unicast, NUM …

UE4 PluginのHotReloadについて

環境 UE4.22.1 Visual Studio 2017 Community 概要 通常のProject同様にEditorからCompileボタンを押してHotReload! というわけにはいかず悩んだ人もいるかもしれないと思ったのでメモ書きを残しておきます。 PluginのHotReloadについて まず、EditorにあるC…

UE4 JsonFileの読み込みについて

環境 UE4.20.3 Visual Studio 2017 Community Windows10 概要 とりあえずでこのリポジトリに突っ込んでるJsonLoad関数を文字に書き起こしただけの備忘録です。 github.comUE4のゲーム実行時のオプションやプロパティ等を外部ファイルで編集したいとか 用途は…

UE4 Editorでの動画像の撮影について

UE4

環境 UE4.20.3 Windows10 概要 SNSやHP等で制作中のスクリーンショットをアップすることはよくありますね。 その中でEditor上でスクリーンショットを撮影される方も多いでしょう。 ですが、せっかくの良いゲームなのに デバッグログが出ていたりEditorOnlyの…

SDL SDLの導入について

環境 ・Windows 10 ・Visual Studio 2017 Community ・SDL 2.0.9 SDLとは SDL (Simple DirectMedia Layer) は、Graphic, Sound系のAPIを提供するC言語のマルチプラットフォーム対応のライブラリ。公式サイトは下記 Simple DirectMedia Layer - HomepageForum…

UE4 C++でfpsを取得する方法について

環境 FPSの取得、あるいは計算方法 stat fpsで表示される値 C++側でのfpsの取得について この記事は「Unreal Engine 4 (UE4) Advent Calendar 2018」16日目の記事です。 Unreal Engine 4 (UE4) Advent Calendar 2018 - Qiita 環境 UE4.20.3 FPSの取得、ある…

UE4 Actor間の距離の取得について

環境 距離の計算方法 Get ** Distance To GetDistanceTo GetHorizontalDistanceTo GetVerticalDistanceTo GetSquaredDistanceTo 環境 UE4.20.3 距離の計算方法 数学的な計算方法は調べれば沢山出てくるので割愛してUE4での使い方の話をします。C++側であれば…

UE4 昔ながらのSkydomeを使う

UE4

環境 SkydomeまたはSkyboxについて Skydomeを使う方法 Meshについて Materialについて Materialについて(単色表現) Skydomeを回転させたい場合 CubeMapの変換 CubeMap→2DTexture 2DTexture→CubeMap その他 環境 UE4.20.3 SkydomeまたはSkyboxについて ステー…

Houdini ApprenticeとIndieについて

Houdini ApprenticeとIndieの違い Houdini Engineについて Houdini Indieについて Houdiniの学習について まとめ Houdini ApprenticeとIndieの違い 詳しくはSideFX公式の比較表がとても見やすいです。 www.sidefx.com公式の比較表を見ると分かるように結構違…

UE4 不要なComponentを継承先で作成させない方法

環境 ・Unreal Engine4.20.3 不要なComponentを継承先で作成させない方法 例えばCharacterクラスを継承したいけど、Skeletal Meshを使用しないためMeshを継承させたくない場合愚直に実装をするとctor内でこう書くと思います。 AExampleCharacter::AExampleCh…

UE4 無駄なTickを省く方法

環境 Tickが動作しているActor一覧の確認 Tickを止める方法 ①Blueprintの場合 ②C++の場合 追記 参考資料 環境 ・Unreal Engine4.20.3 Tickが動作しているActor一覧の確認 Console Commandの「dumpticks」でTickが動作しているActorやComponentの一覧が取得で…

UE4 Characterの多段ジャンプについて

環境 多段ジャンプの実装方法 環境 ・Unreal Engine4.20.3 多段ジャンプの実装方法 Characterクラス内に「Jump Max Hold Time」と「Jump Max Count」というパラメーターがある。 GitHubのログを見た限りではUE4.2の頃からあるようだ。 CharacterMovementComp…

UE4 C++でTimerを使用した処理の書き方

環境 SetTimer by Eventについて Unreal C++での実装について FTimerManagerについて SetTimerについて タイマーの停止、再開について タイマーの終了処理について 引数付きの関数を渡す場合について 参考資料 環境 ・Visual Studio Community 2017 ・Unreal…

VisualStudio UE4のCode Snippets登録について

環境 Code Snippetsについて UE4のCode Snippetsについて Code Snippetsのインポート方法 Code Snippetsの使い方 参考資料 環境 ・Visual Studio Community 2017 ・Unreal Engine4 git release branch(4.20.2) Code Snippetsについて 簡単に言ってしまうとよ…

UE4 UFUNCTIONの種類について

環境 概要 C++関数とBlueprintの連携について BlueprintCallable BlueprintPure BlueprintImplementableEvent BlueprintNativeEvent その他 Categoryの階層構造について 参照について 空のUFUNCION()について コードスニペットについて 参考資料 環境 ・Visu…