// static int dummyCnt = 0;

        public static Entity Instantiate(Entity prefab, float3 pos, quaternion rot, int replayIndex)
        {
            var em     = World.Active.EntityManager;
            var entity = em.Instantiate(prefab);

#if UNITY_EDITOR
            em.SetName(entity, "fighter");
#endif
            em.SetComponentData(entity, new Translation {
                Value = pos,
            });
            em.SetComponentData(entity, new Rotation {
                Value = rot,
            });
            em.SetComponentData(entity, new FighterComponent {
                Target           = new float3(0, 16, 0), // tmp
                LastBeamFired    = 0,
                ControllerReplay = new ControllerReplay {
                    ReplayIndex = replayIndex,
                },
            });
            var trailColor = new Color(172f / 255f, 255f / 255f, 237f / 255f);
            TrailSystem.Instantiate(entity, pos, 1f /* width */, trailColor,
                                    FighterConfig.BurnerLeft, 1f / 60f /* update_interval */);
            TrailSystem.Instantiate(entity, pos, 1f /* width */, trailColor,
                                    FighterConfig.BurnerRight, 1f / 60f /* update_interval */);
            return(entity);
        }
        void Start()
        {
            var       em     = World.Active.EntityManager;
            var       random = new Random(12345);
            const int NUM    = 1023 * 2;
            var       coltbl = new Color[] {
                Color.HSVToRGB(0.0f, 1f, 1f),
                Color.HSVToRGB(0.1f, 1f, 1f),
                Color.HSVToRGB(0.2f, 1f, 1f),
                Color.HSVToRGB(0.3f, 1f, 1f),
                Color.HSVToRGB(0.4f, 1f, 1f),
                Color.HSVToRGB(0.5f, 1f, 1f),
                Color.HSVToRGB(0.6f, 1f, 1f),
                Color.HSVToRGB(0.7f, 1f, 1f),
                Color.HSVToRGB(0.8f, 1f, 1f),
                Color.HSVToRGB(0.9f, 1f, 1f),
            };

            for (var i = 0; i < NUM; ++i)
            {
                var entity = em.CreateEntity(typeof(Translation),
                                             typeof(Rotation),
                                             typeof(TestTrailRaycasterComponent));
#if UNITY_EDITOR
                em.SetName(entity, "trailRoot");
#endif
                em.SetComponentData(entity, new TestTrailRaycasterComponent {
                    Direction = random.NextFloat3Direction(),
                });
                var col = coltbl[(i / 1023) % coltbl.Length];
                TrailSystem.Instantiate(entity, float3.zero, 0.02f /* width */, col,
                                        float3.zero, 1f / 60f /* update_interval */);
            }
        }
Example #3
0
        void Start()
        {
            var       em     = World.DefaultGameObjectInjectionWorld.EntityManager;
            var       random = new Random(12345);
            const int NUM    = 1023 * 2;
            var       coltbl = new Color[] {
                Color.HSVToRGB(0.0f, 1f, 1f),
                Color.HSVToRGB(0.1f, 1f, 1f),
                Color.HSVToRGB(0.2f, 1f, 1f),
                Color.HSVToRGB(0.3f, 1f, 1f),
                Color.HSVToRGB(0.4f, 1f, 1f),
                Color.HSVToRGB(0.5f, 1f, 1f),
                Color.HSVToRGB(0.6f, 1f, 1f),
                Color.HSVToRGB(0.7f, 1f, 1f),
                Color.HSVToRGB(0.8f, 1f, 1f),
                Color.HSVToRGB(0.9f, 1f, 1f),
            };

            for (var i = 0; i < NUM; ++i)
            {
                var entity = em.CreateEntity(ComponentType.ReadWrite <Translation>(),
                                             ComponentType.ReadWrite <Rotation>(),
                                             ComponentType.ReadWrite <TestTrailComponent>());
            #if UNITY_EDITOR
                em.SetName(entity, "testTrail");
            #endif
                em.SetComponentData(entity, new TestTrailComponent {
                    LocalVector = random.NextFloat3Direction(),
                });
                //var col = coltbl[(i/1023)%coltbl.Length];
                var col = i < 1024 ? Color.red : Color.white;
                col.a = 0.1f;
                TrailSystem.Instantiate(entity, float3.zero, 0.2f /* width */, col,
                                        float3.zero, 1f / 60f /* update_interval */);
            }
        }