2017年9月15日

Unity3D判断角色对敌人是否可见

摘要: 在编写敌人AI的状态机时 经常需要判断角色对敌人来说是不是可见的 如果是可见的,则做出追击或者攻击动作 如果是不可见的,则保持idle或者巡逻状态 判断是否可见 包括两个步骤 1.地方角色的视见向量和规范化向量之间的夹角 以此确定两者间的可见性。 如果该夹角小于敌军角色的视域角 则玩家位于地方角色前 阅读全文

posted @ 2017-09-15 16:09 Lumious 阅读(1286) 评论(0) 推荐(0) 编辑

2017年9月12日

Unity3D相机震动效果

摘要: 在一些格斗、射击以及动作类游戏中 相机震动效果是十分重要的 一个平凡的镜头 在关键时刻加入相机震动后 便可以展现出碰撞、危险、打斗以及激动人心的效果 相机震动的实现方式有很多 但都会涉及摄像机位置的变化 使用时 将此脚本挂到相机上 然后在需要的时候开启协程即可 阅读全文

posted @ 2017-09-12 14:36 Lumious 阅读(791) 评论(0) 推荐(0) 编辑

2017年9月7日

【Unity与23种设计模式】抽象工厂模式(Abstract Factory)

摘要: GoF中定义: “提供一个能够建立整个类群组或有关联的对象,而不必指明它们的具体类。” 意思就是 根据不同的执行环境产生不同的抽象类子类 抽象工厂模式经常在面试中会涉及到 下面的例子为工厂1和工厂2 两个工厂都可以生成产品A和B 但是两个工厂工艺不同 所以工厂1只能生产产品A1和B1 工厂2只能生产 阅读全文

posted @ 2017-09-07 16:06 Lumious 阅读(892) 评论(0) 推荐(0) 编辑

2017年9月6日

【Unity与23种设计模式】解释器模式(Interpreter)

摘要: GoF中定义: “定义一个程序设计语言所需要的语句,并提供解释来解析(执行)该语言。” 传统上,执行程序代码通常通过两种方式 第一种:编译程序 第二种:解释器 常见的使用解释器的程序设计语言 包含流行与网页设计领域中的脚本语言 如JavaScript、PHP、Ruby等 这些程序代码经过一般文本编辑 阅读全文

posted @ 2017-09-06 17:23 Lumious 阅读(485) 评论(0) 推荐(0) 编辑

【Unity与23种设计模式】原型模式(Prototype)

摘要: GoF中定义: “使用原型对象来产生指定类的对象,所以产生对象时,是使用复制原型对象来完成。” Unity中 开发者可以组装游戏对象 它可以包括复杂的组件 组装好了之后,就可以将其存储为Prefab类型的Unity Asset资源 程序代码中使用的实例化方法(GameObject.Instance) 阅读全文

posted @ 2017-09-06 14:32 Lumious 阅读(853) 评论(0) 推荐(0) 编辑

【Unity与23种设计模式】迭代器模式(Iterator)

摘要: GoF中定义: “在不知道集合内部细节的情况下,提供一个按序方法存取一个对象集合体的每一个单元。” 迭代器模式由于经常使用到 已经被现代程序设计语言纳为标准语句或收录到标准函数库中 在C#中,经常使用泛型存储对象 当想按序存取这些泛型容器时,都会使用C#的foreach语句 foreach语句就是一 阅读全文

posted @ 2017-09-06 08:58 Lumious 阅读(818) 评论(0) 推荐(0) 编辑

2017年9月5日

【Unity与23种设计模式】代理模式(Proxy)

摘要: GoF中定义: “提供一个代理者位置给一个对象,好让代理者可以控制存取这个对象。” 代理模式多用来优化资源的加载 当资源已经加载过时,使用原来的资源 当资源没有加载过时,开始加载 此过程由代理模式控制 代理模式就像是一个过滤器 只有在一定条件下才可以执行一定的代码 这个条件可以在外部进行控制 文章整 阅读全文

posted @ 2017-09-05 17:26 Lumious 阅读(678) 评论(0) 推荐(0) 编辑

【Unity与23种设计模式】适配器模式(Adapter)

摘要: GoF中定义: “将一个类的接口转换成为客户端期待的类接口。适配器模式让原本接口不兼容的类能一起合作。” 适配器模式与装饰模式有一定的相似之处 两者都是在着手解决C#不能多继承的问题 当出现一个不符合客户端接口的情况时 再不想破坏接口的前提下 就必须设计一个适配器来进行转换 将原本不符合的接口,转换 阅读全文

posted @ 2017-09-05 15:40 Lumious 阅读(459) 评论(0) 推荐(0) 编辑

2017年9月4日

【Unity与23种设计模式】装饰模式(Decorator)

摘要: GoF中定义: “动态地附加额外的责任给一个对象。装饰模式提供了一个灵活的选择,让子类可以用来扩展功能。” 装饰模式一般用来增加新功能 它可以避免更改已经实现的程序代码 从而增加系统的稳定性,也变得更加灵活 装饰模式解决了C#不能多继承的问题 它通过从父类继承出一个不符合“类封装时的抽象定义”的子类 阅读全文

posted @ 2017-09-04 16:27 Lumious 阅读(431) 评论(0) 推荐(0) 编辑

2017年9月1日

【Unity与23种设计模式】访问者模式(Visitor)

摘要: GoF中定义: “定义一个能够在一个对象结构中对于所有元素执行的操作。访问者让你可以定义一个新的操作,而不必更改到被操作元素的类接口。” 暂时没有完全搞明白 直接上代码 文章整理自书籍《设计模式与游戏完美开发》 菜升达 著 阅读全文

posted @ 2017-09-01 16:08 Lumious 阅读(515) 评论(0) 推荐(0) 编辑

导航