####简单说,就是某个系统作为一个服务,对全局系统可见. Service Locator (服务定位) ``` //简单粗暴的代码, 使用声音系统 // Use a static class? AudioSystem::playSound(VERY_LOUD_BANG); // Or maybe a singleton? AudioSystem::instance()->playSound(VERY_LOUD_BANG); ``` 类比: 如果我换了电话号码,需要通知我所有联系人,我换了电话号…
[游戏编程模式KeyNote] 1.命令模式. 重做在游戏中并不常见,但重放常见.一种简单的重放实现是记录游戏每帧的状态,这样它可以回放,但那会消耗太多的内存.相反,很多游戏记录每个实体每帧运行的命令.为了重放游戏,引擎只需要正常运行游戏,执行之前存储的命令. 2.并发状态机. 我们决定给英雄拿枪的能力.当她拿着枪的时候,她还是能做她之前的任何事情:跑动,跳跃,跳斩,等等.但是她在做这些的同时也要能开火. 如果她在做什么有n个状态,而她携带了什么有m个状态,要塞到一个状态机中,我们需要n × m…
第1篇 概述 第1章 架构,性能和游戏 (已看) 第2篇 再探设计模式 第2章 命令模式 (已看) 第3章 享元模式 (已看) 第4章 观察者模式 (已看) 第5章 原型模式 (已看) 第6章 单例模式 (已看) 第7章 状态模式 (已看) 第3篇 序列型模式 第8章 双缓冲 (已看) 第9章 游戏循环 (已看) 第10章 更新方法 (已看) 第4篇 行为型模式 第11章 字节码 (已看) 第12章 子类沙盒 (已看) 第13章 类型对象 (已看) 第5篇 解耦型模式 第14章 组件模式 (已看…
#### 两个例子 .GUI event loop ``` while (running) { // 从事件队列里获取一个事件 Event event = getNextEvent(); // Handle event... } ``` .Central event bus 不同系统公用的通信中心 #### 有问题的code ``` class Audio { public: static void playSound(SoundId id, int volume); }; class Audi…
http://gamealgorithms.net 第1章 游戏编程概述 (已看) 第2章 2D图形 (已看) 第3章 游戏中的线性代数 (已看) 第4章 3D图形 (已看) 第5章 游戏输入 (已看) 第6章 声音 (已看) 第7章 物理 (已看) 第8章 摄像机 (已看) 第9章 人工智能 (已看) 第10章 用户界面 (已看) 第11章 脚本语言和数据格式 (已看) 第12章 网络游戏 (已看) 第13章 游戏示例:横向滚屏者(iOS) 第14章 游戏示例:塔防(PC/Mac) 第1章 游…
刚开始学习D3D,安装完DirectX9后,在VS2008中新建Win32项目· -------------------------------------------------------------- //设置好Direct3D的库链接,这里也可以通过项目属性的链接器 -- 附加依赖项完成添加; #pragma  comment(lib,"dxerr.lib")#pragma  comment(lib,"dxguid.lib")#pragma  comment…
ASP.NET Core具有一个以ServiceCollection和ServiceProvider为核心的依赖注入框架,虽然这只是一个很轻量级的框架,但是在大部分情况下能够满足我们的需要.不过我觉得它最缺乏的是针对AOP的支持,虽然这个依赖注入框架提供了扩展点使我们可以很容易地实现与第三方框架的集成,但是我又不想"节外生枝",为此我们趁这个周末写了一个简单的Interception框架来解决这个问题.通过这个命名为Dora.Interception的框架,我们可以采用一种非常简单.直…
单例模式将一个对象实例化后,放在静态变量中,供程序调用. 服务定位(ServiceLocator)就是对象工场Factory,调用者对象直接调用Service Locator,与被调用对象减轻了依赖关系,这样如果被调用对象更换时,直接修改ServiceLocator的注册即可,不用修改程序中很多个地方的调用,从而减轻依赖关系. 我在学习单例模式的思路时,有一个疑问总是围绕着自己,单例模式就是静态变量呗,为什么要叫单例模式,有什么好处?静态类+静态方法不是很好? 当我学习了ServiceLocat…
Windows游戏编程之从零开始d I'm back~~恩,几个月不见,大家还好吗? 这段时间真的好多童鞋在博客里留言说或者发邮件说浅墨你回来继续更新博客吧. woxiangnifrr童鞋说每天都在来浅墨的博客逛一下看有没有更新,"每天都来就像看女神那般不依不舍",弄得我再不更新都不好意思了,哈哈~怎么说呢,前段时间忙毕设,回国,暑假,间隔年旅行休整,然后是适应新的生活,各种事情,也真正没有心境来更新博客了,最近正好心境安定下来,就继续开始写博.额,关于思想汇报改天我专门写一篇文章和大…
        本文由哈利_蜘蛛侠原创,转载请注明出处.有问题欢迎联系2024958085@qq.com         注:我给的电子版是700多页,而实体书是800多页,所以我在提到相关概念的时候,会使用章节号而非页码.相同的情况适合于"龙书"第二版. 上一期的地址: DX 11游戏编程学习笔记之7  这一期我们专门来研究第6章的习题. 尽管数目比較多,可是大部分还是非常easy的.注意我说的是"大部分"! 习题解答: =====================…