├── .gitignore ├── EventsExample ├── .gitignore ├── Assets │ ├── 3rdParty.meta │ ├── 3rdParty │ │ ├── ReorderableList.meta │ │ ├── ReorderableList │ │ │ ├── .gitignore │ │ │ ├── EditScriptableAttribute.cs │ │ │ ├── Editor │ │ │ │ ├── ReorderableArrayInspector.cs │ │ │ │ └── SerializedPropExtension.cs │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── ReorderableAttribute.cs │ │ │ └── repo-url.txt │ │ ├── SceneReference.meta │ │ └── SceneReference │ │ │ ├── SceneReference.cs │ │ │ ├── SceneReference.cs.meta │ │ │ ├── SceneReferenceTest.cs │ │ │ ├── SceneReferenceTest.cs.meta │ │ │ ├── UnitySceneReference.asmdef │ │ │ ├── UnitySceneReference.asmdef.meta │ │ │ ├── package.json │ │ │ ├── package.json.meta │ │ │ ├── repo-url.txt │ │ │ └── repo-url.txt.meta │ ├── Game.Content.meta │ ├── Game.Content │ │ ├── Audio.meta │ │ ├── Audio │ │ │ ├── 252083-spawn.ogg │ │ │ ├── 252083-spawn.ogg.meta │ │ │ ├── 462363-explode-firecracker.mp3 │ │ │ ├── 462363-explode-firecracker.mp3.meta │ │ │ ├── licenses.txt │ │ │ └── licenses.txt.meta │ │ ├── Effects.meta │ │ ├── Effects │ │ │ ├── Fire & Explosion Effects.meta │ │ │ └── Fire & Explosion Effects │ │ │ │ ├── Materials.meta │ │ │ │ ├── Materials │ │ │ │ ├── Embers_LWRP.mat │ │ │ │ ├── Embers_LWRP.mat.meta │ │ │ │ ├── EnergyExplosion_LWRP.mat │ │ │ │ ├── EnergyExplosion_LWRP.mat.meta │ │ │ │ ├── EnergyShockwave_LWRP.mat │ │ │ │ └── EnergyShockwave_LWRP.mat.meta │ │ │ │ ├── Prefabs.meta │ │ │ │ ├── Prefabs │ │ │ │ ├── EnergyExplosion.prefab │ │ │ │ └── EnergyExplosion.prefab.meta │ │ │ │ ├── Textures.meta │ │ │ │ └── Textures │ │ │ │ ├── Debris.png │ │ │ │ ├── Debris.png.meta │ │ │ │ ├── EnergyEffect.tif │ │ │ │ ├── EnergyEffect.tif.meta │ │ │ │ ├── Ramp03.png │ │ │ │ ├── Ramp03.png.meta │ │ │ │ ├── RoundSoftParticle.tif │ │ │ │ ├── RoundSoftParticle.tif.meta │ │ │ │ ├── SphereNormal.tif │ │ │ │ ├── SphereNormal.tif.meta │ │ │ │ ├── ramp01.png │ │ │ │ ├── ramp01.png.meta │ │ │ │ ├── shockwave.tif │ │ │ │ └── shockwave.tif.meta │ │ ├── Materials.meta │ │ ├── Materials │ │ │ ├── GroundMaterial.mat │ │ │ ├── GroundMaterial.mat.meta │ │ │ ├── Skybox_Mat.mat │ │ │ └── Skybox_Mat.mat.meta │ │ ├── Models.meta │ │ ├── Models │ │ │ ├── Character Model.meta │ │ │ └── Character Model │ │ │ │ ├── License.txt │ │ │ │ ├── License.txt.meta │ │ │ │ ├── Material.meta │ │ │ │ ├── Material │ │ │ │ ├── Advanced.meta │ │ │ │ ├── Advanced │ │ │ │ │ ├── skin_adventurer.mat │ │ │ │ │ ├── skin_adventurer.mat.meta │ │ │ │ │ ├── skin_adventurer.png │ │ │ │ │ ├── skin_adventurer.png.meta │ │ │ │ │ ├── skin_man.mat │ │ │ │ │ ├── skin_man.mat.meta │ │ │ │ │ ├── skin_man.png │ │ │ │ │ ├── skin_man.png.meta │ │ │ │ │ ├── skin_manAlternative.mat │ │ │ │ │ ├── skin_manAlternative.mat.meta │ │ │ │ │ ├── skin_manAlternative.png │ │ │ │ │ ├── skin_manAlternative.png.meta │ │ │ │ │ ├── skin_orc.mat │ │ │ │ │ ├── skin_orc.mat.meta │ │ │ │ │ ├── skin_orc.png │ │ │ │ │ ├── skin_orc.png.meta │ │ │ │ │ ├── skin_robot.mat │ │ │ │ │ ├── skin_robot.mat.meta │ │ │ │ │ ├── skin_robot.png │ │ │ │ │ ├── skin_robot.png.meta │ │ │ │ │ ├── skin_soldier.mat │ │ │ │ │ ├── skin_soldier.mat.meta │ │ │ │ │ ├── skin_soldier.png │ │ │ │ │ ├── skin_soldier.png.meta │ │ │ │ │ ├── skin_woman.mat │ │ │ │ │ ├── skin_woman.mat.meta │ │ │ │ │ ├── skin_woman.png │ │ │ │ │ ├── skin_woman.png.meta │ │ │ │ │ ├── skin_womanAlternative.mat │ │ │ │ │ ├── skin_womanAlternative.mat.meta │ │ │ │ │ ├── skin_womanAlternative.png │ │ │ │ │ └── skin_womanAlternative.png.meta │ │ │ │ ├── Basic.meta │ │ │ │ └── Basic │ │ │ │ │ ├── skin_adventurer.mat │ │ │ │ │ ├── skin_adventurer.mat.meta │ │ │ │ │ ├── skin_adventurer.png │ │ │ │ │ ├── skin_adventurer.png.meta │ │ │ │ │ ├── skin_man.mat │ │ │ │ │ ├── skin_man.mat.meta │ │ │ │ │ ├── skin_man.png │ │ │ │ │ ├── skin_man.png.meta │ │ │ │ │ ├── skin_manAlternative.mat │ │ │ │ │ ├── skin_manAlternative.mat.meta │ │ │ │ │ ├── skin_manAlternative.png │ │ │ │ │ ├── skin_manAlternative.png.meta │ │ │ │ │ ├── skin_orc.mat │ │ │ │ │ ├── skin_orc.mat.meta │ │ │ │ │ ├── skin_orc.png │ │ │ │ │ ├── skin_orc.png.meta │ │ │ │ │ ├── skin_robot.mat │ │ │ │ │ ├── skin_robot.mat.meta │ │ │ │ │ ├── skin_robot.png │ │ │ │ │ ├── skin_robot.png.meta │ │ │ │ │ ├── skin_soldier.mat │ │ │ │ │ ├── skin_soldier.mat.meta │ │ │ │ │ ├── skin_soldier.png │ │ │ │ │ ├── skin_soldier.png.meta │ │ │ │ │ ├── skin_woman.mat │ │ │ │ │ ├── skin_woman.mat.meta │ │ │ │ │ ├── skin_woman.png │ │ │ │ │ ├── skin_woman.png.meta │ │ │ │ │ ├── skin_womanAlternative.mat │ │ │ │ │ ├── skin_womanAlternative.mat.meta │ │ │ │ │ ├── skin_womanAlternative.png │ │ │ │ │ └── skin_womanAlternative.png.meta │ │ │ │ ├── Model.meta │ │ │ │ └── Model │ │ │ │ ├── Materials.meta │ │ │ │ ├── Materials │ │ │ │ ├── lambert.mat │ │ │ │ ├── lambert.mat.meta │ │ │ │ ├── lambert1.mat │ │ │ │ └── lambert1.mat.meta │ │ │ │ ├── advancedCharacter.fbx │ │ │ │ ├── advancedCharacter.fbx.meta │ │ │ │ ├── basicCharacter.fbx │ │ │ │ └── basicCharacter.fbx.meta │ │ ├── Prefabs.meta │ │ └── Prefabs │ │ │ ├── Adventurer.prefab │ │ │ ├── Adventurer.prefab.meta │ │ │ ├── Audio.prefab │ │ │ ├── Audio.prefab.meta │ │ │ ├── Cube.prefab │ │ │ ├── Cube.prefab.meta │ │ │ ├── Effects.prefab │ │ │ ├── Effects.prefab.meta │ │ │ ├── Ground.prefab │ │ │ ├── Ground.prefab.meta │ │ │ ├── InGameInterface.prefab │ │ │ ├── InGameInterface.prefab.meta │ │ │ ├── Scenes.prefab │ │ │ ├── Scenes.prefab.meta │ │ │ ├── Sphere.prefab │ │ │ └── Sphere.prefab.meta │ ├── Game.Scripts.meta │ ├── Game.Scripts │ │ ├── AudioManager.cs │ │ ├── AudioManager.cs.meta │ │ ├── BugFixes.meta │ │ ├── BugFixes │ │ │ ├── CopySkinnedEntityData.cs │ │ │ └── CopySkinnedEntityData.cs.meta │ │ ├── Components.meta │ │ ├── Components │ │ │ ├── ActorDefinition.cs │ │ │ ├── ActorDefinition.cs.meta │ │ │ ├── BrainState.cs │ │ │ ├── BrainState.cs.meta │ │ │ ├── CollisionDetector.cs │ │ │ ├── CollisionDetector.cs.meta │ │ │ ├── Events.meta │ │ │ ├── Events │ │ │ │ ├── ActorCreatedEvent.cs │ │ │ │ ├── ActorCreatedEvent.cs.meta │ │ │ │ ├── AttackerDeathEvent.cs │ │ │ │ ├── AttackerDeathEvent.cs.meta │ │ │ │ ├── CollisionEvent.cs │ │ │ │ ├── CollisionEvent.cs.meta │ │ │ │ ├── PlaySoundEvent.cs │ │ │ │ ├── PlaySoundEvent.cs.meta │ │ │ │ ├── PlayerCreatedEvent.cs │ │ │ │ ├── PlayerCreatedEvent.cs.meta │ │ │ │ ├── ScoreUpdatedEvent.cs │ │ │ │ ├── ScoreUpdatedEvent.cs.meta │ │ │ │ ├── SpawnActorEvent.cs │ │ │ │ ├── SpawnActorEvent.cs.meta │ │ │ │ ├── SpawnEffectEvent.cs │ │ │ │ ├── SpawnEffectEvent.cs.meta │ │ │ │ ├── SpawnPlayerEvent.cs │ │ │ │ ├── SpawnPlayerEvent.cs.meta │ │ │ │ ├── TargetAcquiredEvent.cs │ │ │ │ └── TargetAcquiredEvent.cs.meta │ │ │ ├── MovementInfo.cs │ │ │ ├── MovementInfo.cs.meta │ │ │ ├── MovementTarget.cs │ │ │ ├── MovementTarget.cs.meta │ │ │ ├── OwnerRef.cs │ │ │ ├── OwnerRef.cs.meta │ │ │ ├── PlayerInput.cs │ │ │ ├── PlayerInput.cs.meta │ │ │ ├── PlayerSession.cs │ │ │ ├── PlayerSession.cs.meta │ │ │ ├── Scene.meta │ │ │ ├── Scene │ │ │ │ ├── RequestSceneLoadEvent.cs │ │ │ │ ├── RequestSceneLoadEvent.cs.meta │ │ │ │ ├── RequestSceneUnloadEvent.cs │ │ │ │ ├── RequestSceneUnloadEvent.cs.meta │ │ │ │ ├── SceneLoadedEvent.cs │ │ │ │ ├── SceneLoadedEvent.cs.meta │ │ │ │ ├── SceneLoadingProgress.cs │ │ │ │ ├── SceneLoadingProgress.cs.meta │ │ │ │ ├── SceneUnloadedEvent.cs │ │ │ │ ├── SceneUnloadedEvent.cs.meta │ │ │ │ ├── SceneUnloadingProgress.cs │ │ │ │ └── SceneUnloadingProgress.cs.meta │ │ │ ├── Tags.meta │ │ │ ├── Tags │ │ │ │ ├── AIPlayerTag.cs │ │ │ │ ├── AIPlayerTag.cs.meta │ │ │ │ ├── AttackerTag.cs │ │ │ │ ├── AttackerTag.cs.meta │ │ │ │ ├── DefenderTag.cs │ │ │ │ ├── DefenderTag.cs.meta │ │ │ │ ├── PlayerTag.cs │ │ │ │ ├── PlayerTag.cs.meta │ │ │ │ ├── UninitializedTag.cs │ │ │ │ ├── UninitializedTag.cs.meta │ │ │ │ ├── UnprocessedTag.cs │ │ │ │ └── UnprocessedTag.cs.meta │ │ │ ├── VisionInfo.cs │ │ │ └── VisionInfo.cs.meta │ │ ├── Effects.meta │ │ ├── Effects │ │ │ ├── ParticleEffect.cs │ │ │ ├── ParticleEffect.cs.meta │ │ │ ├── ParticleEffectCollection.cs │ │ │ ├── ParticleEffectCollection.cs.meta │ │ │ ├── ParticleEffectManager.cs │ │ │ ├── ParticleEffectManager.cs.meta │ │ │ ├── ParticleEffectSpawner.cs │ │ │ └── ParticleEffectSpawner.cs.meta │ │ ├── Extensions.meta │ │ ├── Extensions │ │ │ ├── DebugExtensions.cs │ │ │ ├── DebugExtensions.cs.meta │ │ │ ├── StringExtensions.cs │ │ │ └── StringExtensions.cs.meta │ │ ├── Providers.meta │ │ ├── Providers │ │ │ ├── Players.cs │ │ │ ├── Players.cs.meta │ │ │ ├── Prefabs.cs │ │ │ ├── Prefabs.cs.meta │ │ │ ├── ProviderSystem.cs │ │ │ └── ProviderSystem.cs.meta │ │ ├── SceneLoader.cs │ │ ├── SceneLoader.cs.meta │ │ ├── Support.meta │ │ ├── Support │ │ │ ├── EventRouter.cs │ │ │ ├── EventRouter.cs.meta │ │ │ ├── ObjectPool.cs │ │ │ ├── ObjectPool.cs.meta │ │ │ ├── PoolGroup.cs │ │ │ ├── PoolGroup.cs.meta │ │ │ ├── SubscenePrefabConversion.cs │ │ │ ├── SubscenePrefabConversion.cs.meta │ │ │ ├── UnsafeEnumerator.cs │ │ │ └── UnsafeEnumerator.cs.meta │ │ ├── Systems.meta │ │ ├── Systems │ │ │ ├── EventDebugSystem.cs │ │ │ ├── EventDebugSystem.cs.meta │ │ │ ├── ExplodeOnCollisionSystem.cs │ │ │ ├── ExplodeOnCollisionSystem.cs.meta │ │ │ ├── LevelCreateSystem.cs │ │ │ ├── LevelCreateSystem.cs.meta │ │ │ ├── LevelDestroySystem.cs │ │ │ ├── LevelDestroySystem.cs.meta │ │ │ ├── MovementSystem.cs │ │ │ ├── MovementSystem.cs.meta │ │ │ ├── PlayerSessionSystem.cs │ │ │ ├── PlayerSessionSystem.cs.meta │ │ │ ├── PrefabSystem.cs │ │ │ ├── PrefabSystem.cs.meta │ │ │ ├── SimpleCollisionSystem.cs │ │ │ ├── SimpleCollisionSystem.cs.meta │ │ │ ├── SpawnAttackerSystem.cs │ │ │ ├── SpawnAttackerSystem.cs.meta │ │ │ ├── SpawnDefenderSystem.cs │ │ │ ├── SpawnDefenderSystem.cs.meta │ │ │ ├── SpawnPlayerSystem.cs │ │ │ ├── SpawnPlayerSystem.cs.meta │ │ │ ├── TargetFinderSystem.cs │ │ │ └── TargetFinderSystem.cs.meta │ │ ├── UI.meta │ │ └── UI │ │ │ ├── UIActorSpawner.cs │ │ │ ├── UIActorSpawner.cs.meta │ │ │ ├── UIMainMenu.cs │ │ │ ├── UIMainMenu.cs.meta │ │ │ ├── UIScoreUpdater.cs │ │ │ └── UIScoreUpdater.cs.meta │ ├── Presets.meta │ ├── Presets │ │ ├── AudioCompressedInMemory.preset │ │ ├── AudioCompressedInMemory.preset.meta │ │ ├── AudioStreaming.preset │ │ ├── AudioStreaming.preset.meta │ │ ├── Defaults.meta │ │ ├── Defaults │ │ │ ├── AlbedoTexture_Default.preset │ │ │ ├── AlbedoTexture_Default.preset.meta │ │ │ ├── AudioDecompressOnLoad.preset │ │ │ ├── AudioDecompressOnLoad.preset.meta │ │ │ ├── DirectionalLight_Default.preset │ │ │ └── DirectionalLight_Default.preset.meta │ │ ├── NormalTexture.preset │ │ ├── NormalTexture.preset.meta │ │ ├── UtilityTexture.preset │ │ └── UtilityTexture.preset.meta │ ├── SceneDependencyCache.meta │ ├── SceneDependencyCache │ │ ├── 186b0fee99acd5d5350ed7eda04a2dc0.sceneWithBuildSettings │ │ ├── 186b0fee99acd5d5350ed7eda04a2dc0.sceneWithBuildSettings.meta │ │ ├── 30f1d870d6772c12f575828b85cf68f5.sceneWithBuildSettings │ │ └── 30f1d870d6772c12f575828b85cf68f5.sceneWithBuildSettings.meta │ ├── Scenes.meta │ ├── Scenes │ │ ├── Levels.meta │ │ ├── Levels │ │ │ ├── Level_1.unity │ │ │ └── Level_1.unity.meta │ │ ├── StartScene.unity │ │ ├── StartScene.unity.meta │ │ ├── SubScenes.meta │ │ ├── SubScenes │ │ │ ├── Prefabs.unity │ │ │ └── Prefabs.unity.meta │ │ ├── UI.meta │ │ └── UI │ │ │ ├── InGameMenu.unity │ │ │ ├── InGameMenu.unity.meta │ │ │ ├── MainMenu.unity │ │ │ └── MainMenu.unity.meta │ ├── Settings.meta │ └── Settings │ │ ├── ForwardRenderer.asset │ │ ├── ForwardRenderer.asset.meta │ │ ├── SampleSceneProfile.asset │ │ ├── SampleSceneProfile.asset.meta │ │ ├── UniversalRP-HighQuality.asset │ │ ├── UniversalRP-HighQuality.asset.meta │ │ ├── UniversalRP-LowQuality.asset │ │ ├── UniversalRP-LowQuality.asset.meta │ │ ├── UniversalRP-MediumQuality.asset │ │ └── UniversalRP-MediumQuality.asset.meta ├── Packages │ ├── UnityEcsEvents │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── LICENSE.meta │ │ ├── README.md │ │ ├── README.md.meta │ │ ├── Runtime.meta │ │ ├── Runtime │ │ │ ├── ArchetypeView.cs │ │ │ ├── ArchetypeView.cs.meta │ │ │ ├── AssemblyInfo.cs │ │ │ ├── AssemblyInfo.cs.meta │ │ │ ├── BufferHeaderProxy.cs │ │ │ ├── BufferHeaderProxy.cs.meta │ │ │ ├── BufferLink.cs │ │ │ ├── BufferLink.cs.meta │ │ │ ├── EntityEvent.cs │ │ │ ├── EntityEvent.cs.meta │ │ │ ├── EntityEventSystem.cs │ │ │ ├── EntityEventSystem.cs.meta │ │ │ ├── EntityEventSystemLoader.cs │ │ │ ├── EntityEventSystemLoader.cs.meta │ │ │ ├── EventBatch.cs │ │ │ ├── EventBatch.cs.meta │ │ │ ├── EventQueue.cs │ │ │ ├── EventQueue.cs.meta │ │ │ ├── Extensions.meta │ │ │ ├── Extensions │ │ │ │ ├── StringExtensions.cs │ │ │ │ ├── StringExtensions.cs.meta │ │ │ │ ├── UnsafeExtensions.cs │ │ │ │ └── UnsafeExtensions.cs.meta │ │ │ ├── MultiAppendBuffer.cs │ │ │ ├── MultiAppendBuffer.cs.meta │ │ │ ├── StructuralChangeQueue.cs │ │ │ ├── StructuralChangeQueue.cs.meta │ │ │ ├── UnsafeEntityManager.cs │ │ │ ├── UnsafeEntityManager.cs.meta │ │ │ ├── UnsafeNativeArray.cs │ │ │ ├── UnsafeNativeArray.cs.meta │ │ │ ├── Vella.Events.asmdef │ │ │ ├── Vella.Events.asmdef.meta │ │ │ └── vbmd4qha.dxk~ │ │ ├── Tests.meta │ │ ├── Tests │ │ │ ├── ArchetypeChunkViewTests.cs │ │ │ ├── ArchetypeChunkViewTests.cs.meta │ │ │ ├── Attributes.meta │ │ │ ├── Attributes │ │ │ │ ├── TestCategory.cs │ │ │ │ └── TestCategory.cs.meta │ │ │ ├── Data.meta │ │ │ ├── Data │ │ │ │ ├── TestComponents.cs │ │ │ │ └── TestComponents.cs.meta │ │ │ ├── EventBatchTests.cs │ │ │ ├── EventBatchTests.cs.meta │ │ │ ├── EventQueueTests.cs │ │ │ ├── EventQueueTests.cs.meta │ │ │ ├── EventSystemBasicTests.cs │ │ │ ├── EventSystemBasicTests.cs.meta │ │ │ ├── EventSystemSequentialTests.cs │ │ │ ├── EventSystemSequentialTests.cs.meta │ │ │ ├── Fixtures.meta │ │ │ ├── Fixtures │ │ │ │ ├── ECSTestsFixture.cs │ │ │ │ ├── ECSTestsFixture.cs.meta │ │ │ │ ├── EntityPerformanceTestFixture.cs │ │ │ │ ├── EntityPerformanceTestFixture.cs.meta │ │ │ │ ├── EscQueueTestsFixture.cs │ │ │ │ └── EscQueueTestsFixture.cs.meta │ │ │ ├── Helpers.meta │ │ │ ├── Helpers │ │ │ │ ├── NativeArrayBuilder.cs │ │ │ │ └── NativeArrayBuilder.cs.meta │ │ │ ├── IntegrationPerformanceTests.cs │ │ │ ├── IntegrationPerformanceTests.cs.meta │ │ │ ├── IsolatedComparison.cs │ │ │ ├── IsolatedComparison.cs.meta │ │ │ ├── ProxyTests.cs │ │ │ ├── ProxyTests.cs.meta │ │ │ ├── UnsafeEntityManagerTests.cs │ │ │ ├── UnsafeEntityManagerTests.cs.meta │ │ │ ├── UnsafeExtensionsTests.cs │ │ │ ├── UnsafeExtensionsTests.cs.meta │ │ │ ├── Vella.Events.Tests.asmdef │ │ │ └── Vella.Events.Tests.asmdef.meta │ │ ├── package.json │ │ └── package.json.meta │ └── manifest.json └── ProjectSettings │ ├── AudioManager.asset │ ├── ClusterInputManager.asset │ ├── DynamicsManager.asset │ ├── EditorBuildSettings.asset │ ├── EditorSettings.asset │ ├── GraphicsSettings.asset │ ├── InputManager.asset │ ├── NavMeshAreas.asset │ ├── Physics2DSettings.asset │ ├── PresetManager.asset │ ├── ProjectSettings.asset │ ├── ProjectVersion.txt │ ├── QualitySettings.asset │ ├── TagManager.asset │ ├── TimeManager.asset │ ├── UnityConnectSettings.asset │ ├── VFXManager.asset │ └── XRSettings.asset ├── LICENSE └── README.md /.gitignore: -------------------------------------------------------------------------------- 1 | # This .gitignore file should be placed at the root of your Unity project directory 2 | # 3 | # Get latest from https://github.com/github/gitignore/blob/master/Unity.gitignore 4 | # 5 | /[Ll]ibrary/ 6 | /[Tt]emp/ 7 | /[Oo]bj/ 8 | /[Bb]uild/ 9 | /[Bb]uilds/ 10 | /[Ll]ogs/ 11 | /[Mm]emoryCaptures/ 12 | 13 | # Asset meta data should only be ignored when the corresponding asset is also ignored 14 | !/[Aa]ssets/**/*.meta 15 | 16 | # Uncomment this line if you wish to ignore the asset store tools plugin 17 | # /[Aa]ssets/AssetStoreTools* 18 | 19 | # Autogenerated Jetbrains Rider plugin 20 | [Aa]ssets/Plugins/Editor/JetBrains* 21 | 22 | # Visual Studio cache directory 23 | .vs/ 24 | 25 | # Gradle cache directory 26 | .gradle/ 27 | 28 | # Autogenerated VS/MD/Consulo solution and project files 29 | ExportedObj/ 30 | .consulo/ 31 | *.csproj 32 | *.unityproj 33 | *.sln 34 | *.suo 35 | *.tmp 36 | *.user 37 | *.userprefs 38 | *.pidb 39 | *.booproj 40 | *.svd 41 | *.pdb 42 | *.mdb 43 | *.opendb 44 | *.VC.db 45 | 46 | # Unity3D generated meta files 47 | *.pidb.meta 48 | *.pdb.meta 49 | *.mdb.meta 50 | 51 | # Unity3D generated file on crash reports 52 | sysinfo.txt 53 | 54 | # Builds 55 | *.apk 56 | *.unitypackage 57 | 58 | # Crashlytics generated file 59 | crashlytics-build.properties 60 | 61 | -------------------------------------------------------------------------------- /EventsExample/.gitignore: -------------------------------------------------------------------------------- 1 | # This .gitignore file should be placed at the root of your Unity project directory 2 | # 3 | # Get latest from https://github.com/github/gitignore/blob/master/Unity.gitignore 4 | # 5 | /[Ll]ibrary/ 6 | /[Tt]emp/ 7 | /[Oo]bj/ 8 | /[Bb]uild/ 9 | /[Bb]uilds/ 10 | /[Ll]ogs/ 11 | /[Mm]emoryCaptures/ 12 | 13 | # Asset meta data should only be ignored when the corresponding asset is also ignored 14 | !/[Aa]ssets/**/*.meta 15 | 16 | # Uncomment this line if you wish to ignore the asset store tools plugin 17 | # /[Aa]ssets/AssetStoreTools* 18 | 19 | # Autogenerated Jetbrains Rider plugin 20 | [Aa]ssets/Plugins/Editor/JetBrains* 21 | 22 | # Visual Studio cache directory 23 | .vs/ 24 | 25 | # Gradle cache directory 26 | .gradle/ 27 | 28 | # Autogenerated VS/MD/Consulo solution and project files 29 | ExportedObj/ 30 | .consulo/ 31 | *.csproj 32 | *.unityproj 33 | *.sln 34 | *.suo 35 | *.tmp 36 | *.user 37 | *.userprefs 38 | *.pidb 39 | *.booproj 40 | *.svd 41 | *.pdb 42 | *.mdb 43 | *.opendb 44 | *.VC.db 45 | 46 | # Unity3D generated meta files 47 | *.pidb.meta 48 | *.pdb.meta 49 | *.mdb.meta 50 | 51 | # Unity3D generated file on crash reports 52 | sysinfo.txt 53 | 54 | # Builds 55 | *.apk 56 | *.unitypackage 57 | 58 | # Crashlytics generated file 59 | crashlytics-build.properties 60 | 61 | -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 682b65ef76ffb91429476ae8cd6f2ad0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty/ReorderableList.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 46e9c3fc8d8981040b1f7f7cdf4b8014 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty/ReorderableList/.gitignore: -------------------------------------------------------------------------------- 1 | /[Ll]ibrary/ 2 | /[Tt]emp/ 3 | /[Oo]bj/ 4 | /[Bb]uild/ 5 | /[Bb]uilds/ 6 | /Assets/AssetStoreTools* 7 | 8 | # Autogenerated VS/MD solution and project files 9 | ExportedObj/ 10 | *.csproj 11 | *.unityproj 12 | *.sln 13 | *.suo 14 | *.tmp 15 | *.user 16 | *.userprefs 17 | *.pidb 18 | *.booproj 19 | *.svd 20 | 21 | # Unity3D generated meta files 22 | *.pidb.meta 23 | *.meta 24 | 25 | # Unity3D Generated File On Crash Reports 26 | sysinfo.txt 27 | 28 | # Builds 29 | *.apk 30 | *.unitypackage 31 | -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty/ReorderableList/EditScriptableAttribute.cs: -------------------------------------------------------------------------------- 1 | /*MIT License 2 | 3 | Copyright(c) 2017 Jeiel Aranal 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE.*/ 22 | 23 | using UnityEngine; 24 | 25 | namespace SubjectNerd.Utilities 26 | { 27 | /// 28 | /// Display a ScriptableObject field with an inline editor 29 | /// 30 | public class EditScriptableAttribute : PropertyAttribute 31 | { 32 | 33 | } 34 | } -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty/ReorderableList/LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Jeiel Aranal 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty/ReorderableList/repo-url.txt: -------------------------------------------------------------------------------- 1 | https://github.com/SubjectNerd-Unity/ReorderableInspector -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty/SceneReference.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 920fb1600cdddfa48acfd14b01a5fb09 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty/SceneReference/SceneReference.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9a08e64720b233841b3ea59d78fb7e5b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty/SceneReference/SceneReferenceTest.cs: -------------------------------------------------------------------------------- 1 | using UnityEngine; 2 | 3 | public class SceneReferenceTest : MonoBehaviour 4 | { 5 | private void OnGUI() 6 | { 7 | DisplayLevel(exampleNull); 8 | DisplayLevel(exampleMissing); 9 | DisplayLevel(exampleDisabled); 10 | DisplayLevel(exampleEnabled); 11 | } 12 | 13 | public void DisplayLevel(SceneReference scene) 14 | { 15 | GUILayout.Label(new GUIContent("Scene name Path: " + scene)); 16 | if (GUILayout.Button("Load " + scene)) 17 | { 18 | UnityEngine.SceneManagement.SceneManager.LoadScene(scene); 19 | } 20 | } 21 | 22 | public SceneReference exampleNull; 23 | public SceneReference exampleMissing; 24 | public SceneReference exampleDisabled; 25 | public SceneReference exampleEnabled; 26 | 27 | } 28 | -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty/SceneReference/SceneReferenceTest.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0b12a4a0b54cb2d469d57e4c9c9b94ad 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty/SceneReference/UnitySceneReference.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "UnitySceneReference" 3 | } 4 | -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty/SceneReference/UnitySceneReference.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 607e5fc428cee124e9280c8cd460767b 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty/SceneReference/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": {}, 3 | "description": "[Unity3D] A Reliable, user-friendly way to reference SceneAssets by script.", 4 | "displayName": "Unity Scene Reference", 5 | "name": "com.johannesmp.unityscenereference", 6 | "version": "1.1.0" 7 | } -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty/SceneReference/package.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9449127cbf0ad8049b3792356ad39931 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty/SceneReference/repo-url.txt: -------------------------------------------------------------------------------- 1 | https://github.com/starikcetin/unity-scene-reference -------------------------------------------------------------------------------- /EventsExample/Assets/3rdParty/SceneReference/repo-url.txt.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 24260107c904c5247b8cf93f3e9e4afd 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c45b66e338f79af40a27fdfe2d228d58 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Audio.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 998a200f4daf46b4b95d9c724b39fb06 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Audio/252083-spawn.ogg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Audio/252083-spawn.ogg -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Audio/252083-spawn.ogg.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1e2f2637a54d8254c9f36c98d62f2189 3 | AudioImporter: 4 | externalObjects: {} 5 | serializedVersion: 6 6 | defaultSettings: 7 | loadType: 0 8 | sampleRateSetting: 0 9 | sampleRateOverride: 44100 10 | compressionFormat: 0 11 | quality: 1 12 | conversionMode: 0 13 | platformSettingOverrides: 14 | 4: 15 | loadType: 0 16 | sampleRateSetting: 0 17 | sampleRateOverride: 44100 18 | compressionFormat: 3 19 | quality: 1 20 | conversionMode: 0 21 | 7: 22 | loadType: 0 23 | sampleRateSetting: 0 24 | sampleRateOverride: 44100 25 | compressionFormat: 1 26 | quality: 1 27 | conversionMode: 0 28 | forceToMono: 0 29 | normalize: 1 30 | preloadAudioData: 1 31 | loadInBackground: 0 32 | ambisonic: 0 33 | 3D: 1 34 | userData: 35 | assetBundleName: 36 | assetBundleVariant: 37 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Audio/462363-explode-firecracker.mp3: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Audio/462363-explode-firecracker.mp3 -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Audio/462363-explode-firecracker.mp3.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5cc800ab0b36cab4583f9e990ead570a 3 | AudioImporter: 4 | externalObjects: {} 5 | serializedVersion: 6 6 | defaultSettings: 7 | loadType: 0 8 | sampleRateSetting: 0 9 | sampleRateOverride: 44100 10 | compressionFormat: 0 11 | quality: 1 12 | conversionMode: 0 13 | platformSettingOverrides: 14 | 4: 15 | loadType: 0 16 | sampleRateSetting: 0 17 | sampleRateOverride: 44100 18 | compressionFormat: 3 19 | quality: 1 20 | conversionMode: 0 21 | 7: 22 | loadType: 0 23 | sampleRateSetting: 0 24 | sampleRateOverride: 44100 25 | compressionFormat: 1 26 | quality: 1 27 | conversionMode: 0 28 | forceToMono: 0 29 | normalize: 1 30 | preloadAudioData: 1 31 | loadInBackground: 0 32 | ambisonic: 0 33 | 3D: 1 34 | userData: 35 | assetBundleName: 36 | assetBundleVariant: 37 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Audio/licenses.txt: -------------------------------------------------------------------------------- 1 | 2 | Creative Commons Zero: 3 | https://creativecommons.org/publicdomain/zero/1.0/ 4 | 5 | 462363__keng-wai-chane-chick-te__explode-firecracker.wav 6 | https://freesound.org/people/keng-wai-chane-chick-te/sounds/462363/ 7 | 8 | 252083__pepingrillin__spawn.ogg 9 | https://freesound.org/people/pepingrillin/sounds/252083/ -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Audio/licenses.txt.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2fe50fc20c1c960499cbe293f49ecfcd 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aa0c7c66cf0b95e438ba375c5bce5a61 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8a7a78601bd9c8c4491a0bd6163d93b7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d55d5882cc8028a459a0a5793070b388 3 | folderAsset: yes 4 | timeCreated: 1473950888 5 | licenseType: Store 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Materials/Embers_LWRP.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 776677ab3818fb249adaca05f4e04545 3 | timeCreated: 1471532950 4 | licenseType: Store 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Materials/EnergyExplosion_LWRP.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 909ec0c0188f79d4e8881ade27dae351 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Materials/EnergyShockwave_LWRP.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9d94a118a757d8b4c86adaa0312d7a05 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Prefabs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: af557a47dae08a94cb2839384fe7ac98 3 | folderAsset: yes 4 | timeCreated: 1473950888 5 | licenseType: Store 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Prefabs/EnergyExplosion.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9bba9cf244c53c5439505dfc96fdd11c 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 100100000 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b570582a843ea1143a2446d355eda99b 3 | folderAsset: yes 4 | timeCreated: 1473950888 5 | licenseType: Store 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures/Debris.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures/Debris.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures/EnergyEffect.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures/EnergyEffect.tif -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures/Ramp03.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures/Ramp03.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures/RoundSoftParticle.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures/RoundSoftParticle.tif -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures/RoundSoftParticle.tif.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 82c211cd7b28abb4a9e4ee77e8bd1b03 3 | timeCreated: 1473078551 4 | licenseType: Store 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 4 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | sRGBTexture: 1 12 | linearTexture: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: 0.25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 6 25 | cubemapConvolution: 0 26 | seamlessCubemap: 0 27 | textureFormat: 1 28 | maxTextureSize: 2048 29 | textureSettings: 30 | filterMode: -1 31 | aniso: -1 32 | mipBias: -1 33 | wrapMode: -1 34 | nPOTScale: 1 35 | lightmap: 0 36 | compressionQuality: 50 37 | spriteMode: 0 38 | spriteExtrude: 1 39 | spriteMeshType: 1 40 | alignment: 0 41 | spritePivot: {x: 0.5, y: 0.5} 42 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 43 | spritePixelsToUnits: 100 44 | alphaUsage: 1 45 | alphaIsTransparency: 0 46 | spriteTessellationDetail: -1 47 | textureType: 0 48 | textureShape: 1 49 | maxTextureSizeSet: 0 50 | compressionQualitySet: 0 51 | textureFormatSet: 0 52 | platformSettings: 53 | - buildTarget: DefaultTexturePlatform 54 | maxTextureSize: 2048 55 | textureFormat: -1 56 | textureCompression: 1 57 | compressionQuality: 50 58 | crunchedCompression: 0 59 | allowsAlphaSplitting: 0 60 | overridden: 0 61 | spriteSheet: 62 | serializedVersion: 2 63 | sprites: [] 64 | outline: [] 65 | spritePackingTag: 66 | userData: 67 | assetBundleName: 68 | assetBundleVariant: 69 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures/SphereNormal.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures/SphereNormal.tif -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures/ramp01.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures/ramp01.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures/shockwave.tif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Effects/Fire & Explosion Effects/Textures/shockwave.tif -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d0234ba368eeec9418390da711bfdad0 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Materials/GroundMaterial.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cd487586dcd32444db16d35cd7cb3f02 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Materials/Skybox_Mat.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0ffaa0b7117ba8c47a9d05ae701d4b4d 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a7669944673212f4faa8ccb5c2c7bfa7 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5885822f333cc10429427e414a0fe809 3 | folderAsset: yes 4 | timeCreated: 1449949836 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/License.txt: -------------------------------------------------------------------------------- 1 | 2 | 3 | Blocky Characters (+ 8 skins) 4 | 5 | by Kenney Vleugels (Kenney.nl) 6 | and Casper Jorissen (Kenney.nl) 7 | 8 | ------------------------------ 9 | 10 | License (Creative Commons Zero, CC0) 11 | http://creativecommons.org/publicdomain/zero/1.0/ 12 | 13 | You may use these assets in personal and commercial projects. 14 | Credit (Kenney or www.kenney.nl) would be nice but is not mandatory. 15 | 16 | ------------------------------ 17 | 18 | Donate: http://support.kenney.nl 19 | Request: http://request.kenney.nl 20 | 21 | Follow on Twitter for updates: 22 | @KenneyWings -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/License.txt.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0d092b31c118b394d9a6177fe6f340bd 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aa479db044e72f347b1cd5807b3111c5 3 | folderAsset: yes 4 | timeCreated: 1449949846 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c3d79dd8323971941a28bc3afabeac41 3 | folderAsset: yes 4 | timeCreated: 1449949857 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_adventurer.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5a93608b3e08a0f43b28b75f42ad8e06 3 | timeCreated: 1449950061 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_adventurer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_adventurer.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_adventurer.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: da80eeb08afc2d44393ca0c3ccb450ef 3 | timeCreated: 1449950060 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_man.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8beec0b0169cc9a459e8012a8cb16edc 3 | timeCreated: 1449950061 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_man.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_man.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_man.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7a362ccd7f7207a43a886cc38bd0dc88 3 | timeCreated: 1449950055 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_manAlternative.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e74499fe3dcb6214a9940679f94cf087 3 | timeCreated: 1449950061 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_manAlternative.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_manAlternative.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_manAlternative.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c14560c1a9ee75549b75cf9bf07d4a9e 3 | timeCreated: 1449950058 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_orc.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c6813dda0c64cb34f8e4a9f4caf00c86 3 | timeCreated: 1449950061 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_orc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_orc.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_orc.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1ae6227564e7ab247b098b123ca30461 3 | timeCreated: 1449950050 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_robot.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0539cb79729d97f439f8eef69eeff41a 3 | timeCreated: 1449950061 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_robot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_robot.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_robot.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 14dc97ae143d5254cbdd1566ecade7fd 3 | timeCreated: 1449950049 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_soldier.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 032ce1fbf28bb5c4aad37d379b23abd3 3 | timeCreated: 1449950061 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_soldier.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_soldier.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_soldier.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5b175598215bfd44180be04c79b3fafc 3 | timeCreated: 1449950053 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_woman.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 78ca43db30d83f548b74cbf3dfb1e8aa 3 | timeCreated: 1449950061 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_woman.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_woman.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_woman.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 24a71f68df099a74f8c50948043d7ff5 3 | timeCreated: 1449950051 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_womanAlternative.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d78ae75865bb57b4e84724e915e80669 3 | timeCreated: 1449950061 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_womanAlternative.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_womanAlternative.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Advanced/skin_womanAlternative.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6e3d5aa2d42bdd54ca9043176eb6da78 3 | timeCreated: 1449950055 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d36961f6beacf1043b7b3758c26a7e2d 3 | folderAsset: yes 4 | timeCreated: 1449949853 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_adventurer.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cfca275426dce754aaeb7d89544cd7ae 3 | timeCreated: 1449950061 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_adventurer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_adventurer.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_adventurer.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b192ea00f2d79114b888108dfa9c9e68 3 | timeCreated: 1449950056 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_man.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f972cac09446cf14abe36b7956dd8ecd 3 | timeCreated: 1449950062 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_man.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_man.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_man.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d07088bf6dc03be4bb744298b1bdb839 3 | timeCreated: 1449950058 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_manAlternative.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b0e47c82acf5c6844b52ebd74f075ae0 3 | timeCreated: 1449950061 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_manAlternative.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_manAlternative.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_manAlternative.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b9cc9c84c75afb54686bd42963d567e4 3 | timeCreated: 1449950057 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_orc.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b73e1e46d6b90f54ba3ba1faa9550585 3 | timeCreated: 1449950061 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_orc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_orc.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_orc.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fa21043c1176c6649ae6b7e73665eda3 3 | timeCreated: 1449950060 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_robot.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c8f007ec1b937fb4d9a0ef753dbe8f97 3 | timeCreated: 1449950061 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_robot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_robot.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_robot.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d47330ede03b664488639eea85348651 3 | timeCreated: 1449950059 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_soldier.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 599a57b974e2a374cb049383448d1635 3 | timeCreated: 1449950061 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_soldier.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_soldier.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_soldier.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4981c6928ed27c6489fd2302c9a6154b 3 | timeCreated: 1449950053 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_woman.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 67f2925d5abf95c43ae572b03be8eb24 3 | timeCreated: 1449950061 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_woman.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_woman.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_woman.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7f2ea1c5ae1faef44ae080e742a75169 3 | timeCreated: 1449950056 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_womanAlternative.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 96762f0005604c94bb01dd8f530b53fb 3 | timeCreated: 1449950061 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_womanAlternative.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_womanAlternative.png -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Material/Basic/skin_womanAlternative.png.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 416d50f732c69834eb645990200d5a19 3 | timeCreated: 1449950052 4 | licenseType: Free 5 | TextureImporter: 6 | fileIDToRecycleName: {} 7 | serializedVersion: 2 8 | mipmaps: 9 | mipMapMode: 0 10 | enableMipMap: 1 11 | linearTexture: 0 12 | correctGamma: 0 13 | fadeOut: 0 14 | borderMipMap: 0 15 | mipMapFadeDistanceStart: 1 16 | mipMapFadeDistanceEnd: 3 17 | bumpmap: 18 | convertToNormalMap: 0 19 | externalNormalMap: 0 20 | heightScale: .25 21 | normalMapFilter: 0 22 | isReadable: 0 23 | grayScaleToAlpha: 0 24 | generateCubemap: 0 25 | cubemapConvolution: 0 26 | cubemapConvolutionSteps: 8 27 | cubemapConvolutionExponent: 1.5 28 | seamlessCubemap: 0 29 | textureFormat: -1 30 | maxTextureSize: 2048 31 | textureSettings: 32 | filterMode: -1 33 | aniso: -1 34 | mipBias: -1 35 | wrapMode: -1 36 | nPOTScale: 1 37 | lightmap: 0 38 | rGBM: 0 39 | compressionQuality: 50 40 | spriteMode: 0 41 | spriteExtrude: 1 42 | spriteMeshType: 1 43 | alignment: 0 44 | spritePivot: {x: .5, y: .5} 45 | spriteBorder: {x: 0, y: 0, z: 0, w: 0} 46 | spritePixelsToUnits: 100 47 | alphaIsTransparency: 0 48 | textureType: -1 49 | buildTargetSettings: [] 50 | spriteSheet: 51 | sprites: [] 52 | spritePackingTag: 53 | userData: 54 | assetBundleName: 55 | assetBundleVariant: 56 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Model.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ed84e38172e85a749becdcc1a6bb0a0c 3 | folderAsset: yes 4 | timeCreated: 1449949841 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Model/Materials.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4f010d013e9fb9448b4ce911e60c2e0e 3 | folderAsset: yes 4 | timeCreated: 1449950062 5 | licenseType: Free 6 | DefaultImporter: 7 | userData: 8 | assetBundleName: 9 | assetBundleVariant: 10 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Model/Materials/lambert.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 125660309d12757448c14ab7408a879f 3 | timeCreated: 1449950062 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Model/Materials/lambert1.mat.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 604f55c42b18cfb43ad964b7556affd5 3 | timeCreated: 1462449474 4 | licenseType: Free 5 | NativeFormatImporter: 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Model/advancedCharacter.fbx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Model/advancedCharacter.fbx -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Models/Character Model/Model/basicCharacter.fbx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/Game.Content/Models/Character Model/Model/basicCharacter.fbx -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Prefabs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 831aa0dfd1fb65e49a454a868db62bdd 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Prefabs/Adventurer.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 57e0766ed85d2e949af9e53bb6ab3273 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Prefabs/Audio.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1 &156057489078999790 4 | GameObject: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | serializedVersion: 6 10 | m_Component: 11 | - component: {fileID: 156057489078999784} 12 | - component: {fileID: 156057489078999785} 13 | m_Layer: 0 14 | m_Name: Audio 15 | m_TagString: Untagged 16 | m_Icon: {fileID: 0} 17 | m_NavMeshLayer: 0 18 | m_StaticEditorFlags: 4294967295 19 | m_IsActive: 1 20 | --- !u!4 &156057489078999784 21 | Transform: 22 | m_ObjectHideFlags: 0 23 | m_CorrespondingSourceObject: {fileID: 0} 24 | m_PrefabInstance: {fileID: 0} 25 | m_PrefabAsset: {fileID: 0} 26 | m_GameObject: {fileID: 156057489078999790} 27 | m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} 28 | m_LocalPosition: {x: 0, y: 0, z: 0} 29 | m_LocalScale: {x: 1, y: 1, z: 1} 30 | m_Children: [] 31 | m_Father: {fileID: 0} 32 | m_RootOrder: 0 33 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 34 | --- !u!114 &156057489078999785 35 | MonoBehaviour: 36 | m_ObjectHideFlags: 0 37 | m_CorrespondingSourceObject: {fileID: 0} 38 | m_PrefabInstance: {fileID: 0} 39 | m_PrefabAsset: {fileID: 0} 40 | m_GameObject: {fileID: 156057489078999790} 41 | m_Enabled: 1 42 | m_EditorHideFlags: 0 43 | m_Script: {fileID: 11500000, guid: 9ac38c0fce30f754bb0fd51a0d0f0542, type: 3} 44 | m_Name: 45 | m_EditorClassIdentifier: 46 | EventSource: {fileID: 0} 47 | Clips: 48 | - Category: 1 49 | Clip: {fileID: 8300000, guid: 5cc800ab0b36cab4583f9e990ead570a, type: 3} 50 | - Category: 3 51 | Clip: {fileID: 8300000, guid: 1e2f2637a54d8254c9f36c98d62f2189, type: 3} 52 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Prefabs/Audio.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5f2cb1306f545054fbe09b70f9b8d220 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Prefabs/Cube.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 43771e8b8c920614db71dc191fdee2ae 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Prefabs/Effects.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 198471b85d156834b912f2b7df108ee4 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Prefabs/Ground.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 700a3e0b2ace463449f8d646076db9b4 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Prefabs/InGameInterface.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 57d3119c6034ebf48ae53f5682fec21a 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Prefabs/Scenes.prefab: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!1 &4392023828103392510 4 | GameObject: 5 | m_ObjectHideFlags: 0 6 | m_CorrespondingSourceObject: {fileID: 0} 7 | m_PrefabInstance: {fileID: 0} 8 | m_PrefabAsset: {fileID: 0} 9 | serializedVersion: 6 10 | m_Component: 11 | - component: {fileID: 4392023828103392511} 12 | - component: {fileID: 4392023828103392508} 13 | m_Layer: 0 14 | m_Name: Scenes 15 | m_TagString: Untagged 16 | m_Icon: {fileID: 0} 17 | m_NavMeshLayer: 0 18 | m_StaticEditorFlags: 4294967295 19 | m_IsActive: 1 20 | --- !u!4 &4392023828103392511 21 | Transform: 22 | m_ObjectHideFlags: 0 23 | m_CorrespondingSourceObject: {fileID: 0} 24 | m_PrefabInstance: {fileID: 0} 25 | m_PrefabAsset: {fileID: 0} 26 | m_GameObject: {fileID: 4392023828103392510} 27 | m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} 28 | m_LocalPosition: {x: 0, y: 0, z: 0} 29 | m_LocalScale: {x: 1, y: 1, z: 1} 30 | m_Children: [] 31 | m_Father: {fileID: 0} 32 | m_RootOrder: 0 33 | m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 34 | --- !u!114 &4392023828103392508 35 | MonoBehaviour: 36 | m_ObjectHideFlags: 0 37 | m_CorrespondingSourceObject: {fileID: 0} 38 | m_PrefabInstance: {fileID: 0} 39 | m_PrefabAsset: {fileID: 0} 40 | m_GameObject: {fileID: 4392023828103392510} 41 | m_Enabled: 1 42 | m_EditorHideFlags: 0 43 | m_Script: {fileID: 11500000, guid: d2b08534d68d3054d9a131aaa499c5b6, type: 3} 44 | m_Name: 45 | m_EditorClassIdentifier: 46 | StartScene: 1 47 | Scenes: 48 | - Id: 1 49 | Category: 2 50 | Asset: 51 | sceneAsset: {fileID: 102900000, guid: a243d1a72a848014fab952271dbb8e20, type: 3} 52 | scenePath: Assets/Scenes/UI/MainMenu.unity 53 | - Id: 2 54 | Category: 1 55 | Asset: 56 | sceneAsset: {fileID: 102900000, guid: 406d8b9c8df19364e854fe4c839779c6, type: 3} 57 | scenePath: Assets/Scenes/Levels/Level_1.unity 58 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Prefabs/Scenes.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 295e81f3297c7354b805b5ab9013b6fb 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Content/Prefabs/Sphere.prefab.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8c2d92653141c7a47a41f44fa58c883b 3 | PrefabImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 02a3527b6b33a924e8ec66aa805ea717 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/AudioManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9ac38c0fce30f754bb0fd51a0d0f0542 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/BugFixes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1c443030af9a1f44aaba2396ac2eddb6 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/BugFixes/CopySkinnedEntityData.cs: -------------------------------------------------------------------------------- 1 | using Unity.Entities; 2 | using Unity.Rendering; 3 | 4 | // https://answers.unity.com/questions/1695108/boneindexoffset-error-with-usdz-model-and-ecs.html 5 | 6 | [UpdateInGroup(typeof(InitializationSystemGroup))] 7 | public class BugFixCopySkinnedEntityData : SystemBase 8 | { 9 | /* Suppresses the error: "ArgumentException: A component with type:BoneIndexOffset 10 | * has not been added to the entity.", until the Unity bug is fixed. */ 11 | 12 | protected override void OnCreate() 13 | { 14 | World.GetOrCreateSystem().Enabled = false; 15 | Enabled = false; 16 | World.DestroySystem(this); 17 | } 18 | 19 | protected override void OnUpdate() => throw new System.NotImplementedException(); 20 | } 21 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/BugFixes/CopySkinnedEntityData.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b8bf0ec067268d443acb01472bcd85c1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8750383d19e35014283ccf00346325c5 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/ActorDefinition.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | using Unity.Mathematics; 8 | 9 | namespace Assets.Scripts.Components 10 | { 11 | public enum ActorType 12 | { 13 | None = 0, 14 | Unit, 15 | Player, 16 | Environment, 17 | Lighting, 18 | Effect, 19 | Sound, 20 | } 21 | 22 | public enum ActorCategory 23 | { 24 | None = 0, 25 | Attacker, 26 | Defender, 27 | HumanPlayer, 28 | AIPlayer, 29 | } 30 | 31 | public enum ActorAssetId 32 | { 33 | None = 0, 34 | PlayerPawn, 35 | DefenderSphere, 36 | AttackerCube, 37 | Adventurer, 38 | } 39 | 40 | [Flags, Serializable] 41 | public enum ActorFlags 42 | { 43 | None = 0, 44 | AddTransformAsOffset = 1 << 0, 45 | Unused = 1 << 1 46 | } 47 | 48 | [GenerateAuthoringComponent] 49 | public struct ActorDefinition : IComponentData 50 | { 51 | public ActorAssetId AssetId; 52 | public ActorType ActorType; 53 | public ActorCategory Team; 54 | public ActorFlags Flags; 55 | } 56 | } -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/ActorDefinition.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3d48e6481166ab844b17f39f6319e386 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/BrainState.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Scripts.Components 9 | { 10 | [Flags, Serializable] 11 | public enum BrainFlags 12 | { 13 | None = 0, 14 | Alerted = 1 << 0, 15 | Depressed = 1 << 1, 16 | Disabled = 1 << 2, 17 | } 18 | 19 | public enum BrainActivity 20 | { 21 | None = 0, 22 | Idle, 23 | InPursuit, 24 | Wandering, 25 | Searching, 26 | } 27 | 28 | [GenerateAuthoringComponent] 29 | public struct BrainState : IComponentData 30 | { 31 | public BrainActivity Activity; 32 | public BrainFlags Flags; 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/BrainState.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c17d505ed4365b742b96e94fb1b887fa 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/CollisionDetector.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Scripts.Components 9 | { 10 | [GenerateAuthoringComponent] 11 | public struct CollisionDetector : IComponentData 12 | { 13 | public float Range; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/CollisionDetector.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fc516e6a55d405946b6e781b09369c25 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 68db4aee5535d2146859c5bc78bc3209 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/ActorCreatedEvent.cs: -------------------------------------------------------------------------------- 1 | using Assets.Scripts.Components; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using Unity.Entities; 8 | 9 | namespace Assets.Game.Scripts.Components.Events 10 | { 11 | public struct ActorCreatedEvent : IComponentData 12 | { 13 | public ActorAssetId AssetId; 14 | } 15 | } -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/ActorCreatedEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3f4950d63018570418d3ef3a734e120f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/AttackerDeathEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | using Unity.Mathematics; 8 | 9 | namespace Assets.Scripts.Components.Events 10 | { 11 | public struct ActorDeathEvent : IComponentData 12 | { 13 | public ActorDefinition Definition; 14 | 15 | public OwnerRef AttributedTo; 16 | 17 | public float3 DeathPosition; 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/AttackerDeathEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 79a143ea3ee84be4f98bc30540b23b54 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/CollisionEvent.cs: -------------------------------------------------------------------------------- 1 | using Assets.Scripts.Systems; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using Unity.Entities; 8 | 9 | namespace Assets.Scripts.Components.Events 10 | { 11 | public struct CollisionEvent : IComponentData 12 | { 13 | public DetectorInfo Source; 14 | public Hit Hit; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/CollisionEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1f9bcf2ae8f7d5a479cbf926402028d5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/PlaySoundEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | using Unity.Mathematics; 8 | 9 | namespace Assets.Scripts.Components.Events 10 | { 11 | public enum SoundCategory 12 | { 13 | None = 0, 14 | Collision, 15 | ScoreGained, 16 | Spawn, 17 | } 18 | 19 | public struct PlayAudioEvent : IComponentData 20 | { 21 | internal float3 SpawnPosition; 22 | internal Entity AssociatedEntity; 23 | internal SoundCategory Sound; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/PlaySoundEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: dddf75832f4ddcc469fa739bffb1e030 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/PlayerCreatedEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Scripts.Components.Events 9 | { 10 | public struct PlayerCreatedEvent : IComponentData 11 | { 12 | public int Id; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/PlayerCreatedEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 40b7689f1f9a7cd41a8199066a499238 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/ScoreUpdatedEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Scripts.Components.Events 9 | { 10 | public enum ScoreUpdateType 11 | { 12 | None = 0, 13 | AttackerDeath 14 | } 15 | 16 | public struct ScoreUpdatedEvent : IComponentData 17 | { 18 | public ScoreUpdateType Type; 19 | public int CurrentScore; 20 | public int ChangedAmount; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/ScoreUpdatedEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3d763938970ef064db60e0f38df8b1e5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/SpawnActorEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Scripts.Components.Events 9 | { 10 | public struct SpawnActorEvent : IComponentData 11 | { 12 | public int Amount; 13 | public ActorCategory Catetory; 14 | public int OwnerId; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/SpawnActorEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d892cdfa7bb8f8645befca9f90e57fed 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/SpawnEffectEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | using Unity.Mathematics; 8 | 9 | namespace Assets.Scripts.Components.Events 10 | { 11 | public enum EffectCategory 12 | { 13 | None = 0, 14 | Collision, 15 | ScoreGained, 16 | Spawn, 17 | } 18 | 19 | public struct SpawnEffectEvent : IComponentData 20 | { 21 | public float3 SpawnPosition; 22 | public Entity AssociatedEntity; 23 | public EffectCategory Category; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/SpawnEffectEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 36b071f01d2229e4e80c1e6eb69812c4 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/SpawnPlayerEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Scripts.Components.Events 9 | { 10 | public struct SpawnPlayerEvent : IComponentData 11 | { 12 | public int InputPlayerId; 13 | public ActorCategory Category; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/SpawnPlayerEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bf87c8ffb8ddf2a478d6bcbab2722f4b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/TargetAcquiredEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | using Unity.Mathematics; 8 | 9 | namespace Assets.Scripts.Components.Events 10 | { 11 | public struct TargetAcquiredEvent : IComponentData 12 | { 13 | public Entity Source; 14 | public float3 SourcePosition; 15 | public Entity Target; 16 | public float3 TargetPosition; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Events/TargetAcquiredEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2f5ef0abac843a84b82a1a55227e9ea7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/MovementInfo.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Scripts.Components 9 | { 10 | [Flags, Serializable] 11 | public enum MovementFlags 12 | { 13 | None = 0, 14 | Flying = 1 << 0, 15 | Charges = 1 << 1, 16 | } 17 | 18 | [GenerateAuthoringComponent] 19 | public struct MovementInfo : IComponentData 20 | { 21 | public float Speed; 22 | public MovementFlags Flags; 23 | } 24 | } -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/MovementInfo.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4a25cbc04ec2cca45b8db23249f28954 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/MovementTarget.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | using Unity.Mathematics; 8 | 9 | namespace Assets.Scripts.Components 10 | { 11 | public struct MovementTarget : IComponentData 12 | { 13 | public Entity Entity; 14 | public float3 Position; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/MovementTarget.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 158d035562c0b6944a75eb94363be4b3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/OwnerRef.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Scripts.Components 9 | { 10 | public struct OwnerRef : IComponentData 11 | { 12 | public int Id; 13 | public Entity Entity; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/OwnerRef.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: db41d3e96f2ca1a49b2c1945025378e6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/PlayerInput.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | using Unity.Mathematics; 8 | 9 | namespace Assets.Scripts.Components 10 | { 11 | public struct PlayerInput : IComponentData 12 | { 13 | public float3 PointerPosition; 14 | public int InputPlayerId; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/PlayerInput.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: cdca033696f70984dae68c413ef0a999 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/PlayerSession.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Scripts.Components 9 | { 10 | public struct PlayerSession : IComponentData 11 | { 12 | public int PlayerId; 13 | public int Score; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/PlayerSession.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0ed872cd120581c429160d6d7ed6cb0c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Scene.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c6e829a3d30c2454a8a2f4e1eb0befd8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Scene/RequestSceneLoadEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Game.Scripts.Components.Events 9 | { 10 | public struct RequestSceneLoadEvent : IComponentData 11 | { 12 | public SceneId Id; 13 | } 14 | } -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Scene/RequestSceneLoadEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5f1b358590d91904da52b000b2050fe3 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Scene/RequestSceneUnloadEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Game.Scripts.Components.Events 9 | { 10 | public struct RequestSceneUnloadEvent : IComponentData 11 | { 12 | public SceneId Id; 13 | public SceneId ThenLoad; 14 | } 15 | } -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Scene/RequestSceneUnloadEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d2c6f0ef57933654292fd935025e14f9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Scene/SceneLoadedEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Game.Scripts.Components.Events 9 | { 10 | public enum SceneCategory 11 | { 12 | None = 0, 13 | Level, 14 | Menu, 15 | } 16 | 17 | public struct SceneLoadedEvent : IComponentData 18 | { 19 | public SceneId Id; 20 | public SceneCategory SceneCategory; 21 | public Entity ProgressEntity; 22 | } 23 | } -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Scene/SceneLoadedEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 80c5e53f007cc3b4f80e8642feabed97 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Scene/SceneLoadingProgress.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Game.Scripts.Components 9 | { 10 | public struct SceneLoadingProgress : IComponentData 11 | { 12 | public SceneId Id; 13 | public float PercentComplete; 14 | } 15 | } -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Scene/SceneLoadingProgress.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 64253def9b7edfe46b0adebca641c9a8 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Scene/SceneUnloadedEvent.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Game.Scripts.Components.Events 9 | { 10 | public struct SceneUnloadedEvent : IComponentData 11 | { 12 | public SceneId Id; 13 | public SceneCategory Category; 14 | public Entity ProgressEntity; 15 | } 16 | } -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Scene/SceneUnloadedEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 935f5422ef6917448a8e3a0063db5dbc 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Scene/SceneUnloadingProgress.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Game.Scripts.Components 9 | { 10 | public struct SceneUnloadingProgress : IComponentData 11 | { 12 | public SceneId Id; 13 | public float PercentComplete; 14 | } 15 | } -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Scene/SceneUnloadingProgress.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9b7b1db350f990b4a98ff639f975fd76 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Tags.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d91f05cb964b9d44b90445d71123fd5f 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Tags/AIPlayerTag.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Game.Scripts.Components.Tags 9 | { 10 | public struct AIPlayerTag : IComponentData 11 | { 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Tags/AIPlayerTag.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4c088cb6510033e438b1a7eb57847573 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Tags/AttackerTag.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Scripts.Components.Tags 9 | { 10 | public struct AttackerTag : IComponentData { } 11 | } 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Tags/AttackerTag.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8efad8b227cfffb42be2e323da5a0f23 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Tags/DefenderTag.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Scripts.Components.Tags 9 | { 10 | public struct DefenderTag : IComponentData { } 11 | } -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Tags/DefenderTag.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 47444d0a2fd9f71409d3f7b0cead56f0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Tags/PlayerTag.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Scripts.Components.Tags 9 | { 10 | public struct PlayerTag : IComponentData { } 11 | } 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Tags/PlayerTag.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 298dbccdfbe4ef0448a96819e7f90eef 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Tags/UninitializedTag.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Scripts.Components.Tags 9 | { 10 | public struct UninitializedTag : IComponentData { } 11 | } 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Tags/UninitializedTag.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 11cc687cdafa748479bd8bcfda2fa20c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Tags/UnprocessedTag.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Scripts.Components.Tags 9 | { 10 | public struct UnprocessedTag : IComponentData { } 11 | } 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/Tags/UnprocessedTag.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6bb5c2a53f8f3c54cb16aec4e37f2295 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/VisionInfo.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Entities; 7 | 8 | namespace Assets.Scripts.Components 9 | { 10 | [Flags, Serializable] 11 | public enum VisionFlags 12 | { 13 | None = 0, 14 | Blinded = 1 << 0, 15 | Perceptive = 1 << 0, 16 | } 17 | 18 | [GenerateAuthoringComponent] 19 | public struct VisionInfo : IComponentData 20 | { 21 | public float Distance; 22 | public float ArcDegrees; 23 | public VisionFlags Flags; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Components/VisionInfo.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 66c56f8b7b0315a419d3c0c5396fc9c1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Effects.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4e01977dc53bd9145af90f8e699bc9f1 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Effects/ParticleEffect.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 28854d829a4d90441ac01520d3c38ef2 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Effects/ParticleEffectCollection.cs: -------------------------------------------------------------------------------- 1 | using Assets.Scripts.Components.Events; 2 | using SubjectNerd.Utilities; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Linq; 6 | using UnityEngine; 7 | 8 | namespace Assets.Game.Scripts.Effects 9 | { 10 | public class ParticleEffectCollection : MonoBehaviour 11 | { 12 | [Serializable] 13 | public struct EffectEntry 14 | { 15 | public EffectCategory Category; 16 | public ParticleEffect Effect; 17 | } 18 | 19 | [Reorderable] 20 | public List Effects = new List(); 21 | public ILookup ByCategory; 22 | 23 | private void Start() 24 | { 25 | ByCategory = Effects.ToLookup(k => k.Category, v => v); 26 | } 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Effects/ParticleEffectCollection.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 36ff026093ec2f6429ca117c67575938 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Effects/ParticleEffectManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5009b8ad332901a40b7d8a5890314871 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Effects/ParticleEffectSpawner.cs: -------------------------------------------------------------------------------- 1 | using Assets.Scripts.Components.Events; 2 | using Assets.Scripts.UI; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using UnityEngine; 7 | 8 | namespace Assets.Game.Scripts.Effects 9 | { 10 | 11 | public class ParticleEffectSpawner : MonoBehaviour, IEventObserver 12 | { 13 | public EventRouter EventSource; 14 | public ParticleEffectManager Manager; 15 | public ParticleEffectCollection Effects; 16 | 17 | private void Start() 18 | { 19 | EventSource.AddListener(this); 20 | } 21 | 22 | public void OnEvent(SpawnEffectEvent e) 23 | { 24 | if(Effects.ByCategory.Contains(e.Category)) 25 | { 26 | var effects = Effects.ByCategory[e.Category]; 27 | var first = effects.FirstOrDefault(); 28 | Manager.Spawn(first.Effect, e.SpawnPosition); 29 | } 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Effects/ParticleEffectSpawner.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 80248e0ac04a05e4c8d491ba76a98218 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Extensions.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 46ac822ecf8b0c748958919bede92c02 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Extensions/DebugExtensions.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Diagnostics; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using Unity.Collections; 8 | using Unity.Entities; 9 | 10 | namespace Assets.Scripts.Extensions 11 | { 12 | public static class DebugExtensions 13 | { 14 | [Conditional("UNITY_EDITOR")] 15 | public static void TrimNameStart(this EntityManager em, NativeArray entities, string prefix) 16 | { 17 | for (int i = 0; i < entities.Length; i++) 18 | { 19 | TrimNameStart(em, entities[i], prefix); 20 | } 21 | } 22 | 23 | [Conditional("UNITY_EDITOR")] 24 | public static void TrimNameStart(this EntityManager em, Entity entity, string prefix) 25 | { 26 | em.SetName(entity, em.GetName(entity).TrimStart(prefix)); 27 | } 28 | 29 | [Conditional("UNITY_EDITOR")] 30 | public static void PrependName(this EntityManager em, NativeArray entities, string prefix) 31 | { 32 | for (int i = 0; i < entities.Length; i++) 33 | { 34 | PrependName(em, entities[i], prefix); 35 | } 36 | } 37 | 38 | [Conditional("UNITY_EDITOR")] 39 | public static void PrependName(this EntityManager em, Entity entity, string prefix) 40 | { 41 | var currentName = em.GetName(entity); 42 | if (!currentName.StartsWith(prefix)) 43 | { 44 | em.SetName(entity, prefix + em.GetName(entity)); 45 | } 46 | } 47 | } 48 | } 49 | 50 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Extensions/DebugExtensions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 970bc426f8239314082108bc4945ba40 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Extensions/StringExtensions.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | 7 | namespace Assets.Scripts.Extensions 8 | { 9 | public static class StringExtensions 10 | { 11 | public static string TrimStart(this string source, string value, StringComparison comparisonType = StringComparison.InvariantCultureIgnoreCase) 12 | { 13 | // #ref https://stackoverflow.com/questions/4335878/c-sharp-trimstart-with-string-parameter 14 | 15 | if (source == null) 16 | throw new ArgumentNullException(nameof(source)); 17 | 18 | int valueLength = value.Length; 19 | int startIndex = 0; 20 | 21 | while (source.IndexOf(value, startIndex, comparisonType) == startIndex) 22 | startIndex += valueLength; 23 | 24 | return source.Substring(startIndex); 25 | } 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Extensions/StringExtensions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 43f22bfa55591fb448770f6165359d91 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Providers.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c4384925c621f9049928f4b8006ecafe 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Providers/Players.cs: -------------------------------------------------------------------------------- 1 | using Assets.Scripts.Components; 2 | using Assets.Scripts.Support; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | using Unity.Collections; 9 | using Unity.Collections.LowLevel.Unsafe; 10 | using Unity.Entities; 11 | 12 | namespace Assets.Scripts.Providers 13 | { 14 | public struct PlayerRef 15 | { 16 | public int Id; 17 | public Entity Entity; 18 | } 19 | 20 | /// 21 | /// A burstable lookup for ; maintained by 22 | /// 23 | public struct Players : INativeProvider 24 | { 25 | private UnsafeMultiHashMap _playerById; 26 | 27 | public int Length { get; private set; } 28 | 29 | public void Allocate(SystemBase owner, Allocator allocator) 30 | { 31 | _playerById = new UnsafeMultiHashMap(1, allocator); 32 | } 33 | 34 | public void Add(PlayerRef player) 35 | { 36 | _playerById.Add(player.Id, player); 37 | Length++; 38 | } 39 | 40 | public bool TryGet(int playerId, out PlayerRef item) 41 | { 42 | return _playerById.TryGetFirstValue(playerId, out item, out var it); 43 | } 44 | 45 | public unsafe UnsafeEnumerator GetEnumerator() 46 | => new UnsafeEnumerator(_playerById.GetKeyValueArrays(Allocator.Temp)); 47 | 48 | public void Dispose() 49 | { 50 | _playerById.Dispose(); 51 | } 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Providers/Players.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 575d60c27a6e6514ba9490d6f3866ffd 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Providers/Prefabs.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 339d9018a1f887647b654261c0402301 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Providers/ProviderSystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fee5ef80cb3e5204ba3408d09729d2f5 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/SceneLoader.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d2b08534d68d3054d9a131aaa499c5b6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Support.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 745286c7af0e20147bdd27eb3ada2c34 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Support/EventRouter.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0fd07e7478fc1414e8eb2d0f87c697d9 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Support/ObjectPool.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b05c328317ff6fb409048670c96b5b4f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Support/PoolGroup.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: bdbe2c809342fbc4f8874d820ae5af43 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Support/SubscenePrefabConversion.cs: -------------------------------------------------------------------------------- 1 | using Assets.Scripts.Components; 2 | using Assets.Scripts.Components.Tags; 3 | using System; 4 | using System.Collections; 5 | using System.Collections.Generic; 6 | using Unity.Entities; 7 | using Unity.Transforms; 8 | using UnityEngine; 9 | 10 | public class SubscenePrefabConversion : MonoBehaviour, IConvertGameObjectToEntity 11 | { 12 | public bool StripTransform; 13 | public bool LinkChildren; 14 | public bool AddPrefabComponent; 15 | public bool AddUnprocessedTag; 16 | 17 | public void Convert(Entity entity, EntityManager dstManager, GameObjectConversionSystem conversionSystem) 18 | { 19 | var components = new List(); 20 | if (AddPrefabComponent) 21 | components.Add(ComponentType.ReadWrite()); 22 | if (AddUnprocessedTag) 23 | components.Add(ComponentType.ReadWrite()); 24 | 25 | if (StripTransform) 26 | { 27 | if(dstManager.HasComponent(entity)) 28 | dstManager.RemoveComponent(entity); 29 | if (dstManager.HasComponent(entity)) 30 | dstManager.RemoveComponent(entity); 31 | if (dstManager.HasComponent(entity)) 32 | dstManager.RemoveComponent(entity); 33 | if (dstManager.HasComponent(entity)) 34 | dstManager.RemoveComponent(entity); 35 | } 36 | 37 | foreach (var component in components) 38 | dstManager.AddComponent(entity, component); 39 | 40 | // A linked entity group allows child entities to be instanitated with their parent. 41 | if (LinkChildren) 42 | { 43 | conversionSystem.DeclareLinkedEntityGroup(gameObject); 44 | } 45 | } 46 | } 47 | 48 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Support/SubscenePrefabConversion.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 1f3a4769d87e1a14285dac265bcb604c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Support/UnsafeEnumerator.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 111e0c88d26e4eb48908d81843e3fc0d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 5ab62b17d5bfe0647af1112c82d3c917 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/EventDebugSystem.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.Linq; 4 | using System.Text; 5 | using System.Threading.Tasks; 6 | using Unity.Collections; 7 | using Unity.Entities; 8 | using Unity.Transforms; 9 | using UnityEngine; 10 | using Vella.Events; 11 | 12 | #if (UNITY_EDITOR && ENABLE_UNITY_COLLECTIONS_CHECKS) 13 | 14 | namespace Assets.Scripts.Systems 15 | { 16 | /// 17 | /// Adds friendly names to Events for easier viewing in the EntityDebugger 18 | /// 19 | [UpdateInGroup(typeof(InitializationSystemGroup))] 20 | public class EventDebugSystem : SystemBase 21 | { 22 | private EntityQuery _allEvents; 23 | 24 | protected override void OnUpdate() 25 | { 26 | Entities.ForEach((Entity entity, in EntityEvent eventInfo) => 27 | { 28 | var name = TypeManager.GetType(eventInfo.ComponentTypeIndex).Name; 29 | EntityManager.SetName(entity, $"{entity}, {name}: {eventInfo.Id}"); 30 | 31 | }).WithStructuralChanges().WithStoreEntityQueryInField(ref _allEvents).Run(); 32 | } 33 | } 34 | 35 | } 36 | 37 | #endif -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/EventDebugSystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b41f9f16a134aa14d93f183c24909d67 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/ExplodeOnCollisionSystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4993025c3d2d7f840a7562bb5cf429fa 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/LevelCreateSystem.cs: -------------------------------------------------------------------------------- 1 | using Assets.Game.Scripts.Components.Events; 2 | using Assets.Scripts.Components.Events; 3 | using System; 4 | using System.Collections.Generic; 5 | using System.Linq; 6 | using System.Text; 7 | using System.Threading.Tasks; 8 | using Unity.Entities; 9 | using Vella.Events; 10 | using Assets.Scripts.Components; 11 | 12 | namespace Assets.Game.Scripts.Systems 13 | { 14 | public class LevelCreateSystem : SystemBase 15 | { 16 | private EventQueue _spawnActorEvents; 17 | private EventQueue _spawnPlayerEvents; 18 | 19 | protected override void OnCreate() 20 | { 21 | var eventsystem = World.GetOrCreateSystem(); 22 | _spawnActorEvents = eventsystem.GetQueue(); 23 | _spawnPlayerEvents = eventsystem.GetQueue(); 24 | } 25 | 26 | protected override void OnUpdate() 27 | { 28 | var spawnPlayerEvents = _spawnPlayerEvents; 29 | 30 | Entities.ForEach((in SceneLoadedEvent e) => 31 | { 32 | if (e.SceneCategory != SceneCategory.Level) 33 | return; 34 | 35 | spawnPlayerEvents.Enqueue(new SpawnPlayerEvent 36 | { 37 | Category = ActorCategory.HumanPlayer 38 | }); 39 | 40 | }).Run(); 41 | 42 | var spawnActorEvents = _spawnActorEvents; 43 | 44 | Entities.ForEach((in PlayerCreatedEvent e) => 45 | { 46 | spawnActorEvents.Enqueue(new SpawnActorEvent 47 | { 48 | OwnerId = e.Id, 49 | Amount = 1, 50 | Catetory = ActorCategory.Defender 51 | }); 52 | 53 | }).Run(); 54 | } 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/LevelCreateSystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 766c51214a45aca4398d7d20187563af 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/LevelDestroySystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b08b6c244bf7fa043af4a4fc2a2d75fe 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/MovementSystem.cs: -------------------------------------------------------------------------------- 1 | using Assets.Scripts.Components; 2 | using System; 3 | using System.Collections.Generic; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | using Unity.Entities; 8 | using Unity.Mathematics; 9 | using Unity.Transforms; 10 | using UnityEngine; 11 | 12 | namespace Assets.Scripts.Systems 13 | { 14 | public class MovementSystem : SystemBase 15 | { 16 | private EndSimulationEntityCommandBufferSystem _commandSystem; 17 | 18 | protected override void OnCreate() 19 | { 20 | _commandSystem = World.GetOrCreateSystem(); 21 | } 22 | 23 | protected override void OnUpdate() 24 | { 25 | var delta = Time.DeltaTime; 26 | var commands = _commandSystem.CreateCommandBuffer().ToConcurrent(); 27 | 28 | Entities.ForEach((Entity entity, int nativeThreadIndex, ref MovementTarget target, in MovementInfo info) => 29 | { 30 | float3 origin = GetComponent(entity).Value; 31 | 32 | float3 destination = target.Entity != Entity.Null 33 | ? GetComponent(target.Entity).Value 34 | : target.Position; 35 | 36 | commands.SetComponent(nativeThreadIndex, entity, new Translation 37 | { 38 | Value = origin + math.normalize(destination - origin) * info.Speed * delta 39 | }); 40 | 41 | }).Schedule(); 42 | } 43 | 44 | } 45 | } -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/MovementSystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 746f758db8bd6e94b81574d2ed7f89dd 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/PlayerSessionSystem.cs: -------------------------------------------------------------------------------- 1 | using Assets.Scripts.Components; 2 | using Assets.Scripts.Components.Events; 3 | using Assets.Scripts.Components.Tags; 4 | using Assets.Scripts.Providers; 5 | using System; 6 | using System.Collections.Generic; 7 | using System.Linq; 8 | using System.Text; 9 | using System.Threading.Tasks; 10 | using Unity.Collections; 11 | using Unity.Entities; 12 | using Vella.Events; 13 | 14 | namespace Assets.Scripts.Systems 15 | { 16 | public class PlayerSessionSystem : SystemBase 17 | { 18 | private EventQueue _scoreUpdatedEvents; 19 | 20 | protected override void OnCreate() 21 | { 22 | _scoreUpdatedEvents = World.GetExistingSystem().GetQueue(); 23 | } 24 | 25 | protected override void OnUpdate() 26 | { 27 | var events = _scoreUpdatedEvents; 28 | 29 | Entities.ForEach((ref ActorDeathEvent e) => 30 | { 31 | if (e.Definition.Team == ActorCategory.Attacker) 32 | { 33 | var deathValue = 41; 34 | 35 | var session = GetComponent(e.AttributedTo.Entity); 36 | session.Score += deathValue; 37 | SetComponent(e.AttributedTo.Entity, session); 38 | 39 | events.Enqueue(new ScoreUpdatedEvent // todo pool into single event with buffer? 40 | { 41 | Type = ScoreUpdateType.AttackerDeath, 42 | ChangedAmount = deathValue, 43 | CurrentScore = session.Score 44 | }); 45 | } 46 | 47 | }).Run(); 48 | } 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/PlayerSessionSystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d1dafa4d88f868e4a8160ee413576e6b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/PrefabSystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 32be733dbe0253c42b4e85a1b051ec70 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/SimpleCollisionSystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: eb5eb69c6cce33245a121520d16f7305 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/SpawnAttackerSystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ad852585d4dcc1c49822ba2a489fbe53 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/SpawnDefenderSystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ab5c95cc98ebf4a4fa2d1915377faf4a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/SpawnPlayerSystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4b1ee55ed2a90f54da34b3c9949ce7ce 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/Systems/TargetFinderSystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8a82f63175a4e444d8113b3409da20c7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/UI.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9fe640c7dffc87c4e9b63cfd3c01c99a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/UI/UIActorSpawner.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 45fbb1a09ecf19f419b64d322e2096b6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/UI/UIMainMenu.cs: -------------------------------------------------------------------------------- 1 | using Assets.Game.Scripts; 2 | using Assets.Game.Scripts.Components.Events; 3 | using Assets.Scripts.Components; 4 | using Assets.Scripts.Components.Events; 5 | using Assets.Scripts.Systems; 6 | using System.Collections; 7 | using System.Collections.Generic; 8 | using Unity.Entities; 9 | using UnityEngine; 10 | using UnityEngine.UI; 11 | 12 | namespace Assets.Scripts.UI 13 | { 14 | public class UIMainMenu : MonoBehaviour 15 | { 16 | public EventRouter EventSource; 17 | 18 | public void StartGame() 19 | { 20 | EventSource.FireEvent(new RequestSceneUnloadEvent 21 | { 22 | Id = SceneId.MainMenu, 23 | ThenLoad = SceneId.Scene1 24 | }); 25 | } 26 | 27 | public void GoToMainMenu() 28 | { 29 | EventSource.FireEvent(new RequestSceneUnloadEvent 30 | { 31 | Id = SceneId.Scene1, 32 | ThenLoad = SceneId.MainMenu 33 | }); 34 | } 35 | 36 | } 37 | } -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/UI/UIMainMenu.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7affc59c74c9c114e8094f92906ffadf 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/UI/UIScoreUpdater.cs: -------------------------------------------------------------------------------- 1 | using Assets.Scripts.Components; 2 | using Assets.Scripts.Components.Events; 3 | using Assets.Scripts.Systems; 4 | using System.Collections; 5 | using System.Collections.Generic; 6 | using UnityEngine; 7 | using UnityEngine.UI; 8 | 9 | namespace Assets.Scripts.UI 10 | { 11 | public class UIScoreUpdater : MonoBehaviour, IEventObserver 12 | { 13 | public EventRouter EventSource; 14 | public Text ScoreText; 15 | 16 | private void Start() 17 | { 18 | EventSource.AddListener(this); 19 | } 20 | 21 | private void OnDestroy() 22 | { 23 | EventSource.RemoveListener(this); 24 | } 25 | 26 | public void OnEvent(ScoreUpdatedEvent e) 27 | { 28 | Debug.Log($"{nameof(ScoreUpdatedEvent)}! Score={e.CurrentScore} Change={e.ChangedAmount} Type={e.Type}"); 29 | 30 | ScoreText.text = e.CurrentScore.ToString(); 31 | } 32 | 33 | 34 | 35 | } 36 | 37 | } -------------------------------------------------------------------------------- /EventsExample/Assets/Game.Scripts/UI/UIScoreUpdater.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 179aca00dc66ee649ad5e4ed455f4f42 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Assets/Presets.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 558255460b74ec04fa70b5570e9327bd 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Presets/AudioCompressedInMemory.preset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2dd802e4d37c65149922028d3e973832 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Presets/AudioStreaming.preset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 86bcce7f5575b54408aa0f3a7d321039 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2655988077585873504 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Presets/Defaults.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 71ea82b02df99c2439e0dc8e4e1ebc24 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Presets/Defaults/AlbedoTexture_Default.preset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e8537455c6c08bd4e8bf0be3707da685 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2655988077585873504 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Presets/Defaults/AudioDecompressOnLoad.preset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e7689051185d12f4298e1ebb2693a29f 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Presets/Defaults/DirectionalLight_Default.preset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 463065d4f17d1d94d848aa127b94dd43 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2655988077585873504 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Presets/NormalTexture.preset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 14a57cf3b9fa1c74b884aa7e0dcf1faa 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2655988077585873504 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Presets/UtilityTexture.preset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 45f7b2e3c78185248b3adbb14429c2ab 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 2655988077585873504 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/SceneDependencyCache.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 34e22f794250fdc47b3b0f33d07e2463 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/SceneDependencyCache/186b0fee99acd5d5350ed7eda04a2dc0.sceneWithBuildSettings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/SceneDependencyCache/186b0fee99acd5d5350ed7eda04a2dc0.sceneWithBuildSettings -------------------------------------------------------------------------------- /EventsExample/Assets/SceneDependencyCache/186b0fee99acd5d5350ed7eda04a2dc0.sceneWithBuildSettings.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 186b0fee99acd5d5350ed7eda04a2dc0 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/SceneDependencyCache/30f1d870d6772c12f575828b85cf68f5.sceneWithBuildSettings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jeffvella/UnityEcsEvents.Example/3b17603f644de6d5ca773a9a109dcf841a1fd7f1/EventsExample/Assets/SceneDependencyCache/30f1d870d6772c12f575828b85cf68f5.sceneWithBuildSettings -------------------------------------------------------------------------------- /EventsExample/Assets/SceneDependencyCache/30f1d870d6772c12f575828b85cf68f5.sceneWithBuildSettings.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 30f1d870d6772c12f575828b85cf68f5 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Scenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8afb55e3b06a4c440ba3974856ffca8a 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Scenes/Levels.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8a9d87a818dca2245b5c75ea0cc74062 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Scenes/Levels/Level_1.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 406d8b9c8df19364e854fe4c839779c6 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Scenes/StartScene.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d1c3109bdb54ad54c8a2b2838528e640 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Scenes/SubScenes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2dab2430b79657f489bf9dbe10700e97 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Scenes/SubScenes/Prefabs.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b243e53d11be10c478acfdc841aaccdd 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: '{"DisableLiveLink":false}' 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Scenes/UI.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 2383136c5b44f9b49b04d83867424129 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Scenes/UI/InGameMenu.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9688e36712d4d264dbc4ea1cb920e17b 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Scenes/UI/MainMenu.unity.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a243d1a72a848014fab952271dbb8e20 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Assets/Settings.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 0735c275001a2c84dafdb30deced5d8d 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Settings/ForwardRenderer.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 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: 11500000, guid: de640fe3d0db1804a85f9fc8f5cadab6, type: 3} 13 | m_Name: ForwardRenderer 14 | m_EditorClassIdentifier: 15 | m_RendererFeatures: [] 16 | postProcessData: {fileID: 11400000, guid: 41439944d30ece34e96484bdb6645b55, type: 2} 17 | shaders: 18 | blitPS: {fileID: 4800000, guid: c17132b1f77d20942aa75f8429c0f8bc, type: 3} 19 | copyDepthPS: {fileID: 4800000, guid: d6dae50ee9e1bfa4db75f19f99355220, type: 3} 20 | screenSpaceShadowPS: {fileID: 4800000, guid: 0f854b35a0cf61a429bd5dcfea30eddd, 21 | type: 3} 22 | samplingPS: {fileID: 4800000, guid: 04c410c9937594faa893a11dceb85f7e, type: 3} 23 | fallbackErrorPS: {fileID: 4800000, guid: e6e9a19c3678ded42a3bc431ebef7dbd, type: 3} 24 | m_OpaqueLayerMask: 25 | serializedVersion: 2 26 | m_Bits: 4294967295 27 | m_TransparentLayerMask: 28 | serializedVersion: 2 29 | m_Bits: 4294967295 30 | m_DefaultStencilState: 31 | overrideStencilState: 0 32 | stencilReference: 0 33 | stencilCompareFunction: 8 34 | passOperation: 0 35 | failOperation: 0 36 | zFailOperation: 0 37 | -------------------------------------------------------------------------------- /EventsExample/Assets/Settings/ForwardRenderer.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 4a8e21d5c33334b11b34a596161b9360 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Settings/SampleSceneProfile.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 10fc4df2da32a41aaa32d77bc913491c 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Settings/UniversalRP-HighQuality.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 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: 11500000, guid: bf2edee5c58d82540a51f03df9d42094, type: 3} 13 | m_Name: UniversalRP-HighQuality 14 | m_EditorClassIdentifier: 15 | k_AssetVersion: 5 16 | k_AssetPreviousVersion: 5 17 | m_RendererType: 1 18 | m_RendererData: {fileID: 0} 19 | m_RendererDataList: 20 | - {fileID: 11400000, guid: 4a8e21d5c33334b11b34a596161b9360, type: 2} 21 | m_DefaultRendererIndex: 0 22 | m_RequireDepthTexture: 0 23 | m_RequireOpaqueTexture: 0 24 | m_OpaqueDownsampling: 1 25 | m_SupportsHDR: 1 26 | m_MSAA: 2 27 | m_RenderScale: 1 28 | m_MainLightRenderingMode: 1 29 | m_MainLightShadowsSupported: 1 30 | m_MainLightShadowmapResolution: 2048 31 | m_AdditionalLightsRenderingMode: 1 32 | m_AdditionalLightsPerObjectLimit: 4 33 | m_AdditionalLightShadowsSupported: 1 34 | m_AdditionalLightsShadowmapResolution: 512 35 | m_ShadowDistance: 50 36 | m_ShadowCascades: 1 37 | m_Cascade2Split: 0.25 38 | m_Cascade4Split: {x: 0.067, y: 0.2, z: 0.467} 39 | m_ShadowDepthBias: 1 40 | m_ShadowNormalBias: 1 41 | m_SoftShadowsSupported: 1 42 | m_UseSRPBatcher: 1 43 | m_SupportsDynamicBatching: 0 44 | m_MixedLightingSupported: 1 45 | m_DebugLevel: 0 46 | m_ColorGradingMode: 0 47 | m_ColorGradingLutSize: 32 48 | m_ShadowType: 1 49 | m_LocalShadowsSupported: 0 50 | m_LocalShadowsAtlasResolution: 256 51 | m_MaxPixelLights: 0 52 | m_ShadowAtlasResolution: 256 53 | m_ShaderVariantLogLevel: 0 54 | -------------------------------------------------------------------------------- /EventsExample/Assets/Settings/UniversalRP-HighQuality.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 19ba41d7c0026c3459d37c2fe90c55a0 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Settings/UniversalRP-LowQuality.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 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: 11500000, guid: bf2edee5c58d82540a51f03df9d42094, type: 3} 13 | m_Name: UniversalRP-LowQuality 14 | m_EditorClassIdentifier: 15 | k_AssetVersion: 5 16 | k_AssetPreviousVersion: 5 17 | m_RendererType: 1 18 | m_RendererData: {fileID: 0} 19 | m_RendererDataList: 20 | - {fileID: 11400000, guid: 4a8e21d5c33334b11b34a596161b9360, type: 2} 21 | m_DefaultRendererIndex: 0 22 | m_RequireDepthTexture: 0 23 | m_RequireOpaqueTexture: 0 24 | m_OpaqueDownsampling: 1 25 | m_SupportsHDR: 0 26 | m_MSAA: 1 27 | m_RenderScale: 1 28 | m_MainLightRenderingMode: 1 29 | m_MainLightShadowsSupported: 0 30 | m_MainLightShadowmapResolution: 2048 31 | m_AdditionalLightsRenderingMode: 0 32 | m_AdditionalLightsPerObjectLimit: 4 33 | m_AdditionalLightShadowsSupported: 0 34 | m_AdditionalLightsShadowmapResolution: 512 35 | m_ShadowDistance: 50 36 | m_ShadowCascades: 0 37 | m_Cascade2Split: 0.25 38 | m_Cascade4Split: {x: 0.067, y: 0.2, z: 0.467} 39 | m_ShadowDepthBias: 1 40 | m_ShadowNormalBias: 1 41 | m_SoftShadowsSupported: 0 42 | m_UseSRPBatcher: 1 43 | m_SupportsDynamicBatching: 0 44 | m_MixedLightingSupported: 1 45 | m_DebugLevel: 0 46 | m_ColorGradingMode: 0 47 | m_ColorGradingLutSize: 16 48 | m_ShadowType: 1 49 | m_LocalShadowsSupported: 0 50 | m_LocalShadowsAtlasResolution: 256 51 | m_MaxPixelLights: 0 52 | m_ShadowAtlasResolution: 256 53 | m_ShaderVariantLogLevel: 0 54 | -------------------------------------------------------------------------------- /EventsExample/Assets/Settings/UniversalRP-LowQuality.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a31e9f9f9c9d4b9429ed0d1234e22103 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Assets/Settings/UniversalRP-MediumQuality.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!114 &11400000 4 | MonoBehaviour: 5 | m_ObjectHideFlags: 0 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: 11500000, guid: bf2edee5c58d82540a51f03df9d42094, type: 3} 13 | m_Name: UniversalRP-MediumQuality 14 | m_EditorClassIdentifier: 15 | k_AssetVersion: 5 16 | k_AssetPreviousVersion: 5 17 | m_RendererType: 1 18 | m_RendererData: {fileID: 0} 19 | m_RendererDataList: 20 | - {fileID: 11400000, guid: 4a8e21d5c33334b11b34a596161b9360, type: 2} 21 | m_DefaultRendererIndex: 0 22 | m_RequireDepthTexture: 0 23 | m_RequireOpaqueTexture: 0 24 | m_OpaqueDownsampling: 1 25 | m_SupportsHDR: 0 26 | m_MSAA: 1 27 | m_RenderScale: 1 28 | m_MainLightRenderingMode: 1 29 | m_MainLightShadowsSupported: 1 30 | m_MainLightShadowmapResolution: 2048 31 | m_AdditionalLightsRenderingMode: 1 32 | m_AdditionalLightsPerObjectLimit: 4 33 | m_AdditionalLightShadowsSupported: 0 34 | m_AdditionalLightsShadowmapResolution: 512 35 | m_ShadowDistance: 50 36 | m_ShadowCascades: 0 37 | m_Cascade2Split: 0.25 38 | m_Cascade4Split: {x: 0.067, y: 0.2, z: 0.467} 39 | m_ShadowDepthBias: 1 40 | m_ShadowNormalBias: 1 41 | m_SoftShadowsSupported: 0 42 | m_UseSRPBatcher: 1 43 | m_SupportsDynamicBatching: 0 44 | m_MixedLightingSupported: 1 45 | m_DebugLevel: 0 46 | m_ColorGradingMode: 0 47 | m_ColorGradingLutSize: 32 48 | m_ShadowType: 1 49 | m_LocalShadowsSupported: 0 50 | m_LocalShadowsAtlasResolution: 256 51 | m_MaxPixelLights: 0 52 | m_ShadowAtlasResolution: 256 53 | m_ShaderVariantLogLevel: 0 54 | -------------------------------------------------------------------------------- /EventsExample/Assets/Settings/UniversalRP-MediumQuality.asset.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: d847b876476d3d6468f5dfcd34266f96 3 | NativeFormatImporter: 4 | externalObjects: {} 5 | mainObjectFileID: 0 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/.gitignore: -------------------------------------------------------------------------------- 1 | # This .gitignore file should be placed at the root of your Unity project directory 2 | # 3 | # Get latest from https://github.com/github/gitignore/blob/master/Unity.gitignore 4 | # 5 | /[Ll]ibrary/ 6 | /[Tt]emp/ 7 | /[Oo]bj/ 8 | /[Bb]uild/ 9 | /[Bb]uilds/ 10 | /[Ll]ogs/ 11 | /[Mm]emoryCaptures/ 12 | 13 | # Asset meta data should only be ignored when the corresponding asset is also ignored 14 | !/[Aa]ssets/**/*.meta 15 | 16 | # Uncomment this line if you wish to ignore the asset store tools plugin 17 | # /[Aa]ssets/AssetStoreTools* 18 | 19 | # Autogenerated Jetbrains Rider plugin 20 | [Aa]ssets/Plugins/Editor/JetBrains* 21 | 22 | # Visual Studio cache directory 23 | .vs/ 24 | 25 | # Gradle cache directory 26 | .gradle/ 27 | 28 | # Autogenerated VS/MD/Consulo solution and project files 29 | ExportedObj/ 30 | .consulo/ 31 | *.csproj 32 | *.unityproj 33 | *.sln 34 | *.suo 35 | *.tmp 36 | *.user 37 | *.userprefs 38 | *.pidb 39 | *.booproj 40 | *.svd 41 | *.pdb 42 | *.mdb 43 | *.opendb 44 | *.VC.db 45 | 46 | # Unity3D generated meta files 47 | *.pidb.meta 48 | *.pdb.meta 49 | *.mdb.meta 50 | 51 | # Unity3D generated file on crash reports 52 | sysinfo.txt 53 | 54 | # Builds 55 | *.apk 56 | *.unitypackage 57 | 58 | # Crashlytics generated file 59 | crashlytics-build.properties 60 | 61 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/LICENSE.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 59507b4e7e490044eb62e22b3d8e9a49 3 | DefaultImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/README.md: -------------------------------------------------------------------------------- 1 | # UnityEcsEvents 2 | A event system package for Unity's data oriented design framework. 3 | 4 | ### Installation: 5 | 6 | - **Option 1: Download** 7 | Download the package by clicking the "Clone or Download" button on the GitHub repo then select "Download Zip". Extract it to your project's \Packages\ folder. 8 | 9 | - **Option 2: PackageManager** 10 | Click the on the GitHub repo, and copy the URL shown. In PackageManager hit the [+] icon, select [Add Package from Git URL] and then paste in the URL, [Add]. You will need [Clone or Download] button [Git](https://git-scm.com/ "Git") installed on your machine for this to work. for more info see the [PackageManager docs](https://docs.unity3d.com/Manual/upm-ui-giturl.html "PackageManager docs"). After clicking [Add] it can take 30 seconds or so before it looks like its doing anything. 11 | 12 | ### Package Dependencies: 13 | 14 | "com.unity.entities": "0.8.0-preview.8", 15 | "com.unity.burst": "1.3.0-preview.7", 16 | "com.unity.collections": "0.7.0-preview.2", 17 | "com.unity.test-framework": "1.1.11", 18 | "com.unity.test-framework.performance": "1.3.3-preview", 19 | 20 | ### Supported Editors: 21 | 22 | * 2019.3.6xx+ 23 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/README.md.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b7bb2744d8171f64ea62a60c6cad30fe 3 | TextScriptImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7384bd1416e8b1a43a33ae28562b81b8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/ArchetypeView.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 16bfa3dd9c50d1645a95d6544a864904 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/AssemblyInfo.cs: -------------------------------------------------------------------------------- 1 | using System.Runtime.CompilerServices; 2 | 3 | [assembly: InternalsVisibleTo("Vella.Events.Tests")] 4 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/AssemblyInfo.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 808478b2872a3064781a73ba4710a393 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/BufferHeaderProxy.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8ad82cf6734e5f8479804c590742310f 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/BufferLink.cs: -------------------------------------------------------------------------------- 1 | using Unity.Entities; 2 | 3 | namespace Vella.Events 4 | { 5 | /// 6 | /// This component stores extra information about how to locate the buffer associated with the main event component. 7 | /// The buffers are variable length and stored sequentially by thread. 8 | /// 9 | public struct BufferLink : IComponentData 10 | { 11 | public int ThreadIndex; 12 | public int Offset; 13 | public int Length; 14 | } 15 | 16 | } -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/BufferLink.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9b58eaa5838b49b46be59aaf8719e516 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/EntityEvent.cs: -------------------------------------------------------------------------------- 1 | using Unity.Entities; 2 | 3 | namespace Vella.Events 4 | { 5 | /// 6 | /// An component for easy identification of events with EntityQuery 7 | /// 8 | public struct EntityEvent : IComponentData 9 | { 10 | public int Id; 11 | public int ComponentTypeIndex; 12 | public int BufferTypeIndex; 13 | } 14 | 15 | } -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/EntityEvent.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 87266eb4f5ded934f8244bdd6a704c85 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/EntityEventSystem.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 69d0bb2861198dc4aae6d918300ec728 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/EntityEventSystemLoader.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using Unity.Entities; 3 | 4 | namespace Vella.Events 5 | { 6 | /// 7 | /// System that is responsible for creating the EntityEventSystem. 8 | /// It allows a package user to control where the is located. 9 | /// 10 | [UpdateInGroup(typeof(InitializationSystemGroup))] 11 | public class EntityEventSystemLoader : SystemBase 12 | { 13 | //// Example Usage: 14 | // public static class Initialization 15 | // { 16 | // [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.AfterAssembliesLoaded)] 17 | // public static void OnLoad() 18 | // { 19 | // EntityEventSystemLoader.SetParentType(); 20 | // } 21 | // } 22 | 23 | public static Type DefaultGroup { get; } = typeof(LateSimulationSystemGroup); 24 | 25 | private static Type ParentType = DefaultGroup; 26 | 27 | public static bool DisableAutoCreation; 28 | 29 | public static void SetParentType() where T : ComponentSystemGroup => ParentType = typeof(T); 30 | 31 | protected override void OnCreate() 32 | { 33 | if(!DisableAutoCreation) 34 | { 35 | AddToGroup((ComponentSystemGroup)World.GetOrCreateSystem(ParentType)); 36 | } 37 | Enabled = false; 38 | World.DestroySystem(this); 39 | } 40 | 41 | public static void AddToGroup(T group) where T : ComponentSystemGroup 42 | { 43 | var eventSystem = group.World.CreateSystem(); 44 | group.AddSystemToUpdateList(eventSystem); 45 | } 46 | 47 | protected override void OnUpdate() => throw new NotImplementedException(); 48 | } 49 | 50 | } 51 | 52 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/EntityEventSystemLoader.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 061ad878cfa5bd8438648652dd6753f7 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/EventBatch.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 84e09d2b5d528ef48b89d3e4739ef4dc 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/EventQueue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b0edfe0f8b4c7114886d371cbbc18602 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/Extensions.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: aee136e0f012f7646b0d281f3e54174c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/Extensions/StringExtensions.cs: -------------------------------------------------------------------------------- 1 | using System.Reflection; 2 | using Unity.Burst; 3 | using Unity.Collections.LowLevel.Unsafe; 4 | 5 | namespace Vella.Events.Extensions 6 | { 7 | public unsafe class ToStringFormatCache where T : struct 8 | { 9 | // ReSharper disable StaticMemberInGenericType 10 | private static readonly FieldInfo[] _fields; 11 | private static readonly string[] _fieldNames; 12 | private static readonly int[] _fieldOffsets; 13 | private static readonly string _seed; 14 | private const string Seperator = "="; 15 | private const string Whitespace = " "; 16 | // ReSharper restore StaticMemberInGenericType 17 | 18 | static ToStringFormatCache() 19 | { 20 | _fields = typeof(T).GetFields(); 21 | _fieldNames = new string[_fields.Length]; 22 | _fieldOffsets = new int[_fields.Length]; 23 | _seed = $"{typeof(T).Name}: "; 24 | 25 | for (var i = 0; i < _fields.Length; i++) 26 | { 27 | _fieldNames[i] = _fields[i].Name; 28 | _fieldOffsets[i] = UnsafeUtility.GetFieldOffset(_fields[i]); 29 | } 30 | } 31 | 32 | public static string GetToString(T instance) 33 | { 34 | var result = _seed; 35 | for (int i = 0; i < _fieldNames.Length; i++) 36 | { 37 | result += _fieldNames[i]; 38 | result += Seperator; 39 | result += _fields[i].GetValue(instance); 40 | result += Whitespace; 41 | } 42 | return result; 43 | } 44 | } 45 | 46 | public static class ToStringExtensions 47 | { 48 | [BurstDiscard] 49 | public static string AutoToString(this T obj) where T : struct 50 | { 51 | return ToStringFormatCache.GetToString(obj); 52 | } 53 | } 54 | 55 | } 56 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/Extensions/StringExtensions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 122cc9f4e39bd9a4aa2c6ac8251552fa 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/Extensions/UnsafeExtensions.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b7fd67b57bd81e541bfdf451f90ea3db 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/MultiAppendBuffer.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 111ebd3c56a98c548bfa2e1a4505c069 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/StructuralChangeQueue.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ceb1b8f36b1cd8a43844aaec6f2d49c0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/UnsafeEntityManager.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 9f4e2d7bc5f415942ab5380a573a5cfc 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/UnsafeNativeArray.cs: -------------------------------------------------------------------------------- 1 | using System.Runtime.CompilerServices; 2 | using Unity.Collections; 3 | using Unity.Collections.LowLevel.Unsafe; 4 | 5 | /// 6 | /// An accessible proxy for NativeArray. 7 | /// 8 | public unsafe struct UnsafeNativeArray 9 | { 10 | [NativeDisableUnsafePtrRestriction] 11 | public unsafe void* m_Buffer; 12 | public int m_Length; 13 | public int m_MinIndex; 14 | public int m_MaxIndex; 15 | public AtomicSafetyHandle m_Safety; 16 | 17 | [NativeSetClassTypeToNullOnSchedule] 18 | public DisposeSentinel m_DisposeSentinel; 19 | public Allocator m_AllocatorLabel; 20 | 21 | [MethodImpl(MethodImplOptions.AggressiveInlining)] 22 | public NativeArray AsNativeArray() where T : struct 23 | { 24 | return UnsafeUtilityEx.AsRef>(UnsafeUtility.AddressOf(ref this)); 25 | } 26 | 27 | /// 28 | /// Creates a window of the underlying NativeArray, shifted to encapulate a specified region. 29 | /// Useful for Entities API functions that require a NativeArray but won't accept a NativeSlice etc 30 | /// 31 | /// the item type to usee 32 | /// new start index 33 | /// new item count 34 | /// 35 | public NativeArray Slice(int startIndex, int length) where T : struct 36 | { 37 | UnsafeNativeArray result = this; 38 | result.m_Buffer = (byte*)m_Buffer + startIndex * UnsafeUtility.SizeOf(); 39 | result.m_Length = length; 40 | result.m_MaxIndex = length - 1; 41 | return UnsafeUtilityEx.AsRef>(UnsafeUtility.AddressOf(ref result)); 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/UnsafeNativeArray.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 888ef2ba6f73d1b4bb307d0a84c6f615 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/Vella.Events.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Vella.Events", 3 | "references": [ 4 | "Unity.Entities", 5 | "Unity.Mathematics", 6 | "Unity.Jobs", 7 | "Unity.Burst", 8 | "Unity.Collections" 9 | ], 10 | "includePlatforms": [], 11 | "excludePlatforms": [], 12 | "allowUnsafeCode": true, 13 | "overrideReferences": false, 14 | "precompiledReferences": [], 15 | "autoReferenced": true, 16 | "defineConstraints": [], 17 | "versionDefines": [], 18 | "noEngineReferences": false 19 | } -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Runtime/Vella.Events.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b6125dfcacc74b0448e9ddc7cf2eb82c 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: b96bf546867612e47a761f24ebcf30ba 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/ArchetypeChunkViewTests.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: fd2171abff317bc44ac6f539951bc197 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/Attributes.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: f88ca7a0b3e179a488d86cf5a118f399 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/Attributes/TestCategory.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections.Generic; 3 | using System.ComponentModel; 4 | using System.Linq; 5 | using System.Text; 6 | using System.Threading.Tasks; 7 | 8 | namespace Vella.Tests.Attributes 9 | { 10 | public enum TestCategory 11 | { 12 | None = 0, 13 | Functionality, 14 | Integrity, 15 | Performance, 16 | Compatibility, 17 | } 18 | 19 | public class TestCategoryAttribute : CategoryAttribute 20 | { 21 | public TestCategoryAttribute(TestCategory functionality) : base(functionality.ToString()) 22 | { 23 | 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/Attributes/TestCategory.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a956904ee6562e44eb5388441778ac2c 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/Data.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3fa1252eb0f019b4ba08908c4497498e 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/Data/TestComponents.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 479a6b76d8893d74db9ede2efc4ea523 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/EventBatchTests.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 411d34ddcb8d58c41bcc1ed117ea2876 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/EventQueueTests.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ab2bbae52ed0d6b4b8af0a9fed84e72d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/EventSystemBasicTests.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 70420f4a1618f03468aafa679ede0cf1 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/EventSystemSequentialTests.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c2e161dcdf34ae140807dc835daa80d6 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/Fixtures.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 7b9a245d695fd6f4ebf3e9d43e1577f8 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/Fixtures/ECSTestsFixture.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 6b979b59f55822d4c923080a6b0ea9f0 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/Fixtures/EntityPerformanceTestFixture.cs: -------------------------------------------------------------------------------- 1 | using NUnit.Framework; 2 | using Unity.Entities; 3 | 4 | namespace Vella.Tests.Fixtures 5 | { 6 | public class EntityPerformanceTestFixture 7 | { 8 | protected World m_PreviousWorld; 9 | protected World m_World; 10 | protected EntityManager m_Manager; 11 | 12 | 13 | [SetUp] 14 | virtual public void Setup() 15 | { 16 | m_PreviousWorld = World.DefaultGameObjectInjectionWorld; 17 | m_World = World.DefaultGameObjectInjectionWorld = new World("Test World"); 18 | m_Manager = m_World.EntityManager; 19 | } 20 | 21 | [TearDown] 22 | virtual public void TearDown() 23 | { 24 | if (m_Manager != null) 25 | { 26 | m_World.Dispose(); 27 | m_World = null; 28 | 29 | World.DefaultGameObjectInjectionWorld = m_PreviousWorld; 30 | m_PreviousWorld = null; 31 | m_Manager = null; 32 | } 33 | } 34 | } 35 | } -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/Fixtures/EntityPerformanceTestFixture.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c45bd76cb374f1045a710b310b75fe6a 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/Fixtures/EscQueueTestsFixture.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ffca5ff55c666eb4ab01d52a71565d4b 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/Helpers.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8d7751b94aca9d54991d60e98d1ab18c 3 | folderAsset: yes 4 | DefaultImporter: 5 | externalObjects: {} 6 | userData: 7 | assetBundleName: 8 | assetBundleVariant: 9 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/Helpers/NativeArrayBuilder.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Collections; 3 | using System.Collections.Generic; 4 | using Unity.Collections; 5 | using Vella.Tests.Data; 6 | 7 | namespace Vella.Tests.Helpers 8 | { 9 | 10 | public unsafe struct NativeArrayBuilder : IDisposable, IEnumerable where T : unmanaged 11 | { 12 | public NativeList List; 13 | 14 | public static implicit operator NativeList(NativeArrayBuilder arr) => arr.List; 15 | 16 | public static implicit operator NativeArray(NativeArrayBuilder arr) => arr.List; 17 | 18 | public NativeArrayBuilder(Allocator allocator = Allocator.Temp) 19 | { 20 | List = new NativeList(allocator); 21 | } 22 | 23 | public void Add(T item) 24 | { 25 | if (!List.IsCreated) 26 | List = new NativeList(Allocator.Temp); 27 | List.Add(item); 28 | } 29 | 30 | public void Dispose() => List.Dispose(); 31 | 32 | public IEnumerator GetEnumerator() 33 | { 34 | for (int i = 0; i < List.Length; i++) 35 | yield return List[i]; 36 | } 37 | 38 | IEnumerator IEnumerable.GetEnumerator() => GetEnumerator(); 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/Helpers/NativeArrayBuilder.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 3cda85adde6101045a9c95b58da02173 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/IntegrationPerformanceTests.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: a82a2cc79d2b7154e9f9bd170c225e7d 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/IsolatedComparison.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: c336d525524124249a0535b4b10891ac 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/ProxyTests.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 338759b332b6382418542ceeb800c471 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/UnsafeEntityManagerTests.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Linq; 3 | using System.Reflection; 4 | using System.Runtime.CompilerServices; 5 | using System.Runtime.InteropServices; 6 | using NUnit.Framework; 7 | using Unity.Collections; 8 | using Unity.Collections.LowLevel.Unsafe; 9 | using Unity.Entities; 10 | using Unity.PerformanceTesting; 11 | using Vella.Events; 12 | using Vella.Tests.Attributes; 13 | using Vella.Tests.Data; 14 | using Vella.Tests.Fixtures; 15 | 16 | class UnsafeEntityManagerTests : ECSTestsFixture 17 | { 18 | [Test, TestCategory(TestCategory.Integrity), Performance] 19 | unsafe public void CreateEntities() 20 | { 21 | var warmupTimes = 10; 22 | var measureTimes = 20; 23 | var entitiesPerMeasurement = 20; 24 | var expectedTotal = (measureTimes + warmupTimes) * entitiesPerMeasurement; 25 | 26 | var uem = new UnsafeEntityManager(Manager); 27 | var component = ComponentType.ReadWrite(); 28 | var archetype = Manager.CreateArchetype(component); 29 | var query = Manager.CreateEntityQuery(component); 30 | var entities = new NativeArray(expectedTotal, Allocator.TempJob); 31 | 32 | Measure.Method(() => 33 | { 34 | // Note the performance will change depending on if burst compilation is enabled 35 | 36 | uem.CreateEntity(archetype, entities, entitiesPerMeasurement); 37 | 38 | //StructuralChangeProxy.TestSharedData.Shared.Data.CreateEntity(archetype, entities, entitiesPerMeasurement); 39 | }) 40 | .WarmupCount(warmupTimes) 41 | .MeasurementCount(measureTimes) 42 | .Run(); 43 | 44 | Assert.AreEqual(expectedTotal, query.CalculateEntityCount()); 45 | entities.Dispose(); 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/UnsafeEntityManagerTests.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 8287886aa5d61be48b8a0aff16222400 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/UnsafeExtensionsTests.cs: -------------------------------------------------------------------------------- 1 | using System; 2 | using System.Linq; 3 | using NUnit.Framework; 4 | using Unity.Collections; 5 | using Unity.Collections.LowLevel.Unsafe; 6 | using Unity.Entities; 7 | using Vella.Events; 8 | using Vella.Events.Extensions; 9 | using Vella.Tests.Data; 10 | using Vella.Tests.Fixtures; 11 | 12 | namespace ExtensionsTests 13 | { 14 | class EntityArchetypeExtensionsTests : ECSTestsFixture 15 | { 16 | [Test, Category("Functionality")] 17 | unsafe public void CopiesChunksFromEntityArchetype([Values(0, 10000)] int entityCount) 18 | { 19 | var archetype = Manager.CreateArchetype(typeof(EcsTestData)); 20 | var entities = new NativeArray(entityCount, Allocator.TempJob); 21 | Manager.CreateEntity(archetype, entities); 22 | 23 | var clone = new NativeArray(archetype.ChunkCount, Allocator.Temp); 24 | archetype.CopyChunksTo(clone); 25 | 26 | var actual = new NativeList(archetype.ChunkCount, Allocator.Temp); 27 | var allChunks = Manager.GetAllChunks(); 28 | for (int i = 0; i < allChunks.Length; i++) 29 | { 30 | var chunk = allChunks[i]; 31 | if (chunk.Archetype == archetype) 32 | actual.Add(chunk); 33 | } 34 | 35 | AssertBytesAreEqual(clone, actual); 36 | 37 | clone.Dispose(); 38 | actual.Dispose(); 39 | allChunks.Dispose(); 40 | entities.Dispose(); 41 | } 42 | 43 | } 44 | 45 | } 46 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/UnsafeExtensionsTests.cs.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: ea3a17d16752ea94593a06d8a6047300 3 | MonoImporter: 4 | externalObjects: {} 5 | serializedVersion: 2 6 | defaultReferences: [] 7 | executionOrder: 0 8 | icon: {instanceID: 0} 9 | userData: 10 | assetBundleName: 11 | assetBundleVariant: 12 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/Vella.Events.Tests.asmdef: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Vella.Events.Tests", 3 | "references": [ 4 | "Unity.PerformanceTesting", 5 | "Unity.Entities", 6 | "Unity.Mathematics", 7 | "Unity.Properties", 8 | "Unity.Jobs", 9 | "Unity.Burst", 10 | "Unity.Collections", 11 | "Unity.Entities.Properties", 12 | "Unity.Entities.Properties.Tests", 13 | "Unity.Entities.Tests", 14 | "UnityEngine.TestRunner", 15 | "UnityEditor.TestRunner", 16 | "Vella.Events" 17 | ], 18 | "includePlatforms": [ 19 | "Editor" 20 | ], 21 | "excludePlatforms": [], 22 | "allowUnsafeCode": true, 23 | "overrideReferences": true, 24 | "precompiledReferences": [ 25 | "nunit.framework.dll" 26 | ], 27 | "autoReferenced": false, 28 | "defineConstraints": [ 29 | "UNITY_INCLUDE_TESTS" 30 | ], 31 | "versionDefines": [], 32 | "noEngineReferences": false 33 | } -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/Tests/Vella.Events.Tests.asmdef.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: 17a4c2df984224d4bbea71d77e85497b 3 | AssemblyDefinitionImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "com.vella.events", 3 | "description": "An event system for Unity's data oiented design framework.", 4 | "version": "0.1.7", 5 | "unity": "2019.3", 6 | "displayName": "ECS Events", 7 | "dependencies": { 8 | "com.unity.burst": "1.3.0-preview.7", 9 | "com.unity.collections": "0.7.0-preview.2", 10 | "com.unity.entities": "0.8.0-preview.8" 11 | } 12 | } -------------------------------------------------------------------------------- /EventsExample/Packages/UnityEcsEvents/package.json.meta: -------------------------------------------------------------------------------- 1 | fileFormatVersion: 2 2 | guid: e0c6fdfce3566104b850e1ab1b4cf7b5 3 | PackageManifestImporter: 4 | externalObjects: {} 5 | userData: 6 | assetBundleName: 7 | assetBundleVariant: 8 | -------------------------------------------------------------------------------- /EventsExample/Packages/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "com.unity.collab-proxy": "1.2.16", 4 | "com.unity.ide.rider": "1.1.4", 5 | "com.unity.ide.vscode": "1.1.4", 6 | "com.unity.jobs": "0.2.7-preview.11", 7 | "com.unity.physics": "0.3.1-preview", 8 | "com.unity.render-pipelines.universal": "7.1.8", 9 | "com.unity.rendering.hybrid": "0.4.0-preview.8", 10 | "com.unity.test-framework": "1.1.11", 11 | "com.unity.textmeshpro": "2.0.1", 12 | "com.unity.timeline": "1.2.13", 13 | "com.unity.ugui": "1.0.0", 14 | "com.vella.events": "https://github.com/jeffvella/UnityEcsEvents.git", 15 | "com.unity.modules.ai": "1.0.0", 16 | "com.unity.modules.androidjni": "1.0.0", 17 | "com.unity.modules.animation": "1.0.0", 18 | "com.unity.modules.assetbundle": "1.0.0", 19 | "com.unity.modules.audio": "1.0.0", 20 | "com.unity.modules.cloth": "1.0.0", 21 | "com.unity.modules.director": "1.0.0", 22 | "com.unity.modules.imageconversion": "1.0.0", 23 | "com.unity.modules.imgui": "1.0.0", 24 | "com.unity.modules.jsonserialize": "1.0.0", 25 | "com.unity.modules.particlesystem": "1.0.0", 26 | "com.unity.modules.physics": "1.0.0", 27 | "com.unity.modules.physics2d": "1.0.0", 28 | "com.unity.modules.screencapture": "1.0.0", 29 | "com.unity.modules.terrain": "1.0.0", 30 | "com.unity.modules.terrainphysics": "1.0.0", 31 | "com.unity.modules.tilemap": "1.0.0", 32 | "com.unity.modules.ui": "1.0.0", 33 | "com.unity.modules.uielements": "1.0.0", 34 | "com.unity.modules.umbra": "1.0.0", 35 | "com.unity.modules.unityanalytics": "1.0.0", 36 | "com.unity.modules.unitywebrequest": "1.0.0", 37 | "com.unity.modules.unitywebrequestassetbundle": "1.0.0", 38 | "com.unity.modules.unitywebrequestaudio": "1.0.0", 39 | "com.unity.modules.unitywebrequesttexture": "1.0.0", 40 | "com.unity.modules.unitywebrequestwww": "1.0.0", 41 | "com.unity.modules.vehicles": "1.0.0", 42 | "com.unity.modules.video": "1.0.0", 43 | "com.unity.modules.vr": "1.0.0", 44 | "com.unity.modules.wind": "1.0.0", 45 | "com.unity.modules.xr": "1.0.0" 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /EventsExample/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 | -------------------------------------------------------------------------------- /EventsExample/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 | -------------------------------------------------------------------------------- /EventsExample/ProjectSettings/DynamicsManager.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!55 &1 4 | PhysicsManager: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 13 7 | m_Gravity: {x: 0, y: -9.81, z: 0} 8 | m_DefaultMaterial: {fileID: 0} 9 | m_BounceThreshold: 2 10 | m_SleepThreshold: 0.005 11 | m_DefaultContactOffset: 0.01 12 | m_DefaultSolverIterations: 6 13 | m_DefaultSolverVelocityIterations: 1 14 | m_QueriesHitBackfaces: 0 15 | m_QueriesHitTriggers: 1 16 | m_EnableAdaptiveForce: 0 17 | m_ClothInterCollisionDistance: 0.1 18 | m_ClothInterCollisionStiffness: 0.2 19 | m_ContactsGeneration: 1 20 | m_LayerCollisionMatrix: ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff 21 | m_AutoSimulation: 1 22 | m_AutoSyncTransforms: 0 23 | m_ReuseCollisionCallbacks: 1 24 | m_ClothInterCollisionSettingsToggle: 0 25 | m_ClothGravity: {x: 0, y: -9.81, z: 0} 26 | m_ContactPairsMode: 0 27 | m_BroadphaseType: 0 28 | m_WorldBounds: 29 | m_Center: {x: 0, y: 0, z: 0} 30 | m_Extent: {x: 250, y: 250, z: 250} 31 | m_WorldSubdivisions: 8 32 | m_FrictionType: 0 33 | m_EnableEnhancedDeterminism: 0 34 | m_EnableUnifiedHeightmaps: 1 35 | m_SolverType: 0 36 | m_DefaultMaxAngularSpeed: 7 37 | -------------------------------------------------------------------------------- /EventsExample/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 | - enabled: 1 9 | path: Assets/Scenes/StartScene.unity 10 | guid: d1c3109bdb54ad54c8a2b2838528e640 11 | - enabled: 1 12 | path: Assets/Scenes/Levels/Level_1.unity 13 | guid: 406d8b9c8df19364e854fe4c839779c6 14 | - enabled: 1 15 | path: Assets/Scenes/UI/MainMenu.unity 16 | guid: a243d1a72a848014fab952271dbb8e20 17 | m_configObjects: {} 18 | -------------------------------------------------------------------------------- /EventsExample/ProjectSettings/EditorSettings.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!159 &1 4 | EditorSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 9 7 | m_ExternalVersionControlSupport: Visible Meta Files 8 | m_SerializationMode: 2 9 | m_LineEndingsForNewScripts: 1 10 | m_DefaultBehaviorMode: 0 11 | m_PrefabRegularEnvironment: {fileID: 0} 12 | m_PrefabUIEnvironment: {fileID: 0} 13 | m_SpritePackerMode: 0 14 | m_SpritePackerPaddingPower: 1 15 | m_EtcTextureCompressorBehavior: 0 16 | m_EtcTextureFastCompressor: 2 17 | m_EtcTextureNormalCompressor: 2 18 | m_EtcTextureBestCompressor: 5 19 | m_ProjectGenerationIncludedExtensions: txt;xml;fnt;cd;asmdef;asmref;rsp;asmref 20 | m_ProjectGenerationRootNamespace: 21 | m_CollabEditorSettings: 22 | inProgressEnabled: 1 23 | m_EnableTextureStreamingInEditMode: 1 24 | m_EnableTextureStreamingInPlayMode: 1 25 | m_AsyncShaderCompilation: 1 26 | m_EnterPlayModeOptionsEnabled: 0 27 | m_EnterPlayModeOptions: 3 28 | m_ShowLightmapResolutionOverlay: 1 29 | m_UseLegacyProbeSampleCount: 1 30 | m_AssetPipelineMode: 1 31 | m_CacheServerMode: 0 32 | m_CacheServerEndpoint: 33 | m_CacheServerNamespacePrefix: default 34 | m_CacheServerEnableDownload: 1 35 | m_CacheServerEnableUpload: 1 36 | -------------------------------------------------------------------------------- /EventsExample/ProjectSettings/NavMeshAreas.asset: -------------------------------------------------------------------------------- 1 | %YAML 1.1 2 | %TAG !u! tag:unity3d.com,2011: 3 | --- !u!126 &1 4 | NavMeshProjectSettings: 5 | m_ObjectHideFlags: 0 6 | serializedVersion: 2 7 | areas: 8 | - name: Walkable 9 | cost: 1 10 | - name: Not Walkable 11 | cost: 1 12 | - name: Jump 13 | cost: 2 14 | - name: 15 | cost: 1 16 | - name: 17 | cost: 1 18 | - name: 19 | cost: 1 20 | - name: 21 | cost: 1 22 | - name: 23 | cost: 1 24 | - name: 25 | cost: 1 26 | - name: 27 | cost: 1 28 | - name: 29 | cost: 1 30 | - name: 31 | cost: 1 32 | - name: 33 | cost: 1 34 | - name: 35 | cost: 1 36 | - name: 37 | cost: 1 38 | - name: 39 | cost: 1 40 | - name: 41 | cost: 1 42 | - name: 43 | cost: 1 44 | - name: 45 | cost: 1 46 | - name: 47 | cost: 1 48 | - name: 49 | cost: 1 50 | - name: 51 | cost: 1 52 | - name: 53 | cost: 1 54 | - name: 55 | cost: 1 56 | - name: 57 | cost: 1 58 | - name: 59 | cost: 1 60 | - name: 61 | cost: 1 62 | - name: 63 | cost: 1 64 | - name: 65 | cost: 1 66 | - name: 67 | cost: 1 68 | - name: 69 | cost: 1 70 | - name: 71 | cost: 1 72 | m_LastAgentTypeID: -887442657 73 | m_Settings: 74 | - serializedVersion: 2 75 | agentTypeID: 0 76 | agentRadius: 0.5 77 | agentHeight: 2 78 | agentSlope: 45 79 | agentClimb: 0.75 80 | ledgeDropHeight: 0 81 | maxJumpAcrossDistance: 0 82 | minRegionArea: 2 83 | manualCellSize: 0 84 | cellSize: 0.16666667 85 | manualTileSize: 0 86 | tileSize: 256 87 | accuratePlacement: 0 88 | debug: 89 | m_Flags: 0 90 | m_SettingNames: 91 | - Humanoid 92 | -------------------------------------------------------------------------------- /EventsExample/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 | m_DefaultList: 7 | - type: 8 | m_NativeTypeID: 108 9 | m_ManagedTypePPtr: {fileID: 0} 10 | m_ManagedTypeFallback: 11 | defaultPresets: 12 | - m_Preset: {fileID: 2655988077585873504, guid: 463065d4f17d1d94d848aa127b94dd43, 13 | type: 2} 14 | - type: 15 | m_NativeTypeID: 1020 16 | m_ManagedTypePPtr: {fileID: 0} 17 | m_ManagedTypeFallback: 18 | defaultPresets: 19 | - m_Preset: {fileID: 2655988077585873504, guid: e7689051185d12f4298e1ebb2693a29f, 20 | type: 2} 21 | - type: 22 | m_NativeTypeID: 1006 23 | m_ManagedTypePPtr: {fileID: 0} 24 | m_ManagedTypeFallback: 25 | defaultPresets: 26 | - m_Preset: {fileID: 2655988077585873504, guid: e8537455c6c08bd4e8bf0be3707da685, 27 | type: 2} 28 | -------------------------------------------------------------------------------- /EventsExample/ProjectSettings/ProjectVersion.txt: -------------------------------------------------------------------------------- 1 | m_EditorVersion: 2019.3.6f1 2 | m_EditorVersionWithRevision: 2019.3.6f1 (5c3fb0a11183) 3 | -------------------------------------------------------------------------------- /EventsExample/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 | -------------------------------------------------------------------------------- /EventsExample/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.1 8 | m_TimeScale: 1 9 | Maximum Particle Timestep: 0.03 10 | -------------------------------------------------------------------------------- /EventsExample/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.unity3d.com 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 | -------------------------------------------------------------------------------- /EventsExample/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_RenderPipeSettingsPath: 10 | m_FixedTimeStep: 0.016666668 11 | m_MaxDeltaTime: 0.05 12 | -------------------------------------------------------------------------------- /EventsExample/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 | } -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Jeffrey Vella 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | 2 | # UnityEcsEvents.Example 3 | An example showing the how ECS Events package can be utilized in a game. 4 | 5 | # Note: this example has not yet been updated to use the latest version of UnityEcsEvents and Unity packages. 6 | 7 | #### What is this? 8 | 9 | A demonstration project for how the [ECS Events package](https://github.com/jeffvella/UnityEcsEvents) could be used in a real project. The game itself is pretty simple but the point is to illustrate methods of wiring functionality together. The project shows: 10 | 11 | * Firing and Receiving events from a Monobehavior. 12 | * Using events to control gameplay. 13 | * Scene Loading/Unloading with events. 14 | * Using prefabs from SubScenes. 15 | * Instantiating ParticleEffects and Sounds from ECS 16 | 17 | #### It looks like this: 18 | 19 | ![enter image description here](https://i.imgur.com/byHVBhg.gif) 20 | 21 | #### Installation 22 | 23 | Clone or Download the project, 'Add' the project to Unity Hub and open run in Unity 2019.3.6f1+. Once loaded, which might take a while to sort out all the required packages) open the scene 'Assets\Scenes\StartScene'. 24 | 25 | #### Packages and Versions Used: 26 | 27 | "com.unity.rendering.hybrid": "0.4.0-preview.8", 28 | "com.unity.jobs": "0.2.7-preview.11", 29 | "com.unity.physics": "0.3.1-preview", 30 | "com.unity.burst": "1.3.0-preview.7", 31 | "com.unity.collections": "0.7.0-preview.2", 32 | "com.unity.entities": "0.8.0-preview.8" 33 | 34 | --------------------------------------------------------------------------------