Unreal Engine 5から始める C++ & Blueprint
「Unreal Engineですが、C++は使えますか?」 転職活動や仕事をする前の打合せで必ずと言っていいほど聞かれる質問です。 「C++は読めるのですが、Unreal Engineではあまり触ったことはないです。」 こんな返答をしたことはないでしょうか。 Blueprintで何とかなってしまうくらい、Blueprintは使いやすいです。 プラグインを作ったり、便利な機能を作ろうと思うと、C++やPythonといったソースコードの実装も覚えておいた方が良さそう。 BlueprintでできることをC++で書く方法についてまとめました。 まずはBlueprintで実装して、C++で再現する方法について書きます。 2022年からUnreal Engine 5になったので心機一転! BlueprintもC++も使えるようになっちゃいましょう! 【有料だけど無料で読める】 有料だけど無料で読めるように更新しています。 就職やお仕事でお役になった方は購入を検討してください。 今後の執筆活動の費用に当てさせていただきます。 執筆スタイルや執筆の経緯をまとめています。 https://www.docswell.com/s/posita33/ZM1LEN-2023-06-17-143125 購入していただいた費用を元手に技術書典16で紙の本を自費出版できました。ありがとうございました。 https://techbookfest.org/product/823pF1qHNpAgFgH9yeQ0fh 【更新情報】 2024/01/14 UE5.3からC++20が使用できるようになりました。 現代的なC++を書けるようにC++を中心とした文法について追記しています。 https://zenn.dev/posita33/books/ue5_starter_cpp_and_bp_001/viewer/chap_a0_unreal_aiming_for_modern_cpp 2023/07/22 【2冊目のUnreal Engine 5で動かす C++ & Blueprintを公開しました】 C++版の執筆が完了しました。 https://zenn.dev/posita33/books/ue5_starter_cpp_and_bp_002 2022/11/26 UE5.1で更新しました。 【感想・誤字報告】 このBook用に読者の方とコミュニケーションを取れるスクラップを作成しました。💬感想ご意見ありましたらお気軽にお書きください。 https://zenn.dev/posita33/scraps/d3532d0c071e1b
📘この本について
C++ & Blueprint
バージョンアップによる変更点
🔽1章 UnrealEngine/Visual Studioの環境設定
Unreal Engine 5のインストール
🔽Visual Studio 2022🔽
Visual Studio 2022のセットアップ
Visual Studio Integration Tool
Visual Studio 2019からVisual Studio 2022へ
🔽Visual Studio Code🔽
Visual Studio Codeのセットアップ
🔽JetBrains Rider(※有料のツール)🔽
JetBrains Riderのインストール・アクティベート
JetBrains RiderをUnrealEngineのIDEに設定する(※有料のツール)
🔽2章 C++とBlueprintの基本文法
プロジェクトを作成する
アセットを配置する+アセットの探し方
【BP】Actorクラスを作成する
【C++】Actorクラスを作成する
【BP】PrintStringでHello World!
【C++】 PrintStringでHello World!
【BP】Variable(変数)
【C++】Variable(変数)
【BP】Componentを追加する
【C++】Componentを追加する
【BP】Construction Script
【C++】Construction Script
【BP】四則演算(+ - x ÷)
【C++】四則演算(+ - x ÷)
【BP】Flow Control(Branch)
【C++】Flow Control(Branch)
【BP】Flow Control(Switch)
【C++】Flow Control(Switch)
【BP】Enumeration(列挙型)
【C++】Enumeration(列挙型)
【BP】Function(関数)
【C++】 Function(関数)
【BP】Input Event(入力イベント)
【C++】Input Event(入力イベント)
【BP】Event Dispatcher
【C++】Event Dispatcher
【BP】Array(配列)
【C++】Array(配列)
【BP】Flow Control(Loop)
【C++】Flow Control(Loop)
【BP】Structure(構造体)
【C++】Structure(構造体)
🔽3章 クラス構築
クラスとオブジェクト
【C++ & BP】ConstructorとDestructor
【C++】継承
【BP】継承
【C++ & BP】継承
【C++】アクセス指定子
【BP】アクセス指定子
【C++ & BP】アクセス指定子
【C++】メンバ関数の再定義
【BP】メンバ関数の再定義
【C++】仮想関数とオーバーライド
【BP】仮想関数とオーバーライド
【C++】静的メンバ変数
【C++】静的メンバ関数
【C++】インターフェース
【BP】インターフェース
【C++ & BP】インターフェース
【C++】純粋仮想関数と抽象クラス
【BP】抽象クラス
【C++ & BP】抽象クラス
🔽バージョンアップ対応
【BP】EnhancedInput
【C++】EnhancedInput
🔽Appendix UnrealEngine開発お役立ち情報
【BP】BlueprintFunctionLibrary
【C++】BlueprintFunctionLibrary
【BP】ActorComponent
【C++】ActorComponent
【C++】UFunction
【C++】UProperty
【BP】TMap
【C++】TMap
【BP】TSet
【C++】TSet
【BP】配列の操作
【BP】TMapの操作
【BP】TSetの操作
【C++】コンテナクラスTArrayの操作
【C++】Object Reference / Soft Object Reference
【BP】DataTable
【C++】DataTable
🔽Appendix Debug
【BP】Print String
【BP】Breakpoint
【BP】Blueprint Debugger Window
【C++】エラーメッセージと対処方法
🔽リンク集(C++ & Blueprint)
🔽C++ Modern(現代的)なC++を目指して
📝 1. 開発環境を整える
プロジェクトを作成する
著作権情報(Copyright)を設定する
PrintString(GEngine->AddOnScreenDebugMessageとUE_LOG)
StatementとFunction
📝 2. 変数とデータ型
プログラムの数値について
Integer(整数)について
Floating-point types(浮動小数点型 | float/double)について
Booleanについて
TCHARマクロについて
autoキーワードについて
📝 3. データの操作
四則演算 演算子
優先順位(Precedence)と結合性(Associativity)
Increment(++)/Decrement(--)演算子(Prefix/Postfix)
Compound Assignment Oerator(複合代入演算子)
Relational Operators(関係演算子)
Logical Operators(論理演算子)
📝 4. Literal(リテラル)とConstants(定数)
Literal(リテラル)
nullptr Literal
const(定数)
constexpr(Constant Expressions:定数式)
constinit(C++20)
📝 5. データ変換:OverflowとUnderflow
Implicit Data Conversion(暗黙的データ変換)
Explicit Data Conversion(明示的データ変換)
Overflow and Underflow
📝 6. ビット演算子:Bitwise Operators
Bitwise Shift Operators(ビットシフト演算子)
Bitwise Logical Operators(ビット論理演算子)
Compound Assignment Operators(複合代入演算子(ビット単位))
📝 7. フロー制御:Flow Control
if statement
else if
switch
Short Circuit Evaluations(短絡評価)
Ternary Conditional Operator(条件演算子)
if constexpr
if initializer
Switch with Initializer
📝 8. ループ:Loop
for loop
for loop : Multiple Declarations
Comma Operator
Range Based for loop
While Loop / Do While Loop
Nested Loops
break and continue
For Loop with Init condition
📝 9. コンテナクラス:TArray
UnrealEngineのTArrayとC++標準の配列の違い
📝 10. ポインター:Pointer
Pointerの宣言と使用方法
🔽リンク集(C++)
🔽アーカイブ(古い情報の保管庫)
🔽Visual Studio 2019🔽
Visual Studio 2019のセットアップ
有料Expression「Visual Assist」の導入
有料Extensionを使用しない Visual Studioの設定
UnrealVS 拡張のインストール
- 公開
- 本文更新
- 文章量
- 約904,920字
- 価格
- 2,500円