Skip to content

Repository files navigation

Game Programmer Study Notes 游戏编程学习笔记

Game Programming Patterns 游戏编程模式

代码示例

  • 重访设计模式
    • 命令模式将“请求〞封装成对象,以便使用不同的清求,队列或者日志来参数化其他对象,同时支持可撤消的操作
    • 享元模式以共享的方式高效地支持大量的细粒度的对象。通过复用内存中已存在的对象,降低系络创建对象实例的性能消耗
    • 观察者模式定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被白动更新
    • 原型模式用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象
    • 单例模式保证一个类只有一个实例,并且提供了访问该实例的全局访问点
    • 状态模式允许对象在当内部状态改交时改交其行为,就好像此对象改变了自己的类一样
  • 序列模式
    • 双缓冲模式使用序列操作来模拟瞬间或者同时发生的事情
    • 游戏循环实现游戏运行过程中对用户输入处理和时间处理的解耦
    • 更新方法通过每次处理一帧的行为来模拟一系列独立对象
  • 行为模式
    • 字节码将行为编码为虚拟机器上的指令,来赋予其数据的灵活性。从而让数据易于修改,易手加载,并与其他可执行部分相隔离
    • 子类沙箱用一系列由基类提供的操作定义子类中的行为
    • 类型对象创造一个类A来允许灵活的创造新的类,而类A的每个实例都代表了不同类型的对象
  • 解耦模式
    • 组件模式允许单一的实体跨越多个领域,无需这些领域彼此耦合
    • 事件队列事件队列模式,对消息或事件的发送与处理进行时间上的解耦
    • 服务定位器提供服务的全局接入点,而不心让用户和实现它的具体类解耦
  • 优化模式
    • 数据局部性合理组织数据,充分使用CPU的级存来加速内行读取
    • 脏标识模式将工作延期至需要其结果时才去执行,以避免不心要的工作
    • 对象池模式放弃单独地分配和释放对象,从固定的池中重用对象,以提高性能和内存使用率
    • 空间分区将对条存储在基于位置组织的数据结构中,来有效的定位对象

重访设计模式的六种设计方法为经典23种设计模式的之六,这六种设计模式也是游戏中常用的设计模式;序列模式、行为模式和优化模式适用与游戏引擎设计;解耦模式适用于游戏UI部分的设计-------自定义组件和消息机制的设计

QFramework Unity框架

详细文档

  • 架构目的:使用框架的目的与意义
  • 设计原则:SOLID设计模式的六大原则
  • 总体架构:框架的分层以及层级之间的规则
  • 代码示例:如何使用此框架
  • 实现细节:框架实现过程中的技术要点

此框架相较于流行的框架ETJEngine等框架,QFormwork更专注于逻辑层的架构,在工具层实现组件化做到即用即安装,更佳纯粹;此教程在Unity学堂可以学习,重点不应该放在框架的使用,而是放在框架的搭建过程

Unity 3D高级编程

整本书讲解的为Unity的底层原理,核心思想是优化游戏性能,主要的围绕提高游戏运行速度与降低内存消耗展开,优化的本质其实就是减少GC和降低drewcall,进而分别从C#技术要点、UI、模型等模块进行讲解

Clean Code

详细文档

  • 目的
  • 命名法则
  • 函数
  • 注释
  • 格式准则
  • 对象和数据结构
  • 错误处理
  • 边界
  • 单元测试

本书主要讲解功能实现的时候代码的规范,如果你阅读的时候发现你都做到了,那你写的代码一定十分简洁,当然大多数的人应该或多或少都会有些点没有做到,那这就是你代码的提高点,此书可以多次阅读,每次尽可能都有一点改善就好,如果对书中的优化点你存在异议,请相信“Bob大叔”

游戏感

详细文档

  • 游戏感的三大基础构件
    • 实时控制
    • 模拟空间
    • 润色 (Polish)
  • 游戏感的体验
    • 操作的美感
    • 学习、练习和掌握一项技能的榆
    • 悦感
    • 感觉的延伸
    • 个体的延伸
    • 与游戏里一个独特的物理实体的
    • 交互感
  • 创造游戏感
  • 游戏感测量维度
    • 输入
    • 响应
    • 情景
    • 润色
    • 隐喻
    • 规则

本书主要讲解游戏感的定义、游戏感的三大基础构件以及度量游戏感的六个维度,使得我们可以从数据上对游戏好坏进行评判,评判游戏变得可以量化

Java 游戏服务器架构实战

详细文档

  • 模块零概论

    • 第1章 游戏服务器架构总体设计
    • 第2章 服务器项目管理一Maven
    • 第3章 数据库选择与安装
  • 模块二 游戏服务中心架构设计

    • 第4章 游戏服务中心开发
    • 第5章 Web服务器网关开发
  • 模块三 游戏网关架构设计

    • 第6章 游戏服务器网关开发
  • 模块四 业务服务架构设计

    • 第7章 游戏服务器网关与游戏业务服务数据通信
    • 第8章 游戏业务处理框架开发
    • 第9章 游戏用户数据管理
  • 模块五 RPC通信架构设计

    • 第10章 RPC 通信设计与实现
    • 第11章 事件系统的设计与实现
    • 第12章 游戏服务器自动化测试
  • 模块六 实例

    • 第13章 服务器开发实例一一世界聊天系统

本书主要从游戏服务中心、游戏网关、RPC通信和业务服务四个模块,展开介绍游戏的短链接和长链接的网关设计、以及微服务通信以及业务服务设计实现,其中主要是用的框架为Spring Cloud

Unity 人工智能实战

详细文档

  • 第1章 行为一一智能移动
  • 第2章 导航
  • 第3章 决策制定
  • 第4章 新的NavMesh API
  • 第5章 协作和战术
  • 第6章 agent感知
  • 第7章 棋类游戏和应用的搜索AI
  • 第8章 机器学习
  • 第9章 程序化内容生成
  • 第10章 其他

本书主要讲解如何实现各类游戏AI,在实现Agent寻路时重点讲解了NavMesh使用,并在最后两章讲解了主流的几个智能体的实现

Unity引擎HDRP高清渲染管线实战

Unity网络游戏实战

Unity Shader入门精要

Unity VR虚拟现实完全自学教程

About

游戏开发学习笔记

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages