整体的类关系

Actor类

 该类为场景中所有能够直接放置的物体的基类,该类继承自Object类,定义了放置在场景中的物体一些
基础性行为。所有在场景中直接放置的物体要使用Spawn放法进行生成,不要使用new关键字。因为Spawn方法生成后,
引擎会添加垃圾回收的相关操作。
我的理解是:引擎会把通过该方法生成的对象加入到场景树中,同时增加引用计数。在每次进行垃圾回收操作的时候,
引擎遍历场景树,根据引用计数,把不用的物体标志为不可达,然后在下一帧的时候进行清理。

Controller 和 Pawn

 Controller类是控制器类,主要用于控制逻辑,Pawn类是实体类,应用具体的模型,动作,以及一些传感器
性质的部件。我们的巨佬讲解时,把Controller比作人类的灵魂,Pawn比作具体的肉体。玩家通过Controller来控制
Pawn,玩家的灵魂可以进行转移,来控制不同的Pawn。通过这种方式可以轻松的在拥有不同功能的pawn之间进行
切换,我想这应该就是模块化编程吧,高内聚低耦合。这种设计模式在进行AI开发时,优势特别明显。因为小怪的行为多数都是简单且雷同,小怪不同的外貌,具体
的动作。这样我们就可以用同一个控制器来控制,不同外貌动作的小怪,从而达到减少开发量,快速迭代的目的。

Component

 Component 继承自Object,是Actor的扩展。通过给Actor添加不同的Component来增加Acotor的功能,
同时也可以通过Component来实现Actor的差异化,我想这应该就是组件化编程,好像还有个设计模式,我忘记了
。在目前的开发中用到的主要Component有ParitcleSystemComponet,StatciMeshComponnent,
SkeletMeshComponent,ColliderComponent等等,生成Component使用new关键字,在生成后要加入
到Component的数组中。当Actor被销毁时,Actor身上的组件也会被销毁。

结束语

做点总结,技术进步后面继续补充,如有说的不对的地方,请看到的同学批评指正。

关于UDK GameFramework的一点总结相关推荐

  1. Unity,UDK,Unreal Engine4或者CryENGINE——我应该选择哪一个游戏引擎

    在digital-tutors看到的一篇文章,很多初学者都有这样的疑问,因此翻译到这里. 原文: http://blog.digitaltutors.com/unity-udk-cryengine-g ...

  2. GameFrameWork学习笔记(一)

    目录 写在前面的一些废话 一.框架基础抽象类 二.框架入口 三.引用池和非托管内存 写在前面的一些废话 最近项目核心模块要重构,负责非核心模块的我就清闲了不少,想给自己充充电,唔,好像也不算充电,反正 ...

  3. 【游戏周边】Unity,UDK,Unreal Engine4或者CryENGINE——我应该选择哪一个游戏引擎

    在digital-tutors看到的一篇文章,很多初学者都有这样的疑问,因此翻译到这里. 原文:http://blog.digitaltutors.com/unity-udk-cryengine-ga ...

  4. GameFramework:资源热更代码分析,检查版本信息,下载版本文件,校验版本文件,得到更新文件数量,下载文件,TaskPool

    资源下载流程图 流程跳转的日志 版本信息-版本检测-下载版本列表-下载散文件代码分析 进入ProcedureCheckVersion.OnEnter流程,进行task请求,userData为StarF ...

  5. GameFramework篇:StarForce全解读(总目录)

    说实话,我刚开始看这个官方案例的时候,其实心里是没底的,因为模块和封装着实有点夸张(别误会,是我层次低的原因,并不是说这样不好).好了,说这些是想告诉大家,不要慌,我一个菜鸡都能挺过来你们也可以,并且 ...

  6. UDK中Kismet处理输入及脚本输入处理

    Ⅰ,Simple keypress detection in UDK using Kismet UDK中最简单的输入实现 UDK中处理消息相应,可以自行编辑,处理相应的UScript, 但这里,我们首 ...

  7. GameFramework——事件系统

    委托和事件 要搞懂GF的事件系统,我们要先搞清楚什么是委托和事件 传送门 委托delegate我认为就是一种函数类型,从而可以绑定多个同种返回值,参数的函数用于同时触发,而事件event就是委托的一种 ...

  8. 零起点学算法07——复杂一点的表达式计算

    零起点学算法07--复杂一点的表达式计算 Description 下面你来计算一个复杂一点的计算表达式 Input 没有输入 Output 输出表达式的值,保留2位小数 题目分析:根号要用sqrt来算 ...

  9. 关于位姿变换的一点体会

    关于位姿变换的一点体会 1.题外话 2.刚体的位姿变换 2.1 位姿变换的定义 2.2 旋转矩阵的具体形式 2.2.1 二维情况 2.2.2 三维情况 3.旋转方向 4.平移方向 1.题外话 对于刚体 ...

最新文章

  1. 一文尽揽2018 Google I/O:谷歌让你感受到AI科技的魅力
  2. Hbase完全分布式高可用集群安装配置
  3. 产能不足?英特尔DG2 GPU将采用台积电7nm工艺
  4. 微信sdk 隐藏右上角菜单项
  5. 在计算机应用领域中媒体是指,在计算机中,媒体是指什么
  6. nero linux4 序列号,Nero Linux 4 Nero Linux v4.0.0.0b
  7. 【七日阅书】1.注重实效《程序员修炼之道—从小工到专家》
  8. 测试软硬件系统信息的工具 -- EVEREST Ultimate Edition
  9. CentOS8 Docker 端口映射
  10. Linux 服务器进行安全加固,防止黑客攻击
  11. Latex学习之插入编号-实心圆点列表,横杆,数字
  12. nginx resolver失败
  13. 微信群满100人后无法扫码进群?你们要的解决方法来了!
  14. Flutter 多渠道打包详解(埋点统计系列文章)
  15. alsa与PulseAudio
  16. 发送手机短信获取验证码功能
  17. jquery的$是什么意思与相关的
  18. ADV流速仪坐标系统
  19. 自学web前端练手——咖啡店主页(html+css3+js)
  20. Paillier同态加密算法

热门文章

  1. 【无标题】小程序开发网站建设前端网页制作美工H5
  2. 关于C语言全局变量的定义和用法
  3. 什么是调制(modulation) ?
  4. Linuxnbsp;2.6.19.xnbsp;内核编…
  5. 浅谈对Python的理解和优缺点
  6. 如何使用maven给Java打包
  7. 软考软件设计师下午真题-面向对象的程序设计与实现-状态设计模式(2011年下半年试题六))Java代码讲解
  8. 常见的网络协议与网络要素的介绍
  9. vfp和python比较_(原創) 由C/C++看VFP (技術感想) (C++/VFP)
  10. 进入空气稀薄地带,《朗读者》再现阿里云10年技术自主研发