site_review: 2021-12-09 06:26:34.185180 【技術本】C++でつくるUnrealEngineアプリ開発

【技術本】C++でつくるUnrealEngineアプリ開発

https://amzn.to/4nQrAie


【技術本】C++でつくるUnrealEngineアプリ開発


x postへポスト
UE4で開発を進める上で、ブループリントでは賄えない高速処理や、各コンポーネントの機能拡張をしたい場合は、C++による実装が必要になってくる。
UE4で主に使用するC++は、UE独自に拡張されたものであり、利用するにはきちんと様式に従わないと正しく効果的に利用できない。
(例:BluePrintから呼び出せるようにしたり、ガベージコレクションの対象にしたりする場合は、マクロを呼び出す必要がある。テンプレートで自動生成されたクラスのメソッドにもいくつか注意点もある。)
これらを的確に使うための指南をまとめたのが本著。

最終的にプラグインを独自制作できるまでを目標に、一部のUEの基本クラス、APIの使い方を解説してくれている。
基本的なデータ型、マクロの解説などから、非同期・並列処理、スレッドセーフ、標準ライブラリなどとの連携まで言及してくれている。

UE4の膨大な機能、クラス群の中から、一部を掻い摘んで紹介しているので物足りなさは否めないが、これからUE4でC++を使っていこうとする人には、現時点(2018/06)ではUnityより断片的かつコーディングに関する情報量が少ないなかで正解の技術を今後蓄積していくための良い足掛かりにはなると思う。

C++はそこそこ知っていて、UE4で初めてC++導入するレベルの人には、満足する内容だと思います。
若干の駆け足感がぬぐえないのと、他の方もおっしゃってるブループリントイベントグラフの画像の小ささが気になりました。

-----------------------

以下のことを学ぶことができる。

・UE C++オブジェクト
 クラス、構造体、列挙型
・マクロ
 UCLASS():UEライブラリと連携させる
 GENERATED_BODY()
・プロパティ
 UPROPERTY():
  ブループリントやレベルエディタから利用できる設定やアクセスコントロールを定める
  ガベージコレクションの対象にする
・コールバック
 動的マルチキャストデリゲート
 BluePointイベント
 BluePoint関数
・GC対象にするインスタンスの生成方法、スマートポインタ:安全なメモリ管理
・UE C++ライブラリ
 UObject
 AActor
  アクタ定義
  アクタコンポーネントの定義、生成の実装
 アセットからオブジェクトの読み込み
・非同期・並列処理
 スレッドプール
  TaskGraph
  ThreadPool
 非同期
  Async関数
  AsynkTask関数
  PararelFor関数
  ロック
・標準C++との連携
 標準ライブラリ、既存ソース、静的ライブラリ、動的ライブラリの利用
・プラグインの作成方法
・プラグイン作成例
 ファイル入出力プラグイン
 OpenCV利用プラグイン
 レベルエディタのモード追加プラグイン

以上。


x postへポスト