Jelajahi Sumber

C++学习目标

usuiforhe 4 tahun lalu
induk
melakukan
23213f8592
1 mengubah file dengan 35 tambahan dan 2 penghapusan
  1. 35 2
      虚幻.md

+ 35 - 2
虚幻.md

@@ -1,7 +1,7 @@
 <!--
  * @Author: lc
  * @Date: 2021-09-03 21:41:18
- * @LastEditTime: 2021-09-20 15:56:09
+ * @LastEditTime: 2021-09-20 16:50:48
  * @LastEditors: Please set LastEditors
  * @Description: 虚幻学习
  * @FilePath: D:\Projects\markdown\虚幻.md
@@ -1601,4 +1601,37 @@ HUD默认自身是不接受键盘输入事件的,本身HUD就不应直接响
   - 理解了怎么实现才能更好解决怎么做
   - 大型项目必须使用虚幻C++,单纯的蓝图不太够
 
-![蓝图和C++的平衡](https://docs.unrealengine.com/4.27/zh-CN/Resources/SampleGames/ARPG/BalancingBlueprintAndCPP/)
+- 需要学习虚幻C++的人
+  - 核心系统GamePlay的程序员
+  - 扩展引擎的人:TA(技术美术)、渲染…
+  - 引擎工具编写人员
+  - 引擎部的支持人员
+
+![蓝图和C++的平衡](https://docs.unrealengine.com/4.27/zh-CN/Resources/SampleGames/ARPG/BalancingBlueprintAndCPP/)
+
+- 虚幻C++学习要点
+  - Core
+    - TArry、TSet、TMap等各种容器
+    - FString、FName,FText的操作互转
+    - TSharedPtr、TSHaredRef、TWeakPtr等各种智能指针
+    - 有能力理解Delegate、TAttribute、TSubClassOf的机制和用法
+    - 设计模式,能更好的理解UE4代码结构
+    - 多线程只是,才能用好FRunnable等多线程同步
+    - 宏展开,能用人脑想象着自动展开
+  - GamePlay
+  - Module-UBT-C#
+  - 反射-UHT
+  - CoreUObject-GC
+  - 常见的编程套路
+  - 各个模块的编码习惯
+
+- GamePlay的C++编写
+  - Actor的创建,组装Componnet,BeginPlay,Tick,碰撞输入事件绑定
+  - 引擎GamePlay对象的继承组织使用
+  - UObjet自定义对象的组织管理(根据逻辑而定)
+  - 引擎数据对象的使用,Congfi、DataTable…
+  - 功能模块的C++层级编写(UMG、AI、动画)注意有机结合蓝图和C++结合
+  - 这部分代码在`GamePlayFrameWork`中
+
+- Module-UBT-C#
+  - 为什么UE要使用C#来管理编译流程