├── Media └── repo-cover.jpg ├── UML_Picture ├── chain.gif ├── proxy.gif ├── state.gif ├── adapter.gif ├── bridge.gif ├── builder.gif ├── command.gif ├── facade.gif ├── factory.gif ├── memento.gif ├── visitor.gif ├── abstract.gif ├── composite.gif ├── decorator.gif ├── flyweight.gif ├── iterator.gif ├── mediator.gif ├── observer.gif ├── prototype.gif ├── singleton.gif ├── strategy.gif ├── template.gif ├── interpreter.gif ├── type-object.png └── UML_Description.png ├── ProjectSettings ├── ProjectVersion.txt ├── ClusterInputManager.asset ├── PresetManager.asset ├── EditorBuildSettings.asset ├── XRSettings.asset ├── TimeManager.asset ├── VFXManager.asset ├── AudioManager.asset ├── TagManager.asset ├── UnityConnectSettings.asset └── PackageManagerSettings.asset └── Assets ├── Game Programming Patterns ├── Object Pool Pattern │ ├── Example │ │ ├── Script │ │ │ ├── README.md │ │ │ ├── README.md.meta │ │ │ ├── Core.meta │ │ │ ├── Example.meta │ │ │ ├── Core │ │ │ │ ├── PoolManager.cs.meta │ │ │ │ ├── PoolObject.cs.meta │ │ │ │ └── PoolObject.cs │ │ │ └── Example │ │ │ │ ├── ObjectPoolExample.cs.meta │ │ │ │ ├── PoolObjectBehaviour.cs.meta │ │ │ │ └── PoolObjectBehaviour.cs │ │ ├── README.md │ │ ├── objectPoolScreenShot.png │ │ ├── README.md.meta │ │ ├── Material │ │ │ ├── Plane.mat.meta │ │ │ └── PoolObject.mat.meta │ │ ├── ObjectPoolExample.unity.meta │ │ ├── Model.meta │ │ ├── Model │ │ │ └── polygonSphere.asset.meta │ │ ├── Prefab │ │ │ └── PolygonSphere.prefab.meta │ │ ├── Material.meta │ │ ├── Prefab.meta │ │ └── Script.meta │ ├── README.md.meta │ └── Example.meta ├── Component Pattern │ ├── README.md.meta │ ├── Example.meta │ └── Example │ │ ├── ComponentPatternExample.unity.meta │ │ └── ComponentPatternExample.cs.meta ├── Dirty Flag Pattern │ ├── README.md.meta │ ├── Example.meta │ ├── Example │ │ ├── DirtyFlagPatternExample.unity.meta │ │ └── DirtyFlagPatternExample.cs.meta │ └── README.md ├── Event Queue Pattern │ ├── README.md.meta │ ├── Example.meta │ ├── Example │ │ ├── EventQueuePatternExample.unity.meta │ │ ├── EventQueue.cs.meta │ │ ├── EventQueueManager.cs.meta │ │ └── EventQueuePatternExample.cs.meta │ ├── Example2.meta │ ├── Example3.meta │ ├── Example2 │ │ ├── EventQueuePatternExample2.unity.meta │ │ └── EventQueuePatternExample2.cs.meta │ └── Example3 │ │ ├── EventQueuePatternExample3.unity.meta │ │ ├── Scripts.meta │ │ └── Scripts │ │ ├── EventManger.cs.meta │ │ ├── EventType.cs.meta │ │ ├── EventQueuePatternExample3.cs.meta │ │ └── EventType.cs ├── Game Loop Pattern │ ├── README.md.meta │ ├── Example │ │ ├── GameLoopPatternExample.unity.meta │ │ └── GameLoopPatternExample.cs.meta │ ├── Example.meta │ └── README.md ├── Type Object Pattern │ ├── README.md.meta │ ├── Example.meta │ └── Example │ │ ├── TypeObjectPatternExample.unity.meta │ │ └── TypeObjectPatternExample.cs.meta ├── Data Locality Pattern │ ├── README.md.meta │ ├── Example.meta │ ├── Example │ │ ├── DataLocalityPatternExample.unity.meta │ │ └── DataLocalityPatternExample.cs.meta │ └── README.md ├── Service Locator Pattern │ ├── README.md.meta │ ├── Example.meta │ └── Example │ │ ├── ServiceLocatorPatternExample.unity.meta │ │ └── ServiceLocatorPatternExample.cs.meta ├── SubclassSandbox Pattern │ ├── README.md.meta │ ├── Example │ │ ├── SubclassSandbox.unity.meta │ │ ├── FlashSpeed.cs.meta │ │ ├── GroundDive.cs.meta │ │ ├── SkyLaunch.cs.meta │ │ ├── SuperPower.cs.meta │ │ ├── TestSubclassSandbox.cs.meta │ │ ├── FlashSpeed.cs │ │ ├── GroundDive.cs │ │ ├── SkyLaunch.cs │ │ └── SuperPower.cs │ └── Example.meta ├── Component Pattern.meta ├── Dirty Flag Pattern.meta ├── Game Loop Pattern.meta ├── Data Locality Pattern.meta ├── Event Queue Pattern.meta ├── Object Pool Pattern.meta ├── Service Locator Pattern.meta ├── SubclassSandbox Pattern.meta └── Type Object Pattern.meta ├── MyScene.meta ├── MyScene └── CommandTest.unity.meta ├── Behavioral Patterns ├── Command Pattern │ ├── README.md.meta │ ├── Example3 │ │ ├── Command.cs │ │ ├── command pattern example2.unity.meta │ │ ├── MoveCommand.cs.meta │ │ ├── MoveCommandReceiver.cs.meta │ │ ├── Command.cs.meta │ │ └── InputHandler.cs.meta │ ├── Example1 │ │ ├── TestCommandExample1.unity.meta │ │ └── CommandExample1.cs.meta │ ├── Example1.meta │ ├── Example2.meta │ ├── Example3.meta │ ├── Example4.meta │ ├── Example4 │ │ ├── CommandPatternExample4.unity.meta │ │ └── CommandPatternExample4.cs.meta │ ├── Structure │ │ ├── TestCommandStructure.unity.meta │ │ └── CommandStructure.cs.meta │ ├── Example2 │ │ ├── command pattern example 1.unity.meta │ │ ├── Radio.cs.meta │ │ ├── ICommand.cs.meta │ │ ├── TVRemove.cs.meta │ │ ├── Television.cs.meta │ │ ├── TurnTVOff.cs.meta │ │ ├── TurnTVOn.cs.meta │ │ ├── DeviceButton.cs.meta │ │ ├── TurnItAllOff.cs.meta │ │ ├── TurnVolumeDown.cs.meta │ │ ├── TurnVolumeUp.cs.meta │ │ ├── IElectronicDevice.cs.meta │ │ ├── TestCommandPattern.cs.meta │ │ ├── ICommand.cs │ │ ├── TVRemove.cs │ │ ├── IElectronicDevice.cs │ │ ├── TurnTVOn.cs │ │ ├── TurnTVOff.cs │ │ ├── TurnVolumeUp.cs │ │ ├── TurnVolumeDown.cs │ │ ├── DeviceButton.cs │ │ ├── Radio.cs │ │ ├── Television.cs │ │ └── TurnItAllOff.cs │ ├── Structure.meta │ └── README.md ├── Memento Pattern │ ├── README.md.meta │ ├── Example1 │ │ ├── TestMementoExample1.unity.meta │ │ └── MementoExample1.cs.meta │ ├── Example2 │ │ ├── MementoExample2.unity.meta │ │ └── MementoExample2.cs.meta │ ├── Example1.meta │ ├── Example2.meta │ ├── Structure │ │ ├── TestMementoStructure.unity.meta │ │ └── MementoStructure.cs.meta │ └── Structure.meta ├── State Pattern │ ├── README.md.meta │ ├── Exmaple1 │ │ ├── StatePatternExample1.unity.meta │ │ └── StateExample1.cs.meta │ ├── Exmaple2 │ │ ├── StatePatternExmaple2.unity.meta │ │ └── StateExmaple2.cs.meta │ ├── Exmaple3 │ │ ├── StatePatternExample3.unity.meta │ │ ├── HasCard.cs.meta │ │ ├── HasPin.cs.meta │ │ ├── NoCard.cs.meta │ │ ├── NoCash.cs.meta │ │ ├── ATMMachine.cs.meta │ │ ├── ATMState.cs.meta │ │ ├── TestATMMachine.cs.meta │ │ ├── ATMState.cs │ │ ├── TestATMMachine.cs │ │ └── NoCard.cs │ ├── Exmaple4 │ │ ├── StatePatternExample4.unity.meta │ │ ├── Heroine.cs.meta │ │ ├── DrivingState.cs.meta │ │ ├── DuckingState.cs.meta │ │ ├── JumpingState.cs.meta │ │ ├── TestHeroine.cs.meta │ │ ├── HeroineBaseState.cs.meta │ │ ├── StandingState.cs.meta │ │ ├── HeroineBaseState.cs │ │ ├── TestHeroine.cs │ │ ├── Heroine.cs │ │ ├── DrivingState.cs │ │ ├── DuckingState.cs │ │ ├── JumpingState.cs │ │ └── StandingState.cs │ ├── Exmaple5 │ │ ├── StatePatternExample5.unity.meta │ │ └── StatePatternExample5.cs.meta │ ├── Structure │ │ ├── TestStateStructure.unity.meta │ │ └── StateStructure.cs.meta │ ├── Exmaple1.meta │ ├── Exmaple2.meta │ ├── Exmaple3.meta │ ├── Exmaple4.meta │ ├── Exmaple5.meta │ ├── Structure.meta │ └── README.md ├── Visitor Pattern │ ├── README.md.meta │ ├── Exmaple1.meta │ ├── Exmaple1 │ │ ├── VisitorPatternExample1.unity.meta │ │ └── VisitorPatternExample1.cs.meta │ ├── Exmaple2.meta │ ├── Exmaple2 │ │ ├── VisitorPatternExample2.unity.meta │ │ └── VisitorPatternExample2.cs.meta │ ├── Structure │ │ ├── TestVisitorStructure.unity.meta │ │ └── VisitorStructure.cs.meta │ └── Structure.meta ├── Interpreter Pattern │ ├── README.md.meta │ ├── Example2 │ │ ├── InterpreterExample2.unity.meta │ │ └── InterpreterExample2.cs.meta │ ├── Example1.meta │ ├── Example1 │ │ ├── TestInterpreterExample1.unity.meta │ │ └── InterpreterExample1.cs.meta │ ├── Example2.meta │ ├── Structure.meta │ └── Structure │ │ ├── TestInterpreterStructrue.unity.meta │ │ └── InterpreterStructrue.cs.meta ├── Iterator Pattern │ ├── README.md.meta │ ├── Example2 │ │ ├── IteratorExample2.unity.meta │ │ └── IteratorExample2.cs.meta │ ├── Example1 │ │ ├── TestIteratorExample1.unity.meta │ │ └── IteratorExample1.cs.meta │ ├── Structure │ │ ├── TestIteratorStructure.unity.meta │ │ └── IteratorStructure.cs.meta │ ├── Example1.meta │ ├── Example2.meta │ ├── Structure.meta │ └── README.md ├── Mediator Pattern │ ├── README.md.meta │ ├── Example2 │ │ ├── MediatorExample2.unity.meta │ │ └── MediatorExample2.cs.meta │ ├── Example1 │ │ ├── TestMediatorExample1.unity.meta │ │ └── MediatorExample1.cs.meta │ ├── Structure │ │ ├── TestMediatorStructure.unity.meta │ │ └── MediatorStructure.cs.meta │ ├── Example1.meta │ ├── Example2.meta │ ├── Structure.meta │ └── README.md ├── Observer Pattern │ ├── README.md.meta │ ├── Example1 │ │ ├── TestObserverExample1.unity.meta │ │ └── ObserverExample1.cs.meta │ ├── Structure │ │ ├── TestObserverStructure.unity.meta │ │ └── ObserverStructure.cs.meta │ ├── Example1.meta │ └── Structure.meta ├── Strategy Pattern │ ├── README.md.meta │ ├── Example2 │ │ ├── StrategyPatternExample2.unity.meta │ │ ├── BadCodeExample.cs.meta │ │ ├── StrategyPatternExample2.cs.meta │ │ └── BadCodeExample.cs │ ├── Exmaple1 │ │ ├── StrategyPatternExample1.unity.meta │ │ └── StrategyPatternExample1.cs.meta │ ├── Structure │ │ ├── TestStrategyStructure.unity.meta │ │ └── StrategyStructure.cs.meta │ ├── Example2.meta │ ├── Exmaple1.meta │ ├── Structure.meta │ └── README.md ├── Template Method Pattern │ ├── README.md.meta │ ├── Exmaple1.meta │ ├── Structure.meta │ ├── Exmaple1 │ │ ├── TemplateMethodPatternExample1.unity.meta │ │ └── TemplateMethodPatternExample1.cs.meta │ ├── Structure │ │ ├── TestTemplateMethodStructure.unity.meta │ │ └── TemplateMethodStructure.cs.meta │ └── README.md ├── Chain of Responsibility Pattern │ ├── README.md.meta │ ├── Example1 │ │ ├── TestChainOfRespExample1.unity.meta │ │ └── ChainOfResponsibilityExample1.cs.meta │ ├── Example1.meta │ ├── Example2.meta │ ├── Structure.meta │ ├── Example2 │ │ ├── ChainOfResponsibilityExample2.unity.meta │ │ └── ChainOfResponsibilityExample2.cs.meta │ ├── Structure │ │ ├── TestChainOfResponsibilityStructure.unity.meta │ │ └── ChainOfResponsibilityStructure.cs.meta │ └── README.md ├── State Pattern.meta ├── Command Pattern.meta ├── Interpreter Pattern.meta ├── Iterator Pattern.meta ├── Mediator Pattern.meta ├── Memento Pattern.meta ├── Observer Pattern.meta ├── Strategy Pattern.meta ├── Visitor Pattern.meta ├── Template Method Pattern.meta └── Chain of Responsibility Pattern.meta ├── Creational Patterns ├── Builder Pattern │ ├── README.md.meta │ ├── Example1.meta │ ├── Example1 │ │ ├── BuilderPatternExample1.unity.meta │ │ └── BuilderPatternExample1.cs.meta │ ├── Example2.meta │ ├── Example2 │ │ ├── BuilderPatternExample2.unity.meta │ │ └── BuilderPatternExample2.cs.meta │ ├── Structure │ │ ├── TestBuilderStructure.unity.meta │ │ └── BuilderStructure.cs.meta │ └── Structure.meta ├── Prototype Pattern │ ├── README.md.meta │ ├── Example1.meta │ ├── Example1 │ │ ├── PrototypePatternExample1.unity.meta │ │ └── PrototypePatternExample1.cs.meta │ ├── Example2.meta │ ├── Example2 │ │ ├── PrototypePatternExample2.unity.meta │ │ └── PrototypePatternExample2.cs.meta │ ├── Structure.meta │ ├── Structure │ │ ├── TestPrototypeStructure.unity.meta │ │ └── PrototypeStructure.cs.meta │ └── README.md ├── Singleton Pattern │ ├── README.md.meta │ ├── Example1.meta │ ├── Example1 │ │ ├── SingletonPatternExample1.unity.meta │ │ └── SingletonPatternExample1.cs.meta │ ├── Example2.meta │ ├── Example2 │ │ ├── SingletonPatternExample2.unity.meta │ │ └── SingletonPatternExample2.cs.meta │ ├── Example3.meta │ ├── Example3 │ │ ├── SingletonPatternExample3.unity.meta │ │ └── SingletonPatternExample3.cs.meta │ ├── Structure.meta │ ├── Structure │ │ ├── TestSingletonStructure.unity.meta │ │ └── SingletonStructure.cs.meta │ └── README.md ├── Abstract Factory Pattern │ ├── README.md.meta │ ├── Example1.meta │ ├── Example2.meta │ ├── Structure.meta │ ├── Example1 │ │ ├── AbstractFactoryPatternExample1.unity.meta │ │ └── AbstractFactoryPatternExample1.cs.meta │ ├── Example2 │ │ ├── AbstractFactoryPatternExample2.unity.meta │ │ └── AbstractFactoryPatternExample2.cs.meta │ └── Structure │ │ ├── TestAbstractFactoryStructrue.unity.meta │ │ └── AbstractFactoryStructrue.cs.meta ├── Factory Method Pattern │ ├── README.md.meta │ ├── Example1.meta │ ├── Example2.meta │ ├── Structure.meta │ ├── Structure │ │ ├── TestFactoryMethodStructure.unity.meta │ │ └── FactoryMethodStructure.cs.meta │ ├── Example1 │ │ ├── FactoryMethodPatternExample1.unity.meta │ │ └── FactoryMethodPatternExample1.cs.meta │ ├── Example2 │ │ ├── FactoryMethodPatternExample2.unity.meta │ │ └── FactoryMethodPatternExample2.cs.meta │ └── README.md ├── Builder Pattern.meta ├── Prototype Pattern.meta ├── Singleton Pattern.meta ├── Abstract Factory Pattern.meta └── Factory Method Pattern.meta ├── Structural Patterns ├── Adapter Pattern │ ├── README.md.meta │ ├── Exmaple1.meta │ ├── Exmaple1 │ │ ├── AdapterPatternExample1.unity.meta │ │ └── AdapterPatternExample1.cs.meta │ ├── Exmaple2.meta │ ├── Exmaple2 │ │ ├── AdapterPatternExample2.unity.meta │ │ └── AdapterPatternExample2.cs.meta │ ├── Structure │ │ ├── TestAdapterStructure.unity.meta │ │ └── AdapterStructure.cs.meta │ ├── Structure.meta │ └── README.md ├── Bridge Pattern │ ├── README.md.meta │ ├── Structure │ │ ├── TestBridgeStructure.unity.meta │ │ └── BridgeStructure.cs.meta │ ├── Exmaple1.meta │ ├── Exmaple1 │ │ ├── BridgePatternExample1.unity.meta │ │ └── BridgePatternExample1.cs.meta │ ├── Exmaple2.meta │ ├── Exmaple2 │ │ ├── BridgePatternExample2.unity.meta │ │ └── BridgePatternExample2.cs.meta │ └── Structure.meta ├── Facade Pattern │ ├── README.md.meta │ ├── Structure │ │ ├── TestFacadeStructure.unity.meta │ │ └── FacadeStructure.cs.meta │ ├── Exmaple1.meta │ ├── Exmaple1 │ │ ├── FacadePatternExample1.unity.meta │ │ └── FacadePatternExample1.cs.meta │ ├── Exmaple2.meta │ ├── Exmaple2 │ │ ├── FacadePatternExample2.unity.meta │ │ └── FacadePatternExample2.cs.meta │ ├── Structure.meta │ └── README.md ├── Proxy Pattern │ ├── README.md.meta │ ├── Exmaple1 │ │ ├── ProxyPatternExample1.unity.meta │ │ └── ProxyPatternExample1.cs.meta │ ├── Structure │ │ ├── TestProxyStructure.unity.meta │ │ └── ProxyStructure.cs.meta │ ├── Exmaple1.meta │ └── Structure.meta ├── Composite Pattern │ ├── README.md.meta │ ├── Exmaple1.meta │ ├── Exmaple1 │ │ ├── CompositePatternExample1.unity.meta │ │ └── CompositePatternExample1.cs.meta │ ├── Exmaple2.meta │ ├── Exmaple2 │ │ ├── CompositePatternExample2.unity.meta │ │ └── CompositePatternExample2.cs.meta │ ├── Structure.meta │ └── Structure │ │ ├── TestCompositeStructure.unity.meta │ │ └── CompositeStructure.cs.meta ├── Decorator Pattern │ ├── README.md.meta │ ├── Exmaple1.meta │ ├── Exmaple1 │ │ ├── DecoratorPatternExample1.unity.meta │ │ └── DecoratorPatternExample1.cs.meta │ ├── Exmaple2.meta │ ├── Exmaple2 │ │ ├── DecoratorPatternExample2.unity.meta │ │ └── DecoratorPatternExample2.cs.meta │ ├── Structure.meta │ ├── Structure │ │ ├── TestDecoratorStructure.unity.meta │ │ └── DecoratorStructure.cs.meta │ └── README.md ├── Flyweight Pattern │ ├── README.md.meta │ ├── Exmaple1.meta │ ├── Exmaple1 │ │ ├── FlyweightPatternExample1.unity.meta │ │ └── FlyweightPatternExample1.cs.meta │ ├── Exmaple2.meta │ ├── Exmaple2 │ │ └── FlyweightPatternExample2.unity.meta │ ├── Structure.meta │ └── Structure │ │ ├── TestFlyweightStructure.unity.meta │ │ └── FlyweightStructure.cs.meta ├── Bridge Pattern.meta ├── Facade Pattern.meta ├── Proxy Pattern.meta ├── Adapter Pattern.meta ├── Composite Pattern.meta ├── Decorator Pattern.meta └── Flyweight Pattern.meta ├── Behavioral Patterns.meta ├── Creational Patterns.meta ├── Structural Patterns.meta └── Game Programming Patterns.meta /Media/repo-cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/Media/repo-cover.jpg -------------------------------------------------------------------------------- /UML_Picture/chain.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/chain.gif -------------------------------------------------------------------------------- /UML_Picture/proxy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/proxy.gif -------------------------------------------------------------------------------- /UML_Picture/state.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/state.gif -------------------------------------------------------------------------------- /UML_Picture/adapter.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/adapter.gif -------------------------------------------------------------------------------- /UML_Picture/bridge.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/bridge.gif -------------------------------------------------------------------------------- /UML_Picture/builder.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/builder.gif -------------------------------------------------------------------------------- /UML_Picture/command.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/command.gif -------------------------------------------------------------------------------- /UML_Picture/facade.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/facade.gif -------------------------------------------------------------------------------- /UML_Picture/factory.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/factory.gif -------------------------------------------------------------------------------- /UML_Picture/memento.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/memento.gif -------------------------------------------------------------------------------- /UML_Picture/visitor.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/visitor.gif -------------------------------------------------------------------------------- /UML_Picture/abstract.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/abstract.gif -------------------------------------------------------------------------------- /UML_Picture/composite.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/composite.gif -------------------------------------------------------------------------------- /UML_Picture/decorator.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/decorator.gif -------------------------------------------------------------------------------- /UML_Picture/flyweight.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/flyweight.gif -------------------------------------------------------------------------------- /UML_Picture/iterator.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/iterator.gif -------------------------------------------------------------------------------- /UML_Picture/mediator.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/mediator.gif -------------------------------------------------------------------------------- /UML_Picture/observer.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/observer.gif -------------------------------------------------------------------------------- /UML_Picture/prototype.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/prototype.gif -------------------------------------------------------------------------------- /UML_Picture/singleton.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/singleton.gif -------------------------------------------------------------------------------- /UML_Picture/strategy.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/strategy.gif -------------------------------------------------------------------------------- /UML_Picture/template.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/template.gif -------------------------------------------------------------------------------- /UML_Picture/interpreter.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/interpreter.gif -------------------------------------------------------------------------------- /UML_Picture/type-object.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/type-object.png -------------------------------------------------------------------------------- /ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 2019.4.13f1c1 2 | m_EditorVersionWithRevision: 2019.4.13f1c1 (ddecf0c37a3b) 3 | -------------------------------------------------------------------------------- /UML_Picture/UML_Description.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/UML_Picture/UML_Description.png -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Script/README.md: -------------------------------------------------------------------------------- 1 | # Reference 2 | 3 | https://www.assetstore.unity3d.com/cn/?stay#!/content/31928 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /ProjectSettings/ClusterInputManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!236 &1 4 | ClusterInputManager: 5 | m_ObjectHideFlags: 0 6 | m_Inputs: [] 7 | -------------------------------------------------------------------------------- /ProjectSettings/PresetManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1386491679 &1 4 | PresetManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_DefaultPresets: {} 8 | -------------------------------------------------------------------------------- /Assets/MyScene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a6bed5509120e92449b11754d846f5d3 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/MyScene/CommandTest.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3a06567af32d5994fb075b4ce0abc3a9 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /ProjectSettings/EditorBuildSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1045 &1 4 | EditorBuildSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Scenes: [] 8 | m_configObjects: {} 9 | -------------------------------------------------------------------------------- /ProjectSettings/XRSettings.asset: -------------------------------------------------------------------------------- 1 | { 2 | "m_SettingKeys": [ 3 | "VR Device Disabled", 4 | "VR Device User Alert" 5 | ], 6 | "m_SettingValues": [ 7 | "False", 8 | "False" 9 | ] 10 | } -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/README.md: -------------------------------------------------------------------------------- 1 | # Screen Shot 2 | ![](objectPoolScreenShot.png) 3 | 4 | # Reference 5 | 6 | https://www.assetstore.unity3d.com/cn/?stay#!/content/31928 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/objectPoolScreenShot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/haili1234/UnityDesignPatternSamples/HEAD/Assets/Game Programming Patterns/Object Pool Pattern/Example/objectPoolScreenShot.png -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 23cc684e13f68a6498d1a583369d8713 3 | timeCreated: 1476253449 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Memento Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1279ce79c1536934ca808844ab3f423d 3 | timeCreated: 1476361211 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e9a1080148853ea4ba05ec16115a50a1 3 | timeCreated: 1476361212 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Visitor Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: af5532d26f58cef4e895efab7bd21d07 3 | timeCreated: 1476361212 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Builder Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9f90499aa6ad4184386db79c9ed61efc 3 | timeCreated: 1476361211 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Adapter Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d09886b672b139945b598f9c2aec8a0e 3 | timeCreated: 1476361212 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Bridge Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c0c5b2b6deb32a14ca850be35a1e320e 3 | timeCreated: 1476361212 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Facade Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 16d967973f8fba6469064425965795b7 3 | timeCreated: 1476361211 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Proxy Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: de3de172e48cbea4096314b1706d569a 3 | timeCreated: 1476361212 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6b75088dd7c261048856c29626f184b6 3 | folderAsset: yes 4 | timeCreated: 1476363018 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Interpreter Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6debc223d587c0049a8d6228674476d1 3 | timeCreated: 1476361211 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Iterator Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b3b062c4e100fcf42828d623c49b6aee 3 | timeCreated: 1476361212 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Mediator Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 68fb95267f9fe084c98bf2c242038cab 3 | timeCreated: 1476361211 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Observer Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 40326e0b80148da4199d4bcc38ac57ab 3 | timeCreated: 1476361211 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Strategy Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fc1f6610182bb77478d4935be93db185 3 | timeCreated: 1476361212 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a45ced72174ab2f4383028c0e805e8cd 3 | folderAsset: yes 4 | timeCreated: 1476362942 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Prototype Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e3c984f8872e4574d9fbdb0ba805da5c 3 | timeCreated: 1476361212 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Singleton Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 73f80df7b44f1564d8ebda90f3f47dc0 3 | timeCreated: 1476361211 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b3ff4104055ba1e469883244dca9ec7b 3 | folderAsset: yes 4 | timeCreated: 1476362981 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Composite Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1cc9db3a4d6039a429d3463b4cc54915 3 | timeCreated: 1476361211 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Decorator Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1e34d70006fdecc469aee686828e99c7 3 | timeCreated: 1476361211 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Flyweight Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1f7e3d8ed3b98264f8cd98ad776e2ee5 3 | timeCreated: 1476361211 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Template Method Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3f4cb937ad7dadc41ad0357844768847 3 | timeCreated: 1476361211 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Abstract Factory Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6109250179e8da14ea639dd3986b74fa 3 | timeCreated: 1476361211 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Factory Method Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d64281c04213ac346aa81d7383524819 3 | timeCreated: 1476361212 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Component Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3231983e871f7b647b3b0eb342583fd4 3 | timeCreated: 1514219953 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Dirty Flag Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2e570f0b349a0e648ab8b1ee17317b0c 3 | timeCreated: 1515567114 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 84beb725d89203749aa1f77029e0bb2c 3 | timeCreated: 1514854979 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Game Loop Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 00022955503aa1a4fa2e7eccda90e53e 3 | timeCreated: 1514860843 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cd2583eb005e4da44ab347cd4bff5a02 3 | timeCreated: 1519538865 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Type Object Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 29251969591b08348a3ba3ab38b3f55d 3 | timeCreated: 1514048136 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 70017361ed05cbc4b992427e076d23f7 3 | folderAsset: yes 4 | timeCreated: 1476363090 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Data Locality Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aa4979980c1232f409ecdd0e8ef9aff6 3 | timeCreated: 1515421289 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Service Locator Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9991e7835ca77f448833f8bf1812c052 3 | timeCreated: 1515414336 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/SubclassSandbox Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 97809e98d782c80438c9e16f8d56d411 3 | timeCreated: 1514048136 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Chain of Responsibility Pattern/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 62efc7bff6903b248b0ff1e722310259 3 | timeCreated: 1476361211 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example3/Command.cs: -------------------------------------------------------------------------------- 1 | 2 | /// 3 | /// The 'Command' abstract class that we will inherit from 4 | /// 5 | public interface Command 6 | { 7 | void Execute(); 8 | void UnExecute(); 9 | } 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bdc0355359205fc4695ddd32142e2c6a 3 | folderAsset: yes 4 | timeCreated: 1476072123 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 78cf6f3a0ee44084392555077cc6a56d 3 | timeCreated: 1519538407 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Bridge Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 84859b2bdbe87cd46b1d9edb23643c27 3 | folderAsset: yes 4 | timeCreated: 1476265572 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Facade Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d4b6936bbc7f7a546a70c7c22d673e29 3 | folderAsset: yes 4 | timeCreated: 1476278124 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Proxy Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f309d1545e508a748830cb1c72fb6be3 3 | folderAsset: yes 4 | timeCreated: 1476278430 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /ProjectSettings/TimeManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!5 &1 4 | TimeManager: 5 | m_ObjectHideFlags: 0 6 | Fixed Timestep: 0.02 7 | Maximum Allowed Timestep: 0.33333334 8 | m_TimeScale: 1 9 | Maximum Particle Timestep: 0.03 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f349b81f0b98d9b4fb895cb218e5aa73 3 | folderAsset: yes 4 | timeCreated: 1476172148 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example1/TestCommandExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7d9fa9990c7338c4286b66ab93a432b6 3 | timeCreated: 1476416014 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Interpreter Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c05d4ef751506df4e94f8851e8fb275d 3 | folderAsset: yes 4 | timeCreated: 1476256528 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Iterator Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 21a76eb2cd4b72445978bcb512713cb4 3 | folderAsset: yes 4 | timeCreated: 1476259703 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Iterator Pattern/Example2/IteratorExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7077e46107ffcc143971855609f46e89 3 | timeCreated: 1478135295 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Mediator Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4c2bdae9f3663ef4f9e247895758c16f 3 | folderAsset: yes 4 | timeCreated: 1476253516 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Mediator Pattern/Example2/MediatorExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a7b96277519f87c40bc95136a53c1082 3 | timeCreated: 1478221079 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Memento Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5a60038efeb90e9428dca0bfe9b75299 3 | folderAsset: yes 4 | timeCreated: 1476260928 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Memento Pattern/Example1/TestMementoExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a1d9692612aed704f9523ffb7643436f 3 | timeCreated: 1476428197 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Memento Pattern/Example2/MementoExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 76231a1903b6e9f439bb7056f17bc9fa 3 | timeCreated: 1478235426 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Observer Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 95dbb1855accb944381d026a327e5612 3 | folderAsset: yes 4 | timeCreated: 1476180760 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple1/StatePatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a73e314d4fcc30847b49d775f88b023a 3 | timeCreated: 1476437433 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple2/StatePatternExmaple2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ccc70d2db00ff984780f960fa25fba9a 3 | timeCreated: 1476437953 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple3/StatePatternExample3.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d658dee7eb439b44b9310c935abddb05 3 | timeCreated: 1476074390 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4/StatePatternExample4.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: af6e6711e82bae743ae9c7400739c23a 3 | timeCreated: 1476155316 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple5/StatePatternExample5.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 782958e0a4c015649acb69ca5a46d41d 3 | timeCreated: 1513169539 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Structure/TestStateStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d249822de3bd1ce41ab807ac2a106c39 3 | timeCreated: 1476337453 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Strategy Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f601903938f4a444ba8c19d4c5de4e06 3 | folderAsset: yes 4 | timeCreated: 1476261820 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Visitor Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1003d6639b4c9084f9259eb3503bc4e0 3 | folderAsset: yes 4 | timeCreated: 1476262543 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Builder Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d649895106e574a4bab108dc398ed0c7 3 | folderAsset: yes 4 | timeCreated: 1476335875 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Prototype Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d24462407978acd49acca24c8a5ab47a 3 | folderAsset: yes 4 | timeCreated: 1476243826 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Singleton Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e055e95d34c4eb44788576a1632501fa 3 | folderAsset: yes 4 | timeCreated: 1476240011 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Script/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3a234c806a7ca3f4294d37e225986e0e 3 | timeCreated: 1519537843 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Adapter Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f6e267d921882af42839e2be5047dfca 3 | folderAsset: yes 4 | timeCreated: 1476264924 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Bridge Pattern/Structure/TestBridgeStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4bd5bd83f66fd0f40acc343facb7804b 3 | timeCreated: 1476265617 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Composite Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 36656a5cf988231429bc52c4e453fd4e 3 | folderAsset: yes 4 | timeCreated: 1476272428 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Decorator Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 068da35af1fa46f4b888daef50593f59 3 | folderAsset: yes 4 | timeCreated: 1476274088 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Facade Pattern/Structure/TestFacadeStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fdae0424d0055d6428835560167316fd 3 | timeCreated: 1476278168 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Flyweight Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cf885358d14dc43488951b99316b5f23 3 | folderAsset: yes 4 | timeCreated: 1476183893 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Proxy Pattern/Exmaple1/ProxyPatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d1adafe4d4af2d94e9738b2ba2c46b18 3 | timeCreated: 1476755686 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Proxy Pattern/Structure/TestProxyStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 799e2b58574bc784eadc43a48d58fbb8 3 | timeCreated: 1476278451 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d8ef10013bde1ff449b915e91ce89072 3 | folderAsset: yes 4 | timeCreated: 1476415959 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7dbe42ec5a9c61b45bdb55d3298f7812 3 | folderAsset: yes 4 | timeCreated: 1476172445 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example3.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e24ed5cf749038446b91f8b851de617f 3 | folderAsset: yes 4 | timeCreated: 1476172445 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example4.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 086a9ad1eca6efa45977620e876a9a27 3 | folderAsset: yes 4 | timeCreated: 1513178402 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example4/CommandPatternExample4.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6e62709717944ba43af88f7a557a2783 3 | timeCreated: 1513178981 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Structure/TestCommandStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a6fe8f56cf4ccaa4ebfcf4b22b9a7dc3 3 | timeCreated: 1476337530 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Interpreter Pattern/Example2/InterpreterExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 48e84814dfcc93f47a1f547c66adafb2 3 | timeCreated: 1478134622 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Iterator Pattern/Example1/TestIteratorExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 86096f5591bc0df45bdccdd8eaf50532 3 | timeCreated: 1476418007 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Iterator Pattern/Structure/TestIteratorStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6a52b71863b406944b66a018df4f6efb 3 | timeCreated: 1476259765 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Mediator Pattern/Example1/TestMediatorExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ee6cd5198e2fbdb41802988520f4242a 3 | timeCreated: 1476429531 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Mediator Pattern/Structure/TestMediatorStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e403e29e13dbdc64292bb1cb251e6a6f 3 | timeCreated: 1476254154 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Memento Pattern/Example1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 61cd7c128cfddad40bcf5ba230629610 3 | folderAsset: yes 4 | timeCreated: 1476428127 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Memento Pattern/Example2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 827cfdec70344104a91405025578d5ab 3 | folderAsset: yes 4 | timeCreated: 1478235407 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Memento Pattern/Structure/TestMementoStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2ca09da7283f5524592d99623f2d8928 3 | timeCreated: 1476260963 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Observer Pattern/Example1/TestObserverExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 45070ac04c4aef14f8f9e0bad7cd09fe 3 | timeCreated: 1476430270 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Observer Pattern/Structure/TestObserverStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e1776a250ceb0054ea645d93016ea833 3 | timeCreated: 1476181107 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f1ce7b1591a850241891bd4d2f498730 3 | folderAsset: yes 4 | timeCreated: 1476434845 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 51932932d05722b459d5984364d06986 3 | folderAsset: yes 4 | timeCreated: 1476437745 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple3.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 57d80de98047c824f81fe871d648c9ec 3 | folderAsset: yes 4 | timeCreated: 1476086588 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f9d736a80aaac4c478549acf93a0b53f 3 | folderAsset: yes 4 | timeCreated: 1476086588 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple5.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c0984d5d2ac53884a96456f406f771c2 3 | folderAsset: yes 4 | timeCreated: 1513169120 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bb80d0f4b82e38d468567455ab26aecb 3 | folderAsset: yes 4 | timeCreated: 1476337222 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Strategy Pattern/Example2/StrategyPatternExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e4ddda7ee406a2a418f7b3a6445aaa3a 3 | timeCreated: 1478437099 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Strategy Pattern/Exmaple1/StrategyPatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 51f35029052a3554892451f93391793d 3 | timeCreated: 1476438175 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Strategy Pattern/Structure/TestStrategyStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 21ca35269896af94fab3d3de5b08bdd3 3 | timeCreated: 1476261907 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Template Method Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: db428b209ed7c764eb0e96a9cd66958f 3 | folderAsset: yes 4 | timeCreated: 1476262168 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Visitor Pattern/Exmaple1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cc27e2940e4473d4e8b0740c78f1a008 3 | folderAsset: yes 4 | timeCreated: 1476439177 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Visitor Pattern/Exmaple1/VisitorPatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5761348ef19ca4245820a950f2c9327e 3 | timeCreated: 1476439224 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Visitor Pattern/Exmaple2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7a6a2b27544a8e945a1a0d31f8630018 3 | folderAsset: yes 4 | timeCreated: 1484050226 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Visitor Pattern/Exmaple2/VisitorPatternExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0156cb2778a71b24993ea9d3dcfc13c5 3 | timeCreated: 1484050251 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Visitor Pattern/Structure/TestVisitorStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bf85933c98545584a82a04f78343d8c0 3 | timeCreated: 1476262836 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Abstract Factory Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8b83a2c51e993834da01fa7b0a3cf5ba 3 | folderAsset: yes 4 | timeCreated: 1476332676 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Builder Pattern/Example1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2d395885b94e3e547ade622604c0f4b3 3 | folderAsset: yes 4 | timeCreated: 1476841267 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Builder Pattern/Example1/BuilderPatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 357ece46360c1cc4bb29e1a251eef4b6 3 | timeCreated: 1476841320 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Builder Pattern/Example2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ac5f6a7deacc5c14b869ffb004c96799 3 | folderAsset: yes 4 | timeCreated: 1484051223 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Builder Pattern/Example2/BuilderPatternExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 16dbba2c2f2ecd54ca40c1a4a0619999 3 | timeCreated: 1484051296 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Builder Pattern/Structure/TestBuilderStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a6f525ebcb466bb47a6bb6217b646e31 3 | timeCreated: 1476335915 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Factory Method Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 251a0977eb6126f4ea0bb9547d78785b 3 | folderAsset: yes 4 | timeCreated: 1476336361 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Component Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 65a48da916301fb4b8a69c9655de2f9b 3 | folderAsset: yes 4 | timeCreated: 1514208435 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Dirty Flag Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a2a3cbd178776894dba2d9900e407975 3 | folderAsset: yes 4 | timeCreated: 1515511351 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Game Loop Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 04f543c1105f57b4cbd43e975e604f2c 3 | folderAsset: yes 4 | timeCreated: 1514855389 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Adapter Pattern/Exmaple1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5f022e1bc7a52a74b9300c226301d765 3 | folderAsset: yes 4 | timeCreated: 1476583560 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Adapter Pattern/Exmaple1/AdapterPatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3634181dfa2d0f34cbf6f1f8f712fed6 3 | timeCreated: 1476583588 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Adapter Pattern/Exmaple2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e85af868ce3c04b47a29feb28fe731f0 3 | folderAsset: yes 4 | timeCreated: 1484095881 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Adapter Pattern/Exmaple2/AdapterPatternExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d785892aa7d671b4db0aa1284ca42096 3 | timeCreated: 1484095897 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Adapter Pattern/Structure/TestAdapterStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 85304e4e668f9e347bb41d291c7b390c 3 | timeCreated: 1476264956 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Bridge Pattern/Exmaple1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6bfb589303817b24c93bf58a4912c45a 3 | folderAsset: yes 4 | timeCreated: 1476594552 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Bridge Pattern/Exmaple1/BridgePatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 96c812479bd7b8843868ac6c90233149 3 | timeCreated: 1476594583 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Bridge Pattern/Exmaple2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4f0748bffec85a841898cd373d602833 3 | folderAsset: yes 4 | timeCreated: 1484096314 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Bridge Pattern/Exmaple2/BridgePatternExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dcd96ffb645e8f5498d14c18fd1b6734 3 | timeCreated: 1484096330 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Bridge Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5bf49f191c0af6840bbc7667721c7f64 3 | folderAsset: yes 4 | timeCreated: 1476265593 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Facade Pattern/Exmaple1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 570b487a85355ae46bf6eba5e7a75543 3 | folderAsset: yes 4 | timeCreated: 1476754115 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Facade Pattern/Exmaple1/FacadePatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d1e8995b3195e9f41bcb46f06b735286 3 | timeCreated: 1476754818 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Facade Pattern/Exmaple2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 99edbd6dc0542454ea93cc5b7c33cac4 3 | folderAsset: yes 4 | timeCreated: 1484097384 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Facade Pattern/Exmaple2/FacadePatternExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6011f0ae75b5e7246a791960df38ae5d 3 | timeCreated: 1484097403 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Facade Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a00b5cbe41c5879409ffe161018dadbc 3 | folderAsset: yes 4 | timeCreated: 1476278139 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Proxy Pattern/Exmaple1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5223d4133694a314096ef2bfd6f541c7 3 | folderAsset: yes 4 | timeCreated: 1476755644 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Proxy Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3f0c5cd5a31754c4d8f696b31e03432c 3 | folderAsset: yes 4 | timeCreated: 1476278436 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/command pattern example 1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3194668c3e6e318499a361b1a434b5c1 3 | timeCreated: 1476177594 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example3/command pattern example2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 84db78d1aa884244cb57b98cac903f64 3 | timeCreated: 1443726226 4 | licenseType: Free 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8ea3107aa73b34a4dba4ca42317755e3 3 | folderAsset: yes 4 | timeCreated: 1476337480 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Interpreter Pattern/Example1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c2b2d6259f4a42040abea5be5a63a86e 3 | folderAsset: yes 4 | timeCreated: 1476417008 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Interpreter Pattern/Example1/TestInterpreterExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 495d3860a8b49e44396a2a26726531fc 3 | timeCreated: 1476417031 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Interpreter Pattern/Example2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1ae149820bff1a64bbd6cfbc12a30de6 3 | folderAsset: yes 4 | timeCreated: 1478134589 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Interpreter Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d1d0d7a96bea8304d969442423b7b870 3 | folderAsset: yes 4 | timeCreated: 1476256539 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Interpreter Pattern/Structure/TestInterpreterStructrue.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7eda28f465f576c41a0968c092cdfa28 3 | timeCreated: 1476256595 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Iterator Pattern/Example1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3495268024177944ca26580accbe2e74 3 | folderAsset: yes 4 | timeCreated: 1476417987 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Iterator Pattern/Example2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 620483e6c6ec9c64c9021cc2ae07bdee 3 | folderAsset: yes 4 | timeCreated: 1478135284 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Iterator Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 71dbd20320478f74f8f71f40197852c0 3 | folderAsset: yes 4 | timeCreated: 1476259724 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Mediator Pattern/Example1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3425617abe43ffb4797b2d1ef3ecceb0 3 | folderAsset: yes 4 | timeCreated: 1476429393 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Mediator Pattern/Example2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d7d25f727b1900d48aa8bcb0f783db27 3 | folderAsset: yes 4 | timeCreated: 1478221049 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Mediator Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 358d622529949b544a081cc9923b81a4 3 | folderAsset: yes 4 | timeCreated: 1476253528 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Memento Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 231139635733b9a4ea2f40f351aa3885 3 | folderAsset: yes 4 | timeCreated: 1476260939 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Observer Pattern/Example1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a7e2d48162f811b47a991a471f9eb36d 3 | folderAsset: yes 4 | timeCreated: 1476430239 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Observer Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2d59e2241ccc3fe4a9acdc32965e7e70 3 | folderAsset: yes 4 | timeCreated: 1476180773 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Strategy Pattern/Example2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b7f95563d9fb7314582241dfb929f871 3 | folderAsset: yes 4 | timeCreated: 1478437085 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Strategy Pattern/Exmaple1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d3d797b3e435e5e4f9b5d55044af3655 3 | folderAsset: yes 4 | timeCreated: 1476438142 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Strategy Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cfd74ac50394f5a439e8f9b0b0818f06 3 | folderAsset: yes 4 | timeCreated: 1476261866 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Visitor Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 81b407875f738b9478c0afbf9e6d7d6d 3 | folderAsset: yes 4 | timeCreated: 1476262575 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Builder Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dcb46d80e23807e4d889a87bf1e4c26f 3 | folderAsset: yes 4 | timeCreated: 1476335883 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Prototype Pattern/Example1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 99f8400a2463d4d4f9e8cb7465fdf53f 3 | folderAsset: yes 4 | timeCreated: 1476844120 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Prototype Pattern/Example1/PrototypePatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 970f656b1ec32a34298d99e40ba56131 3 | timeCreated: 1476844174 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Prototype Pattern/Example2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 13aca397df29a1d4184ef7069a52fc72 3 | folderAsset: yes 4 | timeCreated: 1484052775 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Prototype Pattern/Example2/PrototypePatternExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 970e2557e919c7c43999fb1de33c767a 3 | timeCreated: 1484052803 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Prototype Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ac431beeec388834ab007c0a6b705c6d 3 | folderAsset: yes 4 | timeCreated: 1476243860 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Prototype Pattern/Structure/TestPrototypeStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aee6cce65797f1f4986f34cac24e9ce9 3 | timeCreated: 1476243897 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Singleton Pattern/Example1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5d9927db3d8579d4e910393fa6a133ee 3 | folderAsset: yes 4 | timeCreated: 1476844907 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Singleton Pattern/Example1/SingletonPatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4ac423d1ff9f64b4084056da099cff18 3 | timeCreated: 1476844929 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Singleton Pattern/Example2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4f8d6d4cd75240f4584c4802a7096cc3 3 | folderAsset: yes 4 | timeCreated: 1515413155 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Singleton Pattern/Example2/SingletonPatternExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ccddb4a4c121ad64b943d1bdbb47b5dd 3 | timeCreated: 1515413173 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Singleton Pattern/Example3.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 80d8d43f1e68c9647913652f0f3d904b 3 | folderAsset: yes 4 | timeCreated: 1519952415 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Singleton Pattern/Example3/SingletonPatternExample3.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4b32323d7254f6c45927ec9fdd35d8a7 3 | timeCreated: 1519952454 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Singleton Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 07d74907947887c438e0b97082586e78 3 | folderAsset: yes 4 | timeCreated: 1476240078 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Singleton Pattern/Structure/TestSingletonStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4924da4e05ab61c4cbb4e0f0355cff90 3 | timeCreated: 1476240284 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Data Locality Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 00d2e8c349c01bb40b4fee30d6f9f3f8 3 | folderAsset: yes 4 | timeCreated: 1515415908 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 212b83376be1df349a8b55d1c80689c7 3 | folderAsset: yes 4 | timeCreated: 1514299131 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Game Loop Pattern/Example/GameLoopPatternExample.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ed921be4b19dacc42949845534e9ebe7 3 | timeCreated: 1514855764 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0f937c57d0b56cc47a87c5d759b16af0 3 | folderAsset: yes 4 | timeCreated: 1517843179 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Material/Plane.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7af618ba2ff2b9240bd56f1882c72dda 3 | timeCreated: 1519529295 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/ObjectPoolExample.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 20758ebff2f19114b9e504f370ae09b8 3 | timeCreated: 1519532296 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Service Locator Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 316aa7b49346e3946ae808efa6ce3c2a 3 | folderAsset: yes 4 | timeCreated: 1515401972 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/SubclassSandbox Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7bb0f85f69fb9de44ac06dc331e4eda5 3 | folderAsset: yes 4 | timeCreated: 1476155448 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/SubclassSandbox Pattern/Example/SubclassSandbox.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 606722f5a3d51d246a2b8b3834a69fca 3 | timeCreated: 1476156096 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Type Object Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bc0415234c9b2e346b25d4fa77f02186 3 | folderAsset: yes 4 | timeCreated: 1514016872 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Adapter Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8ce50f158023e804cbdb02d90e128143 3 | folderAsset: yes 4 | timeCreated: 1476264936 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Composite Pattern/Exmaple1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 396ea509f63f0e447befed112afdc5c0 3 | folderAsset: yes 4 | timeCreated: 1476621349 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Composite Pattern/Exmaple1/CompositePatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c728510a820bb0f41ae0759105950e04 3 | timeCreated: 1476621415 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Composite Pattern/Exmaple2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9fbc7b515bd20374782fa68effb64972 3 | folderAsset: yes 4 | timeCreated: 1484096485 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Composite Pattern/Exmaple2/CompositePatternExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3f627a83b0baa7546b1bc79ded005803 3 | timeCreated: 1484096503 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Composite Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: db27e22d04ea43542b3936fb14bdf894 3 | folderAsset: yes 4 | timeCreated: 1476274102 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Composite Pattern/Structure/TestCompositeStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1a257837ecd78a446bc4553316963939 3 | timeCreated: 1476272456 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Decorator Pattern/Exmaple1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8c77793c0ffffd3499998bf20c5d6d3d 3 | folderAsset: yes 4 | timeCreated: 1476667420 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Decorator Pattern/Exmaple1/DecoratorPatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 28b9f7cb58008504cb2c278d8a17c43b 3 | timeCreated: 1476667438 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Decorator Pattern/Exmaple2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bf379eb778ed4cd449876a865b82c63a 3 | folderAsset: yes 4 | timeCreated: 1484096879 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Decorator Pattern/Exmaple2/DecoratorPatternExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f9b68bd918d884844a7cd1ded9dbed17 3 | timeCreated: 1484096895 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Decorator Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 17dd7d52b48f03449a6e93c13c1ed08b 3 | folderAsset: yes 4 | timeCreated: 1476274118 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Decorator Pattern/Structure/TestDecoratorStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1e1fe2243dff01246822c39e3cf61c07 3 | timeCreated: 1476274201 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Flyweight Pattern/Exmaple1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 64053b4ffa311554193ec3781a79f9a4 3 | folderAsset: yes 4 | timeCreated: 1476754956 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Flyweight Pattern/Exmaple1/FlyweightPatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7e3ba5b70c9907240b31163e382f1157 3 | timeCreated: 1476754972 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Flyweight Pattern/Exmaple2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d2b38f262ef13d440a1b9cad3ef91279 3 | folderAsset: yes 4 | timeCreated: 1484098693 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Flyweight Pattern/Exmaple2/FlyweightPatternExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9edd0c980566ed042898f3efa2b74957 3 | timeCreated: 1484098693 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Flyweight Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cdbd4123ca83a394eabb248cc90fd3fe 3 | folderAsset: yes 4 | timeCreated: 1476183940 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Flyweight Pattern/Structure/TestFlyweightStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 513ae228349861b4c88ea684246c2ec9 3 | timeCreated: 1476188296 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Chain of Responsibility Pattern.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d14fe29832346b44ab69bdc9ea1a8058 3 | folderAsset: yes 4 | timeCreated: 1476254445 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Template Method Pattern/Exmaple1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5e9ea05ab9b9f0543b0da6a9081b0e4c 3 | folderAsset: yes 4 | timeCreated: 1476438601 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Template Method Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2b89645062cedd848a5f5b3d6829afb2 3 | folderAsset: yes 4 | timeCreated: 1476262185 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Abstract Factory Pattern/Example1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 893d1136296a3b9408cbe3400221a01f 3 | folderAsset: yes 4 | timeCreated: 1476840328 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Abstract Factory Pattern/Example2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0fda4737dcc224345b2b6b478fe56e6d 3 | folderAsset: yes 4 | timeCreated: 1484050809 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Abstract Factory Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 39866c54c081c9a4eb3d10e080fa20cb 3 | folderAsset: yes 4 | timeCreated: 1476332683 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Factory Method Pattern/Example1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2221837a25d09e34cae5619d76b8a292 3 | folderAsset: yes 4 | timeCreated: 1476842843 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Factory Method Pattern/Example2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7fce4399c420a1a4d856ac21f68926ec 3 | folderAsset: yes 4 | timeCreated: 1484051979 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Factory Method Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cef33cac9d411ec4b85fc526555db22c 3 | folderAsset: yes 4 | timeCreated: 1476337709 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Factory Method Pattern/Structure/TestFactoryMethodStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3b98110411dc6bd4a9212e6040dafec3 3 | timeCreated: 1476336405 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Component Pattern/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b9be78d5e3f531b448dc132f0bfef73e 3 | folderAsset: yes 4 | timeCreated: 1514208450 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Component Pattern/Example/ComponentPatternExample.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b66814b3f07e2f84f9180edc43db32ff 3 | timeCreated: 1514208490 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Dirty Flag Pattern/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d3952ccb543785e458321efb26f1d8ee 3 | folderAsset: yes 4 | timeCreated: 1515511384 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Dirty Flag Pattern/Example/DirtyFlagPatternExample.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6daed0e86ab3a2941b8f06a94f7d8375 3 | timeCreated: 1515511406 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3d7476d2420e3804c8eb5fbfedd10521 3 | folderAsset: yes 4 | timeCreated: 1514299195 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/Example/EventQueuePatternExample.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9163d09d398a8564c945920e86df6847 3 | timeCreated: 1514300410 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/Example2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 494ecf48a7244604abf4fdd6535d3303 3 | folderAsset: yes 4 | timeCreated: 1514339630 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/Example3.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 791ec6e9d145e194f936a2dcd3189756 3 | folderAsset: yes 4 | timeCreated: 1514366400 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Game Loop Pattern/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e90073f0fc5ad744d8de82a44b44306a 3 | folderAsset: yes 4 | timeCreated: 1514855566 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6c238137d707e7a47b2f5fea9fde0785 3 | folderAsset: yes 4 | timeCreated: 1519459649 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Material/PoolObject.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 343887405a715a146b4d77e07fc21a7b 3 | timeCreated: 1519529181 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Type Object Pattern/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5cb58ef17cac894468424c43272e752c 3 | folderAsset: yes 4 | timeCreated: 1514030098 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Type Object Pattern/Example/TypeObjectPatternExample.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1f9449179735c894b92ae16c2e902347 3 | timeCreated: 1514016944 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Chain of Responsibility Pattern/Example1/TestChainOfRespExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8af0cd3e585e4b8478f3c65b07d5fb39 3 | timeCreated: 1476415425 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Template Method Pattern/Exmaple1/TemplateMethodPatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: adcbb6543e040364db722b96f5002700 3 | timeCreated: 1476438630 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Template Method Pattern/Structure/TestTemplateMethodStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2aef0b9ec66f607489d95e0af8b39570 3 | timeCreated: 1476262277 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Abstract Factory Pattern/Example1/AbstractFactoryPatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cdc3e44135c0cc648b658be23a622872 3 | timeCreated: 1476840371 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Abstract Factory Pattern/Example2/AbstractFactoryPatternExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 26b0d6b2a23f2874a95012f97755acd2 3 | timeCreated: 1484050826 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Abstract Factory Pattern/Structure/TestAbstractFactoryStructrue.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 024603f2db65f2e46a0ea4a1b7fbea5f 3 | timeCreated: 1476332705 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Factory Method Pattern/Example1/FactoryMethodPatternExample1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b7607c05d932ca841a4ddeca8bccc361 3 | timeCreated: 1476842883 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Factory Method Pattern/Example2/FactoryMethodPatternExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5eee6957e341a5440b1a43d43bdb0761 3 | timeCreated: 1484052006 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Data Locality Pattern/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 48fa2db59dce00c4081fd03d9767a4eb 3 | folderAsset: yes 4 | timeCreated: 1515417113 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Data Locality Pattern/Example/DataLocalityPatternExample.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f8e30d626da11e541a7e36804dc2d1c7 3 | timeCreated: 1515415946 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/Example2/EventQueuePatternExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a446f67adebaab8408b8101a22b3bf2c 3 | timeCreated: 1514361599 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/Example3/EventQueuePatternExample3.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6132f079bb6127742bc4a5dc3177cf7a 3 | timeCreated: 1514368275 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Model.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ee4da9e177955824d9b80ef2d316451f 3 | folderAsset: yes 4 | timeCreated: 1519529817 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Model/polygonSphere.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5472b184decf70e4a93de4bb61864ced 3 | timeCreated: 1479047316 4 | licenseType: Store 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Prefab/PolygonSphere.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 70b17a5417e2e0144a172856b782d2e9 3 | timeCreated: 1519529797 4 | licenseType: Pro 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Service Locator Pattern/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4b8890989c4a44c4289553f5681c2e3e 3 | folderAsset: yes 4 | timeCreated: 1515402021 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/SubclassSandbox Pattern/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f7921a4843d2ee7439474002481a82b7 3 | folderAsset: yes 4 | timeCreated: 1476361212 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Chain of Responsibility Pattern/Example1.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9a32b22e75b68c94ea6ccaf50e66866b 3 | folderAsset: yes 4 | timeCreated: 1476415338 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Chain of Responsibility Pattern/Example2.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bcaa8d30fd46c144d981643bdc53dd25 3 | folderAsset: yes 4 | timeCreated: 1478048690 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Chain of Responsibility Pattern/Structure.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 03136ddf63c232845832c7e3583aa36a 3 | folderAsset: yes 4 | timeCreated: 1476254453 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/Example3/Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: acda30b1899880d4ea68188994b7b9e8 3 | folderAsset: yes 4 | timeCreated: 1514381026 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Material.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6bfce09fc65a6bb41896d9480f28e86e 3 | folderAsset: yes 4 | timeCreated: 1519462428 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 46272b1c8cf0ac64ea77bfc516c5797d 3 | folderAsset: yes 4 | timeCreated: 1519529806 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Script.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d05c069f2ea2a8c4fbf7310cbe40b554 3 | folderAsset: yes 4 | timeCreated: 1519462690 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Service Locator Pattern/Example/ServiceLocatorPatternExample.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c4ad4d65234bc1f47a02c840973af452 3 | timeCreated: 1515402050 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Chain of Responsibility Pattern/Example2/ChainOfResponsibilityExample2.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2718c28c10168304b8581cf5f205b72e 3 | timeCreated: 1478049075 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Script/Core.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9031a9c48f723d446909e43a1473d8c5 3 | folderAsset: yes 4 | timeCreated: 1519528097 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Script/Example.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 65f60e80522232145bd1c2a1beb95aca 3 | folderAsset: yes 4 | timeCreated: 1519529248 5 | licenseType: Pro 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Chain of Responsibility Pattern/Structure/TestChainOfResponsibilityStructure.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d01eb93683900324ab1812300dfa6c2d 3 | timeCreated: 1476254484 4 | licenseType: Pro 5 | DefaultImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example3/MoveCommand.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6640f3d189ff07f429337a511fb740f1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example3/MoveCommandReceiver.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8b876aa2447a543409330fcc88e0615b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/Radio.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 13a2c8a8c7dd942498c84e8594a7d7ab 3 | timeCreated: 1476175862 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple3/HasCard.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cd7f3f391d8bb584a8a076b7811eb838 3 | timeCreated: 1476072431 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple3/HasPin.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e28456f14f0c84c4b997d01bde5b9804 3 | timeCreated: 1476072627 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple3/NoCard.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f55758baf4924bb44a879e67bd1ce9ae 3 | timeCreated: 1476072564 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple3/NoCash.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 80a97c16accf18743bb3e47046946b50 3 | timeCreated: 1476072670 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4/Heroine.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f63c05140bed7a84e8e02797190c42b7 3 | timeCreated: 1476084520 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/ICommand.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d49f1e0e8a7de664e8f53b3e6655a5c8 3 | timeCreated: 1476173485 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/TVRemove.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e3d805b65eaaf564aa1df0d496026320 3 | timeCreated: 1476175855 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/Television.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9e332c6432594974183547f4a5e80ee2 3 | timeCreated: 1476173479 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/TurnTVOff.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 21c14de9a6e19934a871a4b79e9fea38 3 | timeCreated: 1476173498 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/TurnTVOn.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e4e88f9eaf779ef4d87e9fc546f57a1b 3 | timeCreated: 1476173489 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example3/Command.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fb48245b7ca84e84695a50cc2d1f3d63 3 | timeCreated: 1443726689 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple3/ATMMachine.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 35e22a6e0e7d03e4788d386ecf1b23db 3 | timeCreated: 1476072500 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple3/ATMState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2a20c83002cb32946a6d776c3069efee 3 | timeCreated: 1476072307 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4/DrivingState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 45a451955499c1942a7cd8312bc221eb 3 | timeCreated: 1476088234 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4/DuckingState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 96c2b6b0fcf9daa48888eda1b7ac1963 3 | timeCreated: 1476088248 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4/JumpingState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d9e65047c1a44e042968ad5abac3cfb4 3 | timeCreated: 1476087265 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4/TestHeroine.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 282a4edd5516aa24b8b9286df9efb800 3 | timeCreated: 1476089063 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example1/CommandExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5f887a8fbd8adfd4689dc340bf986914 3 | timeCreated: 1476415999 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/DeviceButton.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dac2efccbfe90804eb9a3a5cc4f190ed 3 | timeCreated: 1476175849 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/TurnItAllOff.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3485f5b7965d5bc41bfb3bddfd231022 3 | timeCreated: 1476175871 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/TurnVolumeDown.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f8d68e8195a8c6c41bc84f599bfd46ca 3 | timeCreated: 1476173519 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/TurnVolumeUp.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fb45d24ef8e8a1b4facf6ab5fd0cdb71 3 | timeCreated: 1476173509 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example3/InputHandler.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 65852039ecae1544bb206a2d800923b0 3 | timeCreated: 1443729901 4 | licenseType: Free 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Memento Pattern/Example1/MementoExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: be4a9508eb34e414e92a27b8d6b64104 3 | timeCreated: 1476428182 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Memento Pattern/Example2/MementoExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cd708282c148b5f4dac11feb16bab49c 3 | timeCreated: 1478235419 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple1/StateExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 57b6a4afed609a84a9c0d5d051bb1065 3 | timeCreated: 1476436708 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple2/StateExmaple2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 227ac27dcb1aaad46be36c310ccde079 3 | timeCreated: 1476437775 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple3/TestATMMachine.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a88af67aa7b4df1409666f65c561bb2c 3 | timeCreated: 1476072733 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4/HeroineBaseState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 791b92ae416b4a3489610118b2a59ef7 3 | timeCreated: 1476087601 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4/StandingState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7b07dc0cda248804381a2fa670a9a4c3 3 | timeCreated: 1476088216 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Structure/StateStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d98c60aa3788e8d42adb4ccae29b78ae 3 | timeCreated: 1476337310 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Strategy Pattern/Example2/BadCodeExample.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8c11dd36074e7864ab783dfc5067f0ca 3 | timeCreated: 1478437386 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Bridge Pattern/Structure/BridgeStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9c88415042c9be34498e2f0f5e9f4218 3 | timeCreated: 1476265606 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Facade Pattern/Structure/FacadeStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0fc9f3b028b10dc4f8e039cd61a98589 3 | timeCreated: 1476278156 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Proxy Pattern/Structure/ProxyStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 84158e269a5be584e96fde26eaa74f14 3 | timeCreated: 1476278444 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/IElectronicDevice.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 183509958bb0db747b0fcca968e3f487 3 | timeCreated: 1476173431 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/TestCommandPattern.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ed974261bec1f654bbef3a4191d66af7 3 | timeCreated: 1476173404 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Structure/CommandStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b38d64600e2706049abfe16e65b848b4 3 | timeCreated: 1476337519 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Iterator Pattern/Example1/IteratorExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d985425a20a770a45b361064dc27f9a2 3 | timeCreated: 1476417999 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Iterator Pattern/Example2/IteratorExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d9b00f9df3a3d014681451ad83507d51 3 | timeCreated: 1478135314 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Iterator Pattern/Structure/IteratorStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 016acba3c6e48be44a53d7736d0332db 3 | timeCreated: 1476259742 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Mediator Pattern/Example1/MediatorExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6378ce44e5c0c1543a7ce113ec8d2d58 3 | timeCreated: 1476429517 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Mediator Pattern/Example2/MediatorExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ce4e7bc9833bf24459bd80038556a926 3 | timeCreated: 1478221073 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Mediator Pattern/Structure/MediatorStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 032fe11a9cf0d3944ac8781728f7638a 3 | timeCreated: 1476253550 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Memento Pattern/Structure/MementoStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5317b1fcfd3edc140865fe1ca4640433 3 | timeCreated: 1476260950 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Observer Pattern/Example1/ObserverExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c12caba1cb6a4fc49bd1460526bbc172 3 | timeCreated: 1476430251 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Observer Pattern/Structure/ObserverStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fc88095746869b74799c82c76c9ca4d9 3 | timeCreated: 1476180819 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple5/StatePatternExample5.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f06ce0ab55cd733479861ba81b9abda3 3 | timeCreated: 1513169205 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Strategy Pattern/Structure/StrategyStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f28d23f10ec1e9246a9b35f24a6fc00c 3 | timeCreated: 1476261880 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Visitor Pattern/Structure/VisitorStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fe7ea83153c83074e9d6992c3d418d61 3 | timeCreated: 1476262591 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Builder Pattern/Structure/BuilderStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c01188ee72b72ed4c8f202da5f38bf14 3 | timeCreated: 1476335902 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/Example/EventQueue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0b4ff23a1c309c641800b9690e4222fa 3 | timeCreated: 1514300612 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Adapter Pattern/Structure/AdapterStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 184aae8019b26b44b931731d32c6de54 3 | timeCreated: 1476264944 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Bridge Pattern/Exmaple1/BridgePatternExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0ab6147e35a75e641ba51bc30b359fec 3 | timeCreated: 1476594576 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Bridge Pattern/Exmaple2/BridgePatternExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fba42eded594f464490f68b09c5dd183 3 | timeCreated: 1484096323 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Facade Pattern/Exmaple1/FacadePatternExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 075b47670877b0842a64ebd9eb6541d3 3 | timeCreated: 1476754154 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Facade Pattern/Exmaple2/FacadePatternExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 32b0a00f6bb820c4ea08fd338341f376 3 | timeCreated: 1484097443 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Proxy Pattern/Exmaple1/ProxyPatternExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6a6558bdcebd3bf449f8970a3098821b 3 | timeCreated: 1476755679 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /ProjectSettings/VFXManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!937362698 &1 4 | VFXManager: 5 | m_ObjectHideFlags: 0 6 | m_IndirectShader: {fileID: 0} 7 | m_CopyBufferShader: {fileID: 0} 8 | m_SortShader: {fileID: 0} 9 | m_StripUpdateShader: {fileID: 0} 10 | m_RenderPipeSettingsPath: 11 | m_FixedTimeStep: 0.016666668 12 | m_MaxDeltaTime: 0.05 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example4/CommandPatternExample4.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 95c78db8cb7440147ba72526cbeeb58e 3 | timeCreated: 1513178414 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Interpreter Pattern/Example1/InterpreterExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 83ab1cac5e0e51044bbb3d8d34f92ae8 3 | timeCreated: 1476417023 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Interpreter Pattern/Example2/InterpreterExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6c583318d0b9bdc42a000678046319ae 3 | timeCreated: 1478134614 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Interpreter Pattern/Structure/InterpreterStructrue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 647b309ceb0ec0d40929ebb3790af0ca 3 | timeCreated: 1476256575 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Strategy Pattern/Example2/StrategyPatternExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 54f761ea0a5bea84bb679f1105b0f0ee 3 | timeCreated: 1478437094 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Strategy Pattern/Exmaple1/StrategyPatternExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0d937fb527531dd4e838573f6bb7ddf0 3 | timeCreated: 1476438170 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Visitor Pattern/Exmaple1/VisitorPatternExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a76dc79d9bc30a94490e10fd6ac1fb2f 3 | timeCreated: 1476439214 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Visitor Pattern/Exmaple2/VisitorPatternExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d6d27e4bc3491f74ea9b5563b36df569 3 | timeCreated: 1484050245 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Builder Pattern/Example1/BuilderPatternExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: eff8f29341cca1d428def3eab3289112 3 | timeCreated: 1476841312 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Builder Pattern/Example2/BuilderPatternExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 175c517bfde1f5e42af089ab255c6478 3 | timeCreated: 1484051288 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Prototype Pattern/Structure/PrototypeStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 08bedeef614dd1c4fa86c3fd5a31b793 3 | timeCreated: 1476243882 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Singleton Pattern/Structure/SingletonStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 59916ed9e320d8e4db0c000604480536 3 | timeCreated: 1476240088 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/SubclassSandbox Pattern/Example/FlashSpeed.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 10eed03296f0bae468d1961a75bf2221 3 | timeCreated: 1476157158 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/SubclassSandbox Pattern/Example/GroundDive.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ac784c89e3260874f861f9d1b906832a 3 | timeCreated: 1476155595 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/SubclassSandbox Pattern/Example/SkyLaunch.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c3fdeae822dce8f478ebe053fb633c6a 3 | timeCreated: 1476155587 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/SubclassSandbox Pattern/Example/SuperPower.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e170a1e3c2b695e4a8cff91bd998159b 3 | timeCreated: 1476155578 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Adapter Pattern/Exmaple1/AdapterPatternExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 09cebf61776979b4ba95e7b6fcec9635 3 | timeCreated: 1476583582 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Adapter Pattern/Exmaple2/AdapterPatternExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c911252f9603e424392724aa3f532a52 3 | timeCreated: 1484095890 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Composite Pattern/Structure/CompositeStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: db61a4cb7eb5b184a8c0646f9494bdd0 3 | timeCreated: 1476272447 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Decorator Pattern/Structure/DecoratorStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 26f3b388537f98449a6db2b64d1af60f 3 | timeCreated: 1476274160 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Flyweight Pattern/Structure/FlyweightStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 82c7e190889607143bf10bfe596fe239 3 | timeCreated: 1476183975 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Factory Method Pattern/Structure/FactoryMethodStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6bf2ad14b2687cf4c9872da0c05080db 3 | timeCreated: 1476336395 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Prototype Pattern/Example1/PrototypePatternExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 18c7c8d7959e53c4897019015897f15d 3 | timeCreated: 1476844168 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Prototype Pattern/Example2/PrototypePatternExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ca7ca7f7e45fd464293564100181140a 3 | timeCreated: 1484052785 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Singleton Pattern/Example1/SingletonPatternExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 637fbce15f2009f4ba816b90c69138ba 3 | timeCreated: 1476844922 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Singleton Pattern/Example2/SingletonPatternExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7f06bd17dbf5c7c45ade1374648465a3 3 | timeCreated: 1515413165 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Singleton Pattern/Example3/SingletonPatternExample3.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7a7a0c1b39bba3d44b672799f3e8c171 3 | timeCreated: 1519952439 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Component Pattern/Example/ComponentPatternExample.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3356a2598f3175246a66f7e309a3d1bc 3 | timeCreated: 1514208474 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/Example/EventQueueManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 923841540bb38b24eae39d57e4e3c86f 3 | timeCreated: 1514305150 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/Example3/Scripts/EventManger.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1a4429c5ba895f745ae2c0a162db6dd5 3 | timeCreated: 1514377722 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/Example3/Scripts/EventType.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 44102f294a22be2488bfd242b8b4ecaa 3 | timeCreated: 1514377831 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Game Loop Pattern/Example/GameLoopPatternExample.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 303690f82722c63478167e651bd7d134 3 | timeCreated: 1514855751 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Composite Pattern/Exmaple1/CompositePatternExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 30dab455c18272a45a4de8baaa6a0a33 3 | timeCreated: 1476621408 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Composite Pattern/Exmaple2/CompositePatternExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c9dcc6468e87f3f47aac2d1218bd7af2 3 | timeCreated: 1484096497 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Decorator Pattern/Exmaple1/DecoratorPatternExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3867b2da7ff596a47a0cd1f1fc23b54f 3 | timeCreated: 1476667433 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Decorator Pattern/Exmaple2/DecoratorPatternExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4657ecf6e31d6ac4b947e06c8fe27178 3 | timeCreated: 1484096888 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Flyweight Pattern/Exmaple1/FlyweightPatternExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4247c59b7e2801f4996a9c73c1ff553f 3 | timeCreated: 1476754987 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Template Method Pattern/Structure/TemplateMethodStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5064b90eb03125c4aa420549f17aaa4f 3 | timeCreated: 1476262268 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Abstract Factory Pattern/Structure/AbstractFactoryStructrue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2c584b553366ce44bba002a374d2e4e0 3 | timeCreated: 1476332730 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Factory Method Pattern/Example1/FactoryMethodPatternExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7e11083f9d559404fa387aede8b3f297 3 | timeCreated: 1476842875 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Factory Method Pattern/Example2/FactoryMethodPatternExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c1b68918e27a00841816c56ebcd54ba5 3 | timeCreated: 1484051999 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Dirty Flag Pattern/Example/DirtyFlagPatternExample.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f110166623088b2489a0119210f8316b 3 | timeCreated: 1515511388 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/Example/EventQueuePatternExample.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 398a4dee7c201ff4f94565cdc03a5168 3 | timeCreated: 1514299230 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/Example2/EventQueuePatternExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3a55b07a83a9c904fa7984f4f7ef99eb 3 | timeCreated: 1514341240 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Script/Core/PoolManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7923edcf213b37449a472421ad1dc23f 3 | timeCreated: 1519459616 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Script/Core/PoolObject.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0b4144ee959c80a469435c9eed4f0a3c 3 | timeCreated: 1519459627 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/SubclassSandbox Pattern/Example/TestSubclassSandbox.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9a0df17e42ee07d4e9f17b3f0056d08f 3 | timeCreated: 1476155569 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Type Object Pattern/Example/TypeObjectPatternExample.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aea65cdbcf2cf5d48be3cbb757de786b 3 | timeCreated: 1514016932 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Template Method Pattern/Exmaple1/TemplateMethodPatternExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 180c42e61fd3895448696b6d01b3b254 3 | timeCreated: 1476438618 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Abstract Factory Pattern/Example1/AbstractFactoryPatternExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4242511faea71044f9d39d369ff932a3 3 | timeCreated: 1476840353 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Abstract Factory Pattern/Example2/AbstractFactoryPatternExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 33792d26570fd25499f68953e1a4e7b9 3 | timeCreated: 1484050821 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Data Locality Pattern/Example/DataLocalityPatternExample.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3d7c6012c0976734fbaa31199b3e2bdd 3 | timeCreated: 1515415933 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Chain of Responsibility Pattern/Example1/ChainOfResponsibilityExample1.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e11119b9aade54b4796fa1f95933aed1 3 | timeCreated: 1476415411 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Chain of Responsibility Pattern/Example2/ChainOfResponsibilityExample2.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 08f1ec2236c753c4b97394222c456be6 3 | timeCreated: 1478048713 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/Example3/Scripts/EventQueuePatternExample3.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9bea317b356af264fa2a42e72d26fc7c 3 | timeCreated: 1514366410 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Script/Example/ObjectPoolExample.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 056320df615c8b143ada4e568756f3e2 3 | timeCreated: 1519459894 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Script/Example/PoolObjectBehaviour.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bd943f996f94e754491919c9e1218c77 3 | timeCreated: 1519459897 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Service Locator Pattern/Example/ServiceLocatorPatternExample.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4a374e31f2aae6445afe11866ec1a7b5 3 | timeCreated: 1515402041 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Chain of Responsibility Pattern/Structure/ChainOfResponsibilityStructure.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3735e9dfe4e07ef4699ae6346cfb319f 3 | timeCreated: 1476254475 4 | licenseType: Pro 5 | MonoImporter: 6 | serializedVersion: 2 7 | defaultReferences: [] 8 | executionOrder: 0 9 | icon: {instanceID: 0} 10 | userData: 11 | assetBundleName: 12 | assetBundleVariant: 13 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4/HeroineBaseState.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // HeroineBaseState.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public interface HeroineBaseState 9 | { 10 | void Update(); 11 | void HandleInput(); 12 | 13 | } 14 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/ICommand.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // ICommand.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | 9 | // commands: 10 | // command interface: 11 | public interface ICommand 12 | { 13 | void Execute(); 14 | void Undo(); 15 | } 16 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/TVRemove.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // TVRemove.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class TVRemove 9 | { 10 | public static IElectronicDevice GetDevice() 11 | { 12 | return new Television(); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /ProjectSettings/AudioManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!11 &1 4 | AudioManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | m_Volume: 1 8 | Rolloff Scale: 1 9 | Doppler Factor: 1 10 | Default Speaker Mode: 2 11 | m_SampleRate: 0 12 | m_DSPBufferSize: 1024 13 | m_VirtualVoiceCount: 512 14 | m_RealVoiceCount: 32 15 | m_SpatializerPlugin: 16 | m_AmbisonicDecoderPlugin: 17 | m_DisableAudio: 0 18 | m_VirtualizeEffects: 1 19 | m_RequestedDSPBufferSize: 0 20 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/IElectronicDevice.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // IElectronicDevice.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | // interface for electronic devices (or receivers) 9 | public interface IElectronicDevice 10 | { 11 | void On(); 12 | void Off(); 13 | void VolumeUp(); 14 | void VolumeDown(); 15 | } 16 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4/TestHeroine.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // TestHeroine.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class TestHeroine : MonoBehaviour 9 | { 10 | private Heroine _heroine; 11 | 12 | void Start ( ) 13 | { 14 | _heroine = new Heroine(); 15 | } 16 | 17 | void Update ( ) 18 | { 19 | _heroine.Update(); 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /ProjectSettings/TagManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!78 &1 4 | TagManager: 5 | serializedVersion: 2 6 | tags: [] 7 | layers: 8 | - Default 9 | - TransparentFX 10 | - Ignore Raycast 11 | - 12 | - Water 13 | - UI 14 | - 15 | - 16 | - 17 | - 18 | - 19 | - 20 | - 21 | - 22 | - 23 | - 24 | - 25 | - 26 | - 27 | - 28 | - 29 | - 30 | - 31 | - 32 | - 33 | - 34 | - 35 | - 36 | - 37 | - 38 | - 39 | - 40 | m_SortingLayers: 41 | - name: Default 42 | uniqueID: 0 43 | locked: 0 44 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple3/ATMState.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // ATMState.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | 9 | public interface ATMState 10 | { 11 | 12 | // Different states expected 13 | // HasCard, NoCard, HasPin, NoCash 14 | 15 | void insertCard(); 16 | 17 | void ejectCard(); 18 | 19 | void insertPin(int pinEntered); 20 | 21 | void requestCash(int cashToWithdraw); 22 | 23 | } -------------------------------------------------------------------------------- /Assets/Creational Patterns/Singleton Pattern/README.md: -------------------------------------------------------------------------------- 1 | # Singleton Pattern 单例模式 2 | ## Definition 3 | 4 | Ensure a class has only one instance and provide a global point of access to it. 5 |
确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。 6 | 7 | ![](https://github.com/QianMo/Unity-Design-Pattern/blob/master/UML_Picture/singleton.gif) 8 | 9 | 10 | ## Participants 11 | 12 | The classes and objects participating in this pattern are: 13 | 14 | ### Singleton (LoadBalancer) 15 | * defines an Instance operation that lets clients access its unique instance. Instance is a class operation. 16 | * responsible for creating and maintaining its own unique instance. 17 | 18 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/TurnTVOn.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // TurnTVOn.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class TurnTVOn : ICommand 9 | { 10 | IElectronicDevice device; 11 | 12 | public TurnTVOn(IElectronicDevice device) 13 | { 14 | this.device = device; 15 | } 16 | 17 | public void Execute() 18 | { 19 | this.device.On(); 20 | } 21 | 22 | public void Undo() 23 | { 24 | this.device.Off(); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Script/Core/PoolObject.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // PoolObject.cs 3 | // 4 | // Created by 浅墨 5 | //------------------------------------------------------------------------------------- 6 | 7 | using UnityEngine; 8 | using System.Collections; 9 | 10 | namespace ObjectPoolPatternExample 11 | { 12 | 13 | /// 14 | /// 对象池中对象的组件 15 | /// 16 | public class PoolObject : MonoBehaviour 17 | { 18 | //名称 19 | public string PoolName; 20 | //是否已在池中(还未使用,待使用) 21 | public bool IsPooled; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/TurnTVOff.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // TurnTVOff.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class TurnTVOff : ICommand 9 | { 10 | IElectronicDevice device; 11 | 12 | public TurnTVOff(IElectronicDevice device) 13 | { 14 | this.device = device; 15 | } 16 | 17 | public void Execute() 18 | { 19 | this.device.Off(); 20 | } 21 | 22 | public void Undo() 23 | { 24 | this.device.On(); 25 | } 26 | } 27 | 28 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/TurnVolumeUp.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // TurnVolumeUp.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class TurnVolumeUp : ICommand 9 | { 10 | IElectronicDevice device; 11 | 12 | public TurnVolumeUp(IElectronicDevice device) 13 | { 14 | this.device = device; 15 | } 16 | 17 | public void Execute() 18 | { 19 | this.device.VolumeUp(); 20 | } 21 | 22 | public void Undo() 23 | { 24 | this.device.VolumeDown(); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/TurnVolumeDown.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // TurnVolumeDown.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class TurnVolumeDown : ICommand 9 | { 10 | IElectronicDevice device; 11 | 12 | public TurnVolumeDown(IElectronicDevice device) 13 | { 14 | this.device = device; 15 | } 16 | 17 | public void Execute() 18 | { 19 | this.device.VolumeDown(); 20 | } 21 | 22 | public void Undo() 23 | { 24 | this.device.VolumeUp(); 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/DeviceButton.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // DeviceButton.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class DeviceButton 9 | { 10 | ICommand cmd; 11 | 12 | public DeviceButton(ICommand cmd) 13 | { 14 | this.cmd = cmd; 15 | } 16 | 17 | public void Press() 18 | { 19 | this.cmd.Execute(); // actually the invoker (device button) has no idea what it does 20 | } 21 | 22 | public void PressUndo() 23 | { 24 | this.cmd.Undo(); 25 | } 26 | } 27 | 28 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Prototype Pattern/README.md: -------------------------------------------------------------------------------- 1 | # Prototype Pattern 原型模式 2 | ## Definition 3 | 4 | Specify the kind of objects to create using a prototypical instance, and create new objects by copying this prototype. 5 |
用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 6 | 7 | ![](https://github.com/QianMo/Unity-Design-Pattern/blob/master/UML_Picture/prototype.gif) 8 | 9 | 10 | ## Participants 11 | 12 | The classes and objects participating in this pattern are: 13 | 14 | ### Prototype (ColorPrototype) 15 | * declares an interface for cloning itself 16 | 17 | ### ConcretePrototype (Color) 18 | * implements an operation for cloning itself 19 | 20 | ### Client (ColorManager) 21 | * creates a new object by asking a prototype to clone itself 22 | 23 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Object Pool Pattern/Example/Script/Example/PoolObjectBehaviour.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | 4 | 5 | namespace ObjectPoolPatternExample 6 | { 7 | public class PoolObjectBehaviour : MonoBehaviour 8 | { 9 | 10 | /// 11 | /// 设置对象的初始状态 12 | /// 13 | void OnEnable() 14 | { 15 | if (GetComponent() == null) 16 | { 17 | return; 18 | } 19 | 20 | GetComponent().velocity = new Vector3(0, Random.Range(-10, 11), 0); 21 | GetComponent().angularVelocity = new Vector3(0, Random.Range(-10, 11), 0); 22 | } 23 | 24 | } 25 | } -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Event Queue Pattern/Example3/Scripts/EventType.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // EventType.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | namespace EventQueuePatternExample3 9 | { 10 | /// 11 | /// 消息类型枚举 12 | /// 13 | public enum EventType 14 | { 15 | None, 16 | 17 | //UI事件消息 18 | UI_Event1 = 1, 19 | UI_Event2 = 2, 20 | UI_Event3 = 3, 21 | UI_Event4 = 4, 22 | UI_Event5 = 5, 23 | 24 | //渲染事件消息 25 | Render_Event1 = 100, 26 | Render_Event2, 27 | } 28 | } -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4/Heroine.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // Heroine.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class Heroine 9 | { 10 | HeroineBaseState _state; 11 | 12 | public Heroine() 13 | { 14 | _state = new StandingState(this); 15 | 16 | } 17 | 18 | public void SetHeroineState(HeroineBaseState newState) 19 | { 20 | _state = newState; 21 | } 22 | 23 | public void HandleInput() 24 | { 25 | 26 | } 27 | 28 | 29 | 30 | public void Update() 31 | { 32 | _state.HandleInput(); 33 | } 34 | 35 | } 36 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/SubclassSandbox Pattern/Example/FlashSpeed.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // FlashSpeed.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class FlashSpeed : SuperPower 9 | { 10 | //Has to have its own version of Activate()(子类实现自己版本的Activate()方法) 11 | public override void Activate() 12 | { 13 | Debug.Log("--------------------------FlashSpeed SuperPower Activate!--------------------"); 14 | //make own unique features.(组合子类自己独特的功能) 15 | Move(100f); 16 | PlaySound("Flash Speed"); 17 | SpawnParticles("Flash Particles"); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/SubclassSandbox Pattern/Example/GroundDive.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // GroundDive.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class GroundDive : SuperPower 9 | { 10 | //Has to have its own version of Activate()(子类实现自己版本的Activate()方法) 11 | public override void Activate() 12 | { 13 | Debug.Log("--------------------------GroundDive SuperPower Activate!--------------------"); 14 | //make own unique features.(组合子类自己独特的功能) 15 | Move(15f); 16 | PlaySound("GroundDive"); 17 | SpawnParticles("GroundDive Particles"); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/SubclassSandbox Pattern/Example/SkyLaunch.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // SkyLaunch.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | //Subclasses 9 | public class SkyLaunch : SuperPower 10 | { 11 | //Has to have its own version of Activate()(子类实现自己版本的Activate()方法) 12 | public override void Activate() 13 | { 14 | Debug.Log("--------------------------SkyLaunch SuperPower Activate!--------------------"); 15 | //make own unique features.(组合子类自己独特的功能) 16 | Move(10f); 17 | PlaySound("SkyLaunch"); 18 | SpawnParticles("SkyLaunch Particles"); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple3/TestATMMachine.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // TestATMMachine.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using System; 6 | using UnityEngine; 7 | using System.Collections; 8 | 9 | public class TestATMMachine: MonoBehaviour 10 | { 11 | 12 | void Start() 13 | { 14 | ATMMachine atmMachine = new ATMMachine(); 15 | 16 | atmMachine.insertCard(); 17 | 18 | atmMachine.ejectCard(); 19 | 20 | atmMachine.insertCard(); 21 | 22 | atmMachine.insertPin(1234); 23 | 24 | atmMachine.requestCash(2000); 25 | 26 | atmMachine.insertCard(); 27 | 28 | atmMachine.insertPin(1234); 29 | 30 | } 31 | } -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Strategy Pattern/Example2/BadCodeExample.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | using System.Collections; 3 | 4 | public class Animal_BadExample 5 | { 6 | // bad code: 7 | public virtual void Fly() 8 | { 9 | Debug.Log ("Can Fly"); 10 | } 11 | } 12 | 13 | public class Dog_BadExample : Animal_BadExample 14 | { 15 | // bad code: 16 | public override void Fly() 17 | { 18 | // override 19 | } 20 | } 21 | 22 | public class Cat_BadExample : Animal_BadExample 23 | { 24 | // bad code: 25 | public override void Fly() 26 | { 27 | // override 28 | } 29 | } 30 | 31 | public class Bird_BadExample : Animal_BadExample 32 | { 33 | public override void Fly() 34 | { 35 | } 36 | } 37 | 38 | // Rembember: 39 | // ALWAYS 40 | // eliminate duplicate code 41 | // eliminate technices that allow one class to affect others -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Game Loop Pattern/README.md: -------------------------------------------------------------------------------- 1 | # Game Loop Pattern 游戏循环模式 2 | 3 | ## Intent 意义 4 | 5 | Decouple the progression of game time from user input and processor speed. 6 |
7 | 游戏循环模式,实现游戏运行过程中对用户输入处理和时间处理的解耦。 8 | 9 | 10 | 11 | ## The Pattern 模式描述 12 | 13 | A game loop runs continuously during gameplay. Each turn of the loop, it processes user input without blocking, updates the game state, and renders the game. It tracks the passage of time to control the rate of gameplay. 14 | 15 | 游戏循环模式:游戏循环在游戏过程中持续运转。每循环一次,它非阻塞地处理用户的输入,更新游戏状态,并渲染游戏。它跟踪流逝的时间并控制游戏的速率。 16 | 17 | 游戏循环将游戏的处理过程和玩家输入解耦,和处理器速度解耦,实现用户输入和处理器速度在游戏行进时间上的分离。 18 | 19 | 游戏循环也许需要与平台的事件循环相协调。如果在操作系统的高层或有图形UI和内建事件循环的平台上构建游戏,那就有了两个应用循环在同时运作,需要对他们进行相应的协调。 20 | 21 | 22 | 23 | ## When to Use It 使用情形 24 | 25 | 任何游戏或游戏引擎都拥有自己的游戏循环,因为游戏循环是游戏运行的主心骨。 26 | 27 | Unity已经内建了游戏循环模式,即Update( )方法。 28 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Facade Pattern/README.md: -------------------------------------------------------------------------------- 1 | # Facade Pattern 外观模式 2 | ## Definition 3 | 4 | Provide a unified interface to a set of interfaces in a subsystem. Façade defines a higher-level interface that makes the subsystem easier to use. 5 |
要求一个子系统的外部与其内部的通信必须通过一个统一的对象进行。外观模式提供一个高层次的接口,使得子系统更易于使用。 6 | 7 | ![](https://github.com/QianMo/Unity-Design-Pattern/blob/master/UML_Picture/facade.gif) 8 | 9 | 10 | ## Participants 11 | 12 | The classes and objects participating in this pattern are: 13 | 14 | ### Facade (MortgageApplication) 15 | * knows which subsystem classes are responsible for a request. 16 | * delegates client requests to appropriate subsystem objects. 17 | 18 | ### Subsystem classes (Bank, Credit, Loan) 19 | * implement subsystem functionality. 20 | * handle work assigned by the Facade object. 21 | * have no knowledge of the facade and keep no reference to it. 22 | 23 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/README.md: -------------------------------------------------------------------------------- 1 | # State Pattern 状态模式 2 | ## Definition 3 | 4 | Allow an object to alter its behavior when its internal state changes. The object will appear to change its class. 5 |
当一个对象内在状态改变时允许其改变行为,这个对象看起来像改变了其类。 6 | 7 | ![](https://github.com/QianMo/Unity-Design-Pattern/blob/master/UML_Picture/state.gif) 8 | 9 | 10 | ## Participants 11 | 12 | The classes and objects participating in this pattern are: 13 | 14 | ### Context (Account) 15 | * defines the interface of interest to clients 16 | * maintains an instance of a ConcreteState subclass that defines the current state. 17 | 18 | ### State (State) 19 | * defines an interface for encapsulating the behavior associated with a particular state of the Context. 20 | 21 | ### Concrete State (RedState, SilverState, GoldState) 22 | * each subclass implements a behavior associated with a state of Context 23 | 24 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/Radio.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // Radio.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class Radio : IElectronicDevice 9 | { 10 | protected int volume = 0; 11 | 12 | public void On() 13 | { 14 | Debug.Log("Radio is On"); 15 | } 16 | 17 | public void Off() 18 | { 19 | Debug.Log("Radio is Off"); 20 | } 21 | 22 | public void VolumeUp() 23 | { 24 | ++volume; 25 | Debug.Log("Radio Turned Volume Up to " + volume); 26 | } 27 | 28 | public void VolumeDown() 29 | { 30 | if (volume > 0) 31 | --volume; 32 | Debug.Log("Radio Turned Volume Down to " + volume); 33 | } 34 | } -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/Television.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // Television.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class Television : IElectronicDevice 9 | { 10 | protected int volume = 0; 11 | 12 | public void On() 13 | { 14 | Debug.Log("TV is On"); 15 | } 16 | 17 | public void Off() 18 | { 19 | Debug.Log("TV is Off"); 20 | } 21 | 22 | public void VolumeUp() 23 | { 24 | ++volume; 25 | Debug.Log("TV Turned Volume Up to " + volume); 26 | } 27 | 28 | public void VolumeDown() 29 | { 30 | if (volume > 0) 31 | --volume; 32 | Debug.Log("TV Turned Volume Down to " + volume); 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/Example2/TurnItAllOff.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // TurnItAllOff.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | using System.Collections.Generic; 8 | 9 | public class TurnItAllOff : ICommand 10 | { 11 | List devices; 12 | 13 | public TurnItAllOff(List devices) 14 | { 15 | this.devices = devices; 16 | } 17 | 18 | public void Execute() 19 | { 20 | foreach (IElectronicDevice device in devices) 21 | { 22 | device.Off(); 23 | } 24 | } 25 | 26 | public void Undo() 27 | { 28 | foreach (IElectronicDevice device in devices) 29 | { 30 | device.On(); 31 | } 32 | } 33 | } -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4/DrivingState.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // DrivingState.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class DrivingState : HeroineBaseState 9 | { 10 | private Heroine _heroine; 11 | public DrivingState(Heroine heroine) 12 | { 13 | _heroine = heroine; 14 | Debug.Log("------------------------Heroine in DrivingState~!(进入下斩状态!)"); 15 | } 16 | 17 | public void Update() 18 | { 19 | } 20 | 21 | public void HandleInput() 22 | { 23 | if (Input.GetKeyDown(KeyCode.UpArrow)) 24 | { 25 | Debug.Log("get KeyCode.UpArrow!"); 26 | _heroine.SetHeroineState(new StandingState(_heroine)); 27 | } 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Adapter Pattern/README.md: -------------------------------------------------------------------------------- 1 | # Adapter Pattern 适配器模式 2 | ## Definition 3 | Convert the interface of a class into another interface clients expect. Adapter lets classes work together that couldn't otherwise because of incompatible interfaces. 4 |
将一个类的接口转换成客户希望的另外一个接口。适配器模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。 5 | 6 | ![](https://github.com/QianMo/Unity-Design-Pattern/blob/master/UML_Picture/adapter.gif) 7 | 8 | ## Participants 9 | 10 | The classes and objects participating in this pattern are: 11 | 12 | ### Target (ChemicalCompound) 13 | * defines the domain-specific interface that Client uses. 14 | 15 | ### Adapter (Compound) 16 | * adapts the interface Adaptee to the Target interface. 17 | 18 | ### Adaptee (ChemicalDatabank) 19 | * defines an existing interface that needs adapting. 20 | 21 | ### Client (AdapterApp) 22 | * collaborates with objects conforming to the Target interface. 23 | 24 | 25 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Iterator Pattern/README.md: -------------------------------------------------------------------------------- 1 | # Iterator Pattern 迭代器模式 2 | ## Definition 3 | 4 | Provide a way to access the elements of an aggregate object sequentially without exposing its underlying representation. 5 |
提供一种方法访问一个容器对象中各个元素,而又不需暴露该对象的内部细节。 6 | 7 | ![](https://github.com/QianMo/Unity-Design-Pattern/blob/master/UML_Picture/iterator.gif) 8 | 9 | 10 | ## Participants 11 | 12 | The classes and objects participating in this pattern are: 13 | 14 | ### Iterator (AbstractIterator) 15 | * defines an interface for accessing and traversing elements. 16 | 17 | ### ConcreteIterator (Iterator) 18 | * implements the Iterator interface. 19 | * keeps track of the current position in the traversal of the aggregate. 20 | 21 | ### Aggregate (AbstractCollection) 22 | * defines an interface for creating an Iterator object 23 | 24 | ### ConcreteAggregate (Collection) 25 | * implements the Iterator creation interface to return an instance of the proper ConcreteIterator 26 | 27 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Strategy Pattern/README.md: -------------------------------------------------------------------------------- 1 | # Strategy Pattern 策略模式 2 | ## Definition 3 | 4 | Define a family of algorithms, encapsulate each one, and make them interchangeable. Strategy lets the algorithm vary independently from clients that use it. 5 |
定义一组算法,将每个算法都封装起来,并且使它们之间可以互换 6 | 7 | ![](https://github.com/QianMo/Unity-Design-Pattern/blob/master/UML_Picture/strategy.gif) 8 | 9 | 10 | ## Participants 11 | 12 | The classes and objects participating in this pattern are: 13 | 14 | ### Strategy (SortStrategy) 15 | * declares an interface common to all supported algorithms. Context uses this interface to call the algorithm defined by a ConcreteStrategy 16 | 17 | ### ConcreteStrategy (QuickSort, ShellSort, MergeSort) 18 | * implements the algorithm using the Strategy interface 19 | 20 | ### Context (SortedList) 21 | * is configured with a ConcreteStrategy object 22 | * maintains a reference to a Strategy object 23 | * may define an interface that lets Strategy access its data. 24 | 25 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/SubclassSandbox Pattern/Example/SuperPower.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // SuperPower.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | //This is the base class(基类) 9 | public abstract class SuperPower 10 | { 11 | //Abstract interface for sub class(给子类提供的抽象接口) 12 | public abstract void Activate(); 13 | 14 | //Some of the tool methods given to the child class(给子类提供的一些工具方法类) 15 | protected void Move(float speed) 16 | { 17 | Debug.Log("Moving with speed " + speed + "!(速度)"); 18 | } 19 | 20 | protected void PlaySound(string coolSound) 21 | { 22 | Debug.Log("Playing sound " + coolSound+"!(音效)"); 23 | } 24 | 25 | protected void SpawnParticles(string particles) 26 | { 27 | Debug.Log("Spawn Particles "+ particles+"!(粒子特效)"); 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Assets/Structural Patterns/Decorator Pattern/README.md: -------------------------------------------------------------------------------- 1 | # Decorator Pattern 装饰模式 2 | ## Definition 3 | 4 | Attach additional responsibilities to an object dynamically. Decorators provide a flexible alternative to subclassing for extending functionality. 5 |
动态地给一个对象添加一些额外的职责。就增加功能来说,装饰模式相比生成子类更为灵活。 6 | 7 | ![](https://github.com/QianMo/Unity-Design-Pattern/blob/master/UML_Picture/decorator.gif) 8 | 9 | 10 | ## Participants 11 | 12 | The classes and objects participating in this pattern are: 13 | 14 | ### Component (LibraryItem) 15 | * defines the interface for objects that can have responsibilities added to them dynamically. 16 | 17 | ### ConcreteComponent (Book, Video) 18 | * defines an object to which additional responsibilities can be attached. 19 | 20 | ### Decorator (Decorator) 21 | * maintains a reference to a Component object and defines an interface that conforms to Component's interface. 22 | 23 | ### ConcreteDecorator (Borrowable) 24 | * adds responsibilities to the component. 25 | 26 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Command Pattern/README.md: -------------------------------------------------------------------------------- 1 | # Command Pattern 命令模式 2 | ## Definition 3 | Encapsulate a request as an object, thereby letting you parameterize clients with different requests, queue or log requests, and support undoable operations. 4 |
命令模式将“请求”封装成对象,以便使用不同的请求、队列或者日志来参数化其他对象,同时支持可撤消的操作。 5 | 6 | ![](https://github.com/QianMo/Unity-Design-Pattern/blob/master/UML_Picture/command.gif) 7 | 8 | ## Participants 9 | The classes and objects participating in this pattern are: 10 | 11 | ### Command 12 | * declares an interface for executing an operation 13 | 14 | ### ConcreteCommand 15 | * defines a binding between a Receiver object and an action 16 | * implements Execute by invoking the corresponding operation(s) on Receiver 17 | 18 | ### Client 19 | * creates a ConcreteCommand object and sets its receiver 20 | 21 | ### Invoker 22 | * asks the command to carry out the request 23 | 24 | ### Receiver 25 | * knows how to perform the operations associated with carrying out the request. 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /ProjectSettings/UnityConnectSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!310 &1 4 | UnityConnectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 1 7 | m_Enabled: 0 8 | m_TestMode: 0 9 | m_EventOldUrl: https://api.uca.cloud.unity3d.com/v1/events 10 | m_EventUrl: https://cdp.cloud.unity3d.com/v1/events 11 | m_ConfigUrl: https://config.uca.cloud.unity3d.com 12 | m_TestInitMode: 0 13 | CrashReportingSettings: 14 | m_EventUrl: https://perf-events.cloud.unity.cn 15 | m_Enabled: 0 16 | m_LogBufferSize: 10 17 | m_CaptureEditorExceptions: 1 18 | UnityPurchasingSettings: 19 | m_Enabled: 0 20 | m_TestMode: 0 21 | UnityAnalyticsSettings: 22 | m_Enabled: 0 23 | m_TestMode: 0 24 | m_InitializeOnStartup: 1 25 | UnityAdsSettings: 26 | m_Enabled: 0 27 | m_InitializeOnStartup: 1 28 | m_TestMode: 0 29 | m_IosGameId: 30 | m_AndroidGameId: 31 | m_GameIds: {} 32 | m_GameId: 33 | PerformanceReportingSettings: 34 | m_Enabled: 0 35 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Mediator Pattern/README.md: -------------------------------------------------------------------------------- 1 | # Mediator Pattern 中介者模式 2 | ## Definition 3 | 4 | Define an object that encapsulates how a set of objects interact. Mediator promotes loose coupling by keeping objects from referring to each other explicitly, and it lets you vary their interaction independently. 5 |
用一个中介对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使其耦合松散,而且可以独立地改变它们之间的交互。 6 | 7 | ![](https://github.com/QianMo/Unity-Design-Pattern/blob/master/UML_Picture/mediator.gif) 8 | 9 | 10 | ## Participants 11 | 12 | The classes and objects participating in this pattern are: 13 | 14 | ### Mediator (IChatroom) 15 | * defines an interface for communicating with Colleague objects 16 | 17 | ### ConcreteMediator (Chatroom) 18 | * implements cooperative behavior by coordinating Colleague objects 19 | * knows and maintains its colleagues 20 | 21 | ### Colleague classes (Participant) 22 | * each Colleague class knows its Mediator object 23 | * each colleague communicates with its mediator whenever it would have otherwise communicated with another colleague 24 | 25 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Template Method Pattern/README.md: -------------------------------------------------------------------------------- 1 | # Template Method Pattern 模板方法模式 2 | ## Definition 3 | 4 | Define the skeleton of an algorithm in an operation, deferring some steps to subclasses. Template Method lets subclasses redefine certain steps of an algorithm without changing the algorithm's structure. 5 |
定义一个操作中的算法的框架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 6 | 7 | ![](https://github.com/QianMo/Unity-Design-Pattern/blob/master/UML_Picture/template.gif) 8 | 9 | 10 | ## Participants 11 | 12 | The classes and objects participating in this pattern are: 13 | 14 | ### AbstractClass (DataObject) 15 | * defines abstract primitive operations that concrete subclasses define to implement steps of an algorithm 16 | * implements a template method defining the skeleton of an algorithm. The template method calls primitive operations as well as operations defined in AbstractClass or those of other objects. 17 | 18 | ### ConcreteClass (CustomerDataObject) 19 | * implements the primitive operations ot carry out subclass-specific steps of the algorithm 20 | 21 | -------------------------------------------------------------------------------- /ProjectSettings/PackageManagerSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &1 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 61 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | m_GameObject: {fileID: 0} 10 | m_Enabled: 1 11 | m_EditorHideFlags: 0 12 | m_Script: {fileID: 0} 13 | m_Name: 14 | m_EditorClassIdentifier: UnityEditor:UnityEditor.PackageManager.UI:PackageManagerProjectSettings 15 | m_ScopedRegistriesSettingsExpanded: 1 16 | oneTimeWarningShown: 0 17 | m_Registries: 18 | - m_Id: main 19 | m_Name: 20 | m_Url: https://packages.unity.cn 21 | m_Scopes: [] 22 | m_IsDefault: 1 23 | m_UserSelectedRegistryName: 24 | m_UserAddingNewScopedRegistry: 0 25 | m_RegistryInfoDraft: 26 | m_ErrorMessage: 27 | m_Original: 28 | m_Id: 29 | m_Name: 30 | m_Url: 31 | m_Scopes: [] 32 | m_IsDefault: 0 33 | m_Modified: 0 34 | m_Name: 35 | m_Url: 36 | m_Scopes: 37 | - 38 | m_SelectedScopeIndex: 0 39 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4/DuckingState.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // DuckingState.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class DuckingState : HeroineBaseState 9 | { 10 | private Heroine _heroine; 11 | public DuckingState(Heroine heroine) 12 | { 13 | _heroine = heroine; 14 | Debug.Log("------------------------Heroine in DuckingState~!(进入下蹲躲避状态!)"); 15 | } 16 | 17 | 18 | public void Update() 19 | { 20 | 21 | } 22 | 23 | public void HandleInput() 24 | { 25 | if (Input.GetKeyDown(KeyCode.DownArrow)) 26 | { 27 | Debug.Log("已经在下蹲躲避状态中!"); 28 | return; 29 | } 30 | if (Input.GetKeyUp(KeyCode.UpArrow)) 31 | { 32 | Debug.Log("get GetKeyUp.UpArrow!"); 33 | _heroine.SetHeroineState(new StandingState(_heroine)); 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Dirty Flag Pattern/README.md: -------------------------------------------------------------------------------- 1 | # Dirty Flag Pattern 脏标记模式 2 | 3 | ## Intent 意义 4 | 5 | Avoid unnecessary work by deferring it until the result is needed. 6 |
7 | 将工作推迟到必要时进行以避免不必要的工作。 8 | 9 | 10 | 11 | ## The Pattern 模式描述 12 | 13 | A set of primary data changes over time. A set of derived data is determined from this using some expensive process. A “dirty” flag tracks when the derived data is out of sync with the primary data. It is set when the primary data changes. If the flag is set when the derived data is needed, then it is reprocessed and the flag is cleared. Otherwise, the previous cached derived data is used. 14 | 15 | 一组原始数据随时间变化。一组颜色数据经过一些代价昂贵的操作由这些数据确定。一个脏标记跟踪这个衍生数据是否和原始数据同步。它在原始数据改变时被设置。如果它被设置了,那么当需要衍生数据时,它们就会被重新计算并且标记被清除。否则就使用缓存的数据。 16 | 17 | 18 | 19 | 20 | 21 | ## When to Use It 使用情形 22 | 23 | 就像其他优化模式一样,此模式会增加代码复杂度。只在有足够大的性能问题时,再考虑使用这一模式。 24 | 25 | 脏标记在这两种情况下适用: 26 | - 当前任务有昂贵的计算开销 27 | - 当前任务有昂贵的同步开销。 28 | 若满足这两者之一,也就是两者从原始数据转换到目标数据会消耗很多时间,都可以考虑使用脏标记模式来节省开销。 29 | 30 | 若原始数据的变化速度远高于目标数据的使用速度,此时数据会因为随后的修改而失效,此时就不适合使用脏标记模式。 31 | 32 | -------------------------------------------------------------------------------- /Assets/Game Programming Patterns/Data Locality Pattern/README.md: -------------------------------------------------------------------------------- 1 | # Data Locality Pattern 数据局部性模式 2 | 3 | ## Intent 意义 4 | 5 | Accelerate memory access by arranging data to take advantage of CPU caching. 6 |
7 | 通过合理组织数据利用CPU的缓存机制来加快内存访问速度。 8 | 9 | 10 | 11 | ## The Pattern 模式描述 12 | 13 | Modern CPUs have caches to speed up memory access. These can access memory adjacent to recently accessed memory much quicker. Take advantage of that to improve performance by increasing data locality — keeping data in contiguous memory in the order that you process it. 14 | 15 | 现代的CPU有缓存来加速内存读取,其可以更快地读取最近访问过的内存毗邻的内存。基于这一点,我们通过保证处理的数据排列在连续内存上,以提高内存局部性,从而提高性能。 16 | 17 | 为了保证数据局部性,就要避免的缓存不命中。也许你需要牺牲一些宝贵的抽象。你越围绕数据局部性设计程序,就越放弃继承、接口和它们带来的好处。没有银弹,只有权衡。 18 | 19 | 20 | 21 | 22 | ## When to Use It 使用情形 23 | 24 | 使用数据局部性的第一准则是在遇到性能问题时使用。不要将其应用在代码库不经常使用的角落上。 优化代码后其结果往往更加复杂,更加缺乏灵活性。 25 | 26 | 就本模式而言,还得确认你的性能问题确实由缓存不命中而引发的。如果代码是因为其他原因而缓慢,这个模式自然就不会有帮助。 27 | 28 | 简单的性能评估方法是手动添加指令,用计时器检查代码中两点间消耗的时间。而为了找到糟糕的缓存使用情况,知道缓存不命中有多少发生,又是在哪里发生的,则需要使用更加复杂的工具—— profilers。 29 | 30 | 组件模式是为缓存优化的最常见例子。而任何需要接触很多数据的关键代码,考虑数据局部性都是很重要的。 31 | 32 | 33 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/Chain of Responsibility Pattern/README.md: -------------------------------------------------------------------------------- 1 | # Chain of Responsibility Pattern 责任链模式 2 | ## Definition 3 | 4 | Avoid coupling the sender of a request to its receiver by giving more than one object a chance to handle the request. Chain the receiving objects and pass the request along the chain until an object handles it. 5 |
使多个对象都有机会处理请求,从而避免了请求的发送者和接受者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有对象处理它为止。 6 | 7 | ![](https://github.com/QianMo/Unity-Design-Pattern/blob/master/UML_Picture/chain.gif) 8 | 9 | 10 | ## Participants 11 | 12 | The classes and objects participating in this pattern are: 13 | 14 | ### Handler (Approver) 15 | * defines an interface for handling the requests 16 | * (optional) implements the successor link 17 | 18 | ### ConcreteHandler (Director, VicePresident, President) 19 | * handles requests it is responsible for 20 | * can access its successor 21 | * if the ConcreteHandler can handle the request, it does so; otherwise it forwards the request to its successor 22 | 23 | ### Client (ChainApp) 24 | * initiates the request to a ConcreteHandler object on the chain 25 | 26 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple3/NoCard.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // NoCard.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class NoCard : ATMState 9 | { 10 | 11 | ATMMachine atmMachine; 12 | 13 | 14 | public NoCard(ATMMachine newATMMachine) 15 | { 16 | 17 | atmMachine = newATMMachine; 18 | 19 | } 20 | 21 | public void insertCard() 22 | { 23 | 24 | Debug.Log("Please enter your pin"); 25 | //改变状态了 26 | atmMachine.setATMState(new HasCard(atmMachine)); 27 | atmMachine.setATMState(atmMachine.getYesCardState()); 28 | 29 | } 30 | 31 | public void ejectCard() 32 | { 33 | 34 | Debug.Log("You didn't enter a card"); 35 | 36 | } 37 | 38 | public void requestCash(int cashToWithdraw) 39 | { 40 | 41 | Debug.Log("You have not entered your card"); 42 | 43 | } 44 | 45 | public void insertPin(int pinEntered) 46 | { 47 | 48 | Debug.Log("You have not entered your card"); 49 | 50 | } 51 | } -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4/JumpingState.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // JumpState.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class JumpingState : HeroineBaseState 9 | { 10 | 11 | private Heroine _heroine; 12 | public JumpingState(Heroine heroine) 13 | { 14 | _heroine = heroine; 15 | Debug.Log("------------------------Heroine in JumpingState~!(进入跳跃状态!)"); 16 | } 17 | 18 | public void Update() 19 | { 20 | 21 | } 22 | 23 | public void HandleInput() 24 | { 25 | if (Input.GetKeyDown(KeyCode.UpArrow)) 26 | { 27 | Debug.Log("get GetKeyDown.UpArrow! but already in Jumping! return!(已经在跳跃状态中!)"); 28 | return; 29 | } 30 | if (Input.GetKeyDown(KeyCode.DownArrow)) 31 | { 32 | Debug.Log("get KeyCode.DownArrow!"); 33 | _heroine.SetHeroineState(new DrivingState(_heroine)); 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /Assets/Behavioral Patterns/State Pattern/Exmaple4/StandingState.cs: -------------------------------------------------------------------------------- 1 | //------------------------------------------------------------------------------------- 2 | // StandingState.cs 3 | //------------------------------------------------------------------------------------- 4 | 5 | using UnityEngine; 6 | using System.Collections; 7 | 8 | public class StandingState : HeroineBaseState 9 | { 10 | private Heroine _heroine; 11 | public StandingState(Heroine heroine) 12 | { 13 | _heroine = heroine; 14 | Debug.Log("------------------------Heroine in StandingState~!(进入站立状态!)"); 15 | } 16 | 17 | public void Update() 18 | { 19 | 20 | } 21 | 22 | public void HandleInput() 23 | { 24 | if (Input.GetKeyDown(KeyCode.UpArrow)) 25 | { 26 | Debug.Log("get KeyCode.UpArrow!"); 27 | _heroine.SetHeroineState(new JumpingState(_heroine)); 28 | } 29 | if (Input.GetKeyDown(KeyCode.DownArrow)) 30 | { 31 | Debug.Log("get KeyCode.DownArrow!"); 32 | _heroine.SetHeroineState(new DuckingState(_heroine)); 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /Assets/Creational Patterns/Factory Method Pattern/README.md: -------------------------------------------------------------------------------- 1 | # Factory Method Pattern 工厂方法模式 2 | ## Definition 3 | 4 | Define an interface for creating an object, but let subclasses decide which class to instantiate. Factory Method lets a class defer instantiation to subclasses. 5 |
定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。 6 | 7 | ![](https://github.com/QianMo/Unity-Design-Pattern/blob/master/UML_Picture/factory.gif) 8 | 9 | 10 | ## Participants 11 | 12 | The classes and objects participating in this pattern are: 13 | 14 | ### Product (Page) 15 | * defines the interface of objects the factory method creates 16 | * ConcreteProduct (SkillsPage, EducationPage, ExperiencePage) 17 | * implements the Product interface 18 | 19 | ### Creator (Document) 20 | * declares the factory method, which returns an object of type Product. Creator may also define a default implementation of the factory method that returns a default ConcreteProduct object. 21 | * may call the factory method to create a Product object. 22 | 23 | ### ConcreteCreator (Report, Resume) 24 | * overrides the factory method to return an instance of a ConcreteProduct. 25 | 26 | --------------------------------------------------------------------------------