视频链接:游戏开发入门(四)逻辑与脚本开发(8节课 时常:约2小时30分钟 第4节看不了)


笔记与总结(请先学习视频内容):

1.逻辑系统目的

  • 实现策划的设计文档
  • 构建游戏玩法
  • 实现程序与玩家交互

2.逻辑系统看起来是一个技术含量没那么高的部分
但是其中涉及到的技术内容却是相当多的。逻辑系统是作为一个游戏项目里面最为复杂的系统之一,需要编写者在一开始的时候就尽可能的通过经验来构建一个比较完善扩展性强的逻辑架构,然后随后不断的 进行迭代改进。

3.逻辑系统特点:其实逻辑系统的特点是与游戏本身的特点想对应的,一款游戏需要对性能有很严格的要求,需求变更极为频繁,注重开发效率。
那么对应的逻辑系统就必须满足良好的运行性能需求,不能崩溃(没有开玩笑),有很好的拓展性,由于时间周期紧张,不太会花过多的时间考虑架构与设计模式。

4.开发游戏逻辑常用语言:

  • C++ Unreal引擎,Cocos引擎,大部分自研引擎
  • C# Unity
  • JavaScript Unity
  • Lua 作为脚本语言,在各个引擎都可以使用,常用于热更新

上述的语言编译运行机制都有差异,具体的内容需要深入去学习了解。

5.脚本语言的应用目的:
简单的修改可以交给策划去实现,可以提高工作与开发效率,另外可以用于热更新。

6.什么是热更新?
热更新就是不需要重新编辑底层代码,直接通过修改脚本的方式对游戏逻辑进行修改。对于手机游戏,玩家不可能每次更新都下载
完整的一个游戏包。我们可以在进入游戏的时候,只给其更新脚本代码,来对游戏逻辑更新。这个需要你的引擎支持对应脚本的虚拟机。

7.C#简述
语法靠近C++,但是比C++好用好学
有垃圾回收机制,无需手动释放内存
是Unity官方脚本语言
在IOS平台可以通过IL2CPP转为C++代码编译执行

8.关于垃圾回收的注意:不要频繁的调用强制垃圾回收(性能开销相当大),也尽可能少分配内存、

