2017-06-01から1ヶ月間の記事一覧
現状の UE4 で C++ の namespace を使おうと思っても面倒事が増えるだけなので、現実問題としてはわざわざ UE4 の C++ コードを記述するに当たっては namespace を用いないほうが賢い。少なくとも UE-4.16 現在は。 しかし、そうは言っても、世の中の素敵な …
// ↓ブループリントで使わない場合はこの1行は不要 UENUM( BlueprintType, meta=( Bitflags ) ) enum class EHoge: uint8 { EV_Nothing = 0 , EV_Flag1 = 0x01 , EV_Flag2 = 0x02 , EV_Flag3 = 0x04 , EV_Flag4 = 0x08 , EV_FlagAll = EV_Flag1 | EV_Flag2 |…
状況 (½) おさらい編: AActor::AActor (アクターのコンストラクター) で生成する場合 // .h UHogeComponent* HogeComponent; // .cpp AActor::AActor() { RootComponent = CreateDefaultSubobject< USceneComponent >( TEXT( "RootComponent" ) ); HogeCom…
UE4/C++ FORCEINLINE にしたいけど Debug ビルドの時は inline 最適化されたくない関数を定義する方法 #ifndef UE_BUILD_DEBUG FORCEINLINE #endif void hogehoge() { /* fugafuga */ } と、いうわけで #ifdef でOK。 Debug ビルドで定義される UE_BUILD_DEB…
概要 前回のポスト「VSCode で UE4/C++: デバッグ実行に必要な launch.json の設定の仕方 - C++ ときどき ごはん、わりとてぃーぶれいく☆」で VSCode の launch.json を設定して UE4 のデバッグ実行を VSCode から"えせ"スタンドアローン風に実行する方法を…
概要 VSCode で UE4/C++ を開発する際にデバッグ実行に必要な launch.json の設定方法を紹介。 ↑こんな感じで VSCode しか起動していない状態から"えせ"スタンドアローン風の実行もできる。もちろん、起動中の UE4Editor へのアタッチもできる。 VSCode の設…
問題 UE4 C++er は .cpp を追加したりリネームするたびに「Project.uproject を右クリックして Generate Visual Studio project files」しなければならない、事になっている(目につくドキュメントや AnswerHub 的なスタンダードな回答によれば)。 だるい・…
状況 Visual Studio 2017 の cl.exe のメッセージを English にしたい。 “googlability” や “stackoverflowability” や “ue4-answerhubability” 的な都合でも合理的だし、 UE4 の UE4Editor から C++ コードをビルドした際に問題が生じた場合に UE4Editor の…
C++ 標準の std::promise / std::future / std::thread C++erにとっては基礎的なおさらい。 #include <iostream> #include <future> int main() { using namespace std; promise< int > p; auto f = p.get_future(); auto t = thread( [ =, p = move(p) ] () mutable { p.set_v</future></iostream>…
あちこちのサービスを試す事はあっても、結果的には git リポジトリーの remote origin は基本的にはなんでも GitHub を使っていました。しかし、 GitHub だと 100 MB を超えるファイルを少なくともそのままでは放り投げられないのでちょっと工夫とか面倒が…
テンプレプロジェクトでは @ キーででてくる便利なコンソールにユーザー定義のコマンドを追加する例: // MyActor.h // ... public: // コンソールから呼びたい UFUNCTION の宣言 UFUNCTION( BlueprintCallable ) void hoge(); // ... AMyActor::AMyActor() {…
C++/TPSのテンプレプロジェクトを作ってソースを眺めると「地上を歩けるキャラクター」の作り方がわかります。そこで、追加要素として「この ACharacter を空も飛べるようにしたい」と思っても、エディターで “Can Fly” をチェックONするだけではまったく飛…
特に UProceduralMeshComponent を使う場合など UMeshComponent 系のメッシュ mesh のマテリアルを実行時に変更したい場合は以下のようにする。 mesh->SetMaterial ( 0 // Note: マテリアルをセットしたいメッシュ内のセクション番号 , Cast<UMaterial> // Note: 今回は</umaterial>…
以下のコードの結果は同じです・w・ // code-1 ... mesh->CreateMeshSection_LinearColor ( 0 , vertices , indices , normals , texcoords0 , vertex_colors , tangents , true ); // code-2 ... mesh->CreateMeshSection_LinearColor ( 0 , vertices , in…