9.C#使用注意事项:

  • 避免使用foreach,string拼接,装箱拆箱(C#里面的引用类型都是继承System.Object类的)
  • 避免频繁的内存分配,可以提前分配一个比较大空间的内存,也可以使用内存池 可以建立对象池,减小对象内存分配释放造成的性能开销
  • 尽量使用struct代替class。因为C#里面struct是在栈上分配,Class在堆中分配,需要垃圾回收处理。C++中二者没有差别

10.C#常用容器

  • 数组 List ArrayList(里面成员类型可以不同)
  • LinkedList(包含LinkedListNode)
  • Dictionary(性能开销大)
  • HashSet
  • Queue

11.关于event与delegate:这个东西如果语言功底比较浅,建议先简单理解一下,我有时间详细的讲解一下(我开始也花了很长的时间去理解)。
有兴趣学习其原理的可以参考链接:

12.Unity就是以对象组件为其主要的开发模式,大部分的功能都是在组件上的,我们通过给一个对象添加不同的组件,他就拥有了不同的功能。

13.关于协程:首先建议先了解多线程。再看完视频的基础上还可以参考链接:http://dsqiu.iteye.com/blog/2029701 http://www.cnblogs.com/zhaoqingqing/p/3750522.html

14.视频中一个简单游戏系统的构建:

  • 整体逻辑系统框架构建
  • 输入系统
  • 关卡系统
  • 角色控制系统

上一篇:游戏开发入门(三)图形渲染
下一篇:游戏开发入门(五)游戏动画系统

原文链接(转载请标明):http://blog.csdn.net/u012999985/article/details/79090728

游戏开发入门(四)逻辑与脚本开发相关推荐

  1. android app开发混合开发,混合开发入门 Vue结合Android/iOS开发仿京东项目App

    download:混合开发入门 Vue结合Android/iOS开发仿京东项目App 无需原生开发基础,也能完美呈现京东商城.本课程融合vue.Android.IOS等目前流行的前端和移动端技术,混合 ...

  2. 游戏编程入门(完):开发 Stunt Jumper(摩托车跳跃)游戏

    Stunt Jumper 是一个横向滚动的摩托车跳跃游戏,玩家必须仔细控制摩托车手的速度,以便帮助它越过一排汽车. 本章内容包括: Stunt Jumper 的基本思路 如何设计 Stunt Jump ...

  3. 游戏编程入门(9):开发 Henway(小鸡过马路) 游戏

    应用前面学到的子画面知识,开发一个小鸡过马路游戏. 接上文 游戏编程入门(8):管理子画面 Henway 游戏的玩法 Henway 游戏的主角是一只小鸡,它急需从一条繁忙的高速公路的一边到达另一边.H ...

  4. 游戏编程入门(6):开发 Brainiac(记忆对对碰) 游戏

    接上文 游戏编程入门(5):使用键盘和鼠标控制游戏 这个游戏是记忆游戏,将隐藏的方块配对.即点击一下方块,就会翻转出图片页,然后记忆几秒,回归成方块,要将相同图片的方块进行配对. 本章内容包括: 如果 ...

  5. jmeter的java测试框架_性能测试学习之路 (四)jmeter 脚本开发实战(JDBC JMS 接口脚本 轻量级接口自动化测试框架)...

    1.业务级脚本开发 登录脚本->思路:在线程组下新建两个HTTP请求,一个是完成访问登录页,一个是完成登录的数据提交. 步骤如下: 1) 访问登录页 2) 提交登录数据的HTTP PS:对于业务 ...

  6. spring boot + vue + element-ui全栈开发入门——基于Electron桌面应用开发

     前言 Electron是由Github开发,用HTML,CSS和JavaScript来构建跨平台桌面应用程序的一个开源库. Electron通过将Chromium和Node.js合并到同一个运行时环 ...

  7. 爬虫开发入门:使用 Pyspider 框架开发爬虫

    使用 pyspider 作为爬虫入门框架要比直接用 Scrapy 容易太多,如果你需要快速爬取一个网站,pyspider 爬虫框架是最佳选择之一 pyspider 框架具有以下优点 有 Web 界面用 ...

  8. Cordys BOP 4平台开发入门实战演练——会签流程建模开发

    关于会签 会签是指联合发文时,由各发文机关的领导共同签署文件. 会签是撰拟公文的过程中,主办单位主动与有关单位协商并核签的一种办文程序,一般当公文的内容涉及本单位的多个部门或与其他单位有关时,需要进行 ...

  9. IntelliJ IDEA 12详细开发教程(四) 搭建Android应用开发环境与Android项目创建

    今天我要给大家讲的是使用Intellij Idea开发Android应用开发.自我感觉使用Idea来进行Android开发要比在Eclipse下开发简单很多. (一)打开网站:http://devel ...

最新文章

  1. 1900万印度人疯抢6万份工作,加班至死,这才是真正的就业崩溃!
  2. 字符串格式化---StrFormatter
  3. xfermode的基本用法
  4. 洛谷——P1342 请柬
  5. 写在前面-2015.11.30
  6. python输出星号_Python的星号(*、**)的作用
  7. 数据结构之选择排序:直接选择排序
  8. mybatis入门基础(三)----SqlMapConfig.xml全局配置文件解析
  9. editthiscookie
  10. 图像超分辨率(Super-Resolution)技术研究
  11. canvas学习之小球动画
  12. 电脑桌面数字时钟c语言,DesktopDigitalClock(桌面数字时钟)
  13. python extension package_Python Extension Packages for Windows所有包下载
  14. Ubantu系统中安装360Wifi步骤
  15. python11——随机点名
  16. 大模型微调技术(Adapter-Tuning、Prefix-Tuning、Prompt-Tuning(P-Tuning)、P-Tuning v2、LoRA)
  17. iPhone计算机没有删除键,iphone备份相片没删除键怎么用电脑删除
  18. 【托福独立写作】ETS 官方新托福 185 个作文题库话题分类
  19. 自制反汇编工具使用实例 其二(使用xmm寄存器初始化对象,以及空的成员函数指针)...
  20. oracle创建分区.md

热门文章

  1. R语言绘制图例(legend)的各种问题_详细综合解析
  2. 模仿一把支付宝新春的写福字功能
  3. 思岚科技激光雷达全面升级:RPLIDAR A1仅需900元,A2测距提升至8米
  4. Day14(springboot与mybatis整合、mybatis自动代码生成、swagger、thymeleaf、lombok环境配置、mybatisPlus介绍(自动代码生成))
  5. Windows10重置网络设置
  6. 电脑双网卡,默认路由优先级设置
  7. REST风格详解(很多其他人经验总结加上我自己的归纳到一起了,从推出到使用)
  8. 计算机技术会议,第五届信息科学、计算机技术与交通运输国际学术会议(ISCTT 2020)...
  9. JVM入门笔记-摘自黑马程序员
  10. ChinaJoy亲历 九城VS盛大