public static SgtLightningSpawner CreateLightningSpawner(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject       = SgtHelper.CreateGameObject("Lightning Spawner", layer, parent, localPosition, localRotation, localScale);
        var lightningSpawner = gameObject.AddComponent <SgtLightningSpawner>();

        return(lightningSpawner);
    }
Beispiel #2
0
    public static SgtDisplacedTerrain CreateDisplacedTerrain(Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject = SgtHelper.CreateGameObject("Displaced Terrain", parent, localPosition, localRotation, localScale);
        var terrain    = gameObject.AddComponent <SgtDisplacedTerrain>();

        return(terrain);
    }
Beispiel #3
0
    public static SgtProminence CreateProminence(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject = SgtHelper.CreateGameObject("Prominence", layer, parent, localPosition, localRotation, localScale);
        var prominence = gameObject.AddComponent <SgtProminence>();

        return(prominence);
    }
Beispiel #4
0
    public static SgtSingularity CreateSingularity(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject  = SgtHelper.CreateGameObject("Singularity", layer, parent, localPosition, localRotation, localScale);
        var singularity = gameObject.AddComponent <SgtSingularity>();

        return(singularity);
    }
Beispiel #5
0
    public static SgtCameraDepth CreateDepthCamera(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject = SgtHelper.CreateGameObject("Camera Depth", layer, parent, localPosition, localRotation, localScale);
        var flare      = gameObject.AddComponent <SgtCameraDepth>();

        return(flare);
    }
Beispiel #6
0
    public static SgtRing CreateRing(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject = SgtHelper.CreateGameObject("Ring", layer, parent, localPosition, localRotation, localScale);
        var ring       = gameObject.AddComponent <SgtRing>();

        return(ring);
    }
Beispiel #7
0
    public static SgtNebulaStarfield CreateNebulaStarfield(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject = SgtHelper.CreateGameObject("Nebula Starfield", layer, parent, localPosition, localRotation, localScale);
        var starfield  = gameObject.AddComponent <SgtNebulaStarfield>();

        return(starfield);
    }
Beispiel #8
0
    public static SgtAccretion CreateAccretion(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject = SgtHelper.CreateGameObject("Accretion", layer, parent, localPosition, localRotation, localScale);
        var accretion  = gameObject.AddComponent <SgtAccretion>();

        return(accretion);
    }
Beispiel #9
0
    public static SgtCustomBelt CreateCustomBelt(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject = SgtHelper.CreateGameObject("Custom Belt", layer, parent, localPosition, localRotation, localScale);
        var belt       = gameObject.AddComponent <SgtCustomBelt>();

        return(belt);
    }
Beispiel #10
0
    public static SgtCustomStarfield CreateCustomStarfield(Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject = SgtHelper.CreateGameObject("Custom Starfield", parent, localPosition, localRotation, localScale);
        var starfield  = gameObject.AddComponent <SgtCustomStarfield>();

        return(starfield);
    }
    public static SgtJovian CreateJovian(Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject = SgtHelper.CreateGameObject("Jovian", parent, localPosition, localRotation, localScale);
        var jovian     = gameObject.AddComponent <SgtJovian>();

        return(jovian);
    }
Beispiel #12
0
    public static SgtAurora CreateAurora(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject = SgtHelper.CreateGameObject("Aurora", layer, parent, localPosition, localRotation, localScale);
        var aurora     = gameObject.AddComponent <SgtAurora>();

        return(aurora);
    }
Beispiel #13
0
    public static SgtSimpleBelt CreateSimpleBelt(Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject = SgtHelper.CreateGameObject("Simple Belt", parent, localPosition, localRotation, localScale);
        var belt       = gameObject.AddComponent <SgtSimpleBelt>();

        return(belt);
    }
Beispiel #14
0
    public static SgtDebrisGrid CreateDebrisGrid(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject = SgtHelper.CreateGameObject("Debris Grid", layer, parent, localPosition, localRotation, localScale);
        var debrisGrid = gameObject.AddComponent <SgtDebrisGrid>();

        return(debrisGrid);
    }
    public static SgtCloudsphere CreateCloudsphere(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject  = SgtHelper.CreateGameObject("Cloudsphere", layer, parent, localPosition, localRotation, localScale);
        var cloudsphere = gameObject.AddComponent <SgtCloudsphere>();

        return(cloudsphere);
    }
Beispiel #16
0
    public static SgtThruster CreateThruster(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject = SgtHelper.CreateGameObject("Thruster", layer, parent, localPosition, localRotation, localScale);
        var thruster   = gameObject.AddComponent <SgtThruster>();

        return(thruster);
    }
Beispiel #17
0
    public static SgtBox CreateBox(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
        var gameObject = SgtHelper.CreateGameObject("Cube", layer, parent, localPosition, localRotation, localScale);
        var cube       = gameObject.AddComponent <SgtBox>();

        return(cube);
    }
Beispiel #18
0
    public SgtCustomBelt MakeEditableCopy(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
#if UNITY_EDITOR
        SgtHelper.BeginUndo("Create Editable Belt Copy");
#endif
        var gameObject = SgtHelper.CreateGameObject("Editable Belt Copy", layer, parent, localPosition, localRotation, localScale);
        var customBelt = SgtHelper.AddComponent <SgtCustomBelt>(gameObject, false);
        var quads      = new List <SgtBeltAsteroid>();
        var quadCount  = BeginQuads();

        for (var i = 0; i < quadCount; i++)
        {
            var asteroid = SgtClassPool <SgtBeltAsteroid> .Pop() ?? new SgtBeltAsteroid();

            NextQuad(ref asteroid, i);

            quads.Add(asteroid);
        }

        EndQuads();

        // Copy common settings
        if (Lights != null)
        {
            customBelt.Lights = new List <Light>(Lights);
        }

        if (Shadows != null)
        {
            customBelt.Shadows = new List <SgtShadow>(Shadows);
        }

        customBelt.Color         = Color;
        customBelt.Brightness    = Brightness;
        customBelt.MainTex       = MainTex;
        customBelt.HeightTex     = HeightTex;
        customBelt.Layout        = Layout;
        customBelt.LayoutColumns = LayoutColumns;
        customBelt.LayoutRows    = LayoutRows;

        if (Rects != null)
        {
            customBelt.Rects = new List <Rect>(Rects);
        }

        customBelt.RenderQueue       = RenderQueue;
        customBelt.RenderQueueOffset = RenderQueueOffset;
        customBelt.OrbitOffset       = OrbitOffset;
        customBelt.OrbitSpeed        = OrbitSpeed;

        // Copy custom settings
        customBelt.Asteroids = quads;

        // Update
        customBelt.UpdateMaterial();
        customBelt.UpdateMeshesAndModels();

        return(customBelt);
    }
Beispiel #19
0
    public SgtCustomStarfield MakeEditableCopy(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
#if UNITY_EDITOR
        SgtHelper.BeginUndo("Create Editable Starfield Copy");
#endif
        var gameObject      = SgtHelper.CreateGameObject("Editable Starfield Copy", layer, parent, localPosition, localRotation, localScale);
        var customStarfield = SgtHelper.AddComponent <SgtCustomStarfield>(gameObject, false);
        var quads           = new List <SgtPointStar>();
        var starCount       = BeginQuads();

        for (var i = 0; i < starCount; i++)
        {
            var quad = SgtClassPool <SgtPointStar> .Pop() ?? new SgtPointStar();

            NextQuad(ref quad, i);

            quads.Add(quad);
        }

        EndQuads();

        // Copy common settings
        customStarfield.Color             = Color;
        customStarfield.Brightness        = Brightness;
        customStarfield.MainTex           = MainTex;
        customStarfield.Layout            = Layout;
        customStarfield.LayoutColumns     = LayoutColumns;
        customStarfield.LayoutRows        = LayoutRows;
        customStarfield.RenderQueue       = RenderQueue;
        customStarfield.RenderQueueOffset = RenderQueueOffset;
        customStarfield.FollowCameras     = FollowCameras;
        customStarfield.Softness          = Softness;
        customStarfield.Wrap              = Wrap;
        customStarfield.WrapSize          = WrapSize;
        customStarfield.Stretch           = Stretch;
        customStarfield.StretchVector     = StretchVector;
        customStarfield.StretchScale      = StretchScale;
        customStarfield.FadeNear          = FadeNear;
        customStarfield.FadeNearRadius    = FadeNearRadius;
        customStarfield.FadeNearThickness = FadeNearThickness;
        customStarfield.FadeNearTex       = FadeNearTex;
        customStarfield.FadeFar           = FadeFar;
        customStarfield.FadeFarRadius     = FadeFarRadius;
        customStarfield.FadeFarThickness  = FadeFarThickness;
        customStarfield.FadeFarTex        = FadeFarTex;
        customStarfield.Pulse             = Pulse;
        customStarfield.PulseOffset       = PulseOffset;
        customStarfield.PulseSpeed        = PulseSpeed;

        // Copy custom settings
        customStarfield.Stars = quads;

        // Update
        customStarfield.UpdateMaterial();
        customStarfield.UpdateMeshesAndModels();

        return(customStarfield);
    }
    public SgtCustomStarfield MakeEditableCopy(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
#if UNITY_EDITOR
        SgtHelper.BeginUndo("Create Editable Starfield Copy");
#endif

        var gameObject      = SgtHelper.CreateGameObject("Editable Starfield Copy", layer, parent, localPosition, localRotation, localScale);
        var customStarfield = SgtHelper.AddComponent <SgtCustomStarfield>(gameObject, false);
        var stars           = default(List <SgtStarfieldStar>);
        var pool            = default(bool);

        CalculateStars(out stars, out pool);

        if (stars != null)
        {
            if (pool == true)
            {
                customStarfield.Stars = stars;
            }
            else
            {
                for (var i = 0; i < stars.Count; i++)
                {
                    var star = stars[i];

                    if (star != null)
                    {
                        var newStar = SgtClassPool <SgtStarfieldStar> .Pop() ?? new SgtStarfieldStar(); customStarfield.Stars.Add(star);

                        newStar.CopyFrom(star);
                    }
                }
            }
        }

        customStarfield.Color             = Color;
        customStarfield.Brightness        = Brightness;
        customStarfield.RenderQueue       = RenderQueue;
        customStarfield.RenderQueueOffset = RenderQueueOffset;
        customStarfield.Age                = Age;
        customStarfield.TimeScale          = TimeScale;
        customStarfield.Softness           = Softness;
        customStarfield.AutoRegenerate     = AutoRegenerate;
        customStarfield.StretchToObservers = StretchToObservers;
        customStarfield.StretchOverride    = StretchOverride;
        customStarfield.StretchVector      = StretchVector;
        customStarfield.StretchScale       = StretchScale;
        customStarfield.FadeNear           = FadeNear;
        customStarfield.FadeNearRadius     = FadeNearRadius;
        customStarfield.FadeNearThickness  = FadeNearThickness;
        customStarfield.FadeFar            = FadeFar;
        customStarfield.FadeFarRadius      = FadeFarRadius;
        customStarfield.FadeFarThickness   = FadeFarThickness;
        customStarfield.FollowObservers    = FollowObservers;
        customStarfield.AllowPulse         = AllowPulse;

        return(customStarfield);
    }
    public static SgtSpacetimeWell Create(SgtSpacetime spacetime)
    {
        var gameObject = SgtHelper.CreateGameObject("Well", spacetime.transform);
        var well       = gameObject.AddComponent <SgtSpacetimeWell>();

        spacetime.Wells.Add(well);

        return(well);
    }
Beispiel #22
0
    public static SgtSpacetimeWell Create(SgtSpacetime spacetime)
    {
        if (spacetime != null)
        {
            var gameObject = SgtHelper.CreateGameObject("Well", spacetime.gameObject.layer, spacetime.transform);
            var well       = gameObject.AddComponent <SgtSpacetimeWell>();

            spacetime.AddWell(well);

            return(well);
        }

        return(null);
    }
Beispiel #23
0
    public SgtCustomStarfield MakeEditableCopy(Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
#if UNITY_EDITOR
        SgtHelper.BeginUndo("Create Editable Starfield Copy");
#endif

        var gameObject      = SgtHelper.CreateGameObject("Editable Starfield Copy", parent, localPosition, localRotation, localScale);
        var customStarfield = SgtHelper.AddComponent <SgtCustomStarfield>(gameObject, false);
        var stars           = default(List <SgtStarfieldStar>);
        var pool            = default(bool);

        CalculateStars(out stars, out pool);

        if (stars != null)
        {
            if (pool == true)
            {
                customStarfield.Stars = stars;
            }
            else
            {
                for (var i = 0; i < stars.Count; i++)
                {
                    var star = stars[i];

                    if (star != null)
                    {
                        var newStar = SgtClassPool <SgtStarfieldStar> .Pop() ?? new SgtStarfieldStar(); customStarfield.Stars.Add(star);

                        newStar.CopyFrom(star);
                    }
                }
            }
        }

        customStarfield.Color           = Color;
        customStarfield.Brightness      = Brightness;
        customStarfield.FollowObservers = FollowObservers;

        return(customStarfield);
    }
    public SgtCustomBelt MakeEditableCopy(int layer, Transform parent, Vector3 localPosition, Quaternion localRotation, Vector3 localScale)
    {
#if UNITY_EDITOR
        SgtHelper.BeginUndo("Create Editable Belt Copy");
#endif
        var gameObject = SgtHelper.CreateGameObject("Editable Belt Copy", layer, parent, localPosition, localRotation, localScale);
        var customBelt = SgtHelper.AddComponent <SgtCustomBelt>(gameObject, false);
        var asteroids  = default(List <SgtBeltAsteroid>);
        var pool       = default(bool);

        CalculateAsteroids(out asteroids, out pool);

        if (asteroids != null)
        {
            if (pool == true)
            {
                customBelt.Asteroids = asteroids;
            }
            else
            {
                for (var i = 0; i < asteroids.Count; i++)
                {
                    var asteroid = asteroids[i];

                    if (asteroid != null)
                    {
                        var newAsteroid = SgtClassPool <SgtBeltAsteroid> .Pop() ?? new SgtBeltAsteroid(); customBelt.Asteroids.Add(asteroid);

                        newAsteroid.CopyFrom(asteroid);
                    }
                }
            }
        }

        customBelt.Color      = Color;
        customBelt.Brightness = Brightness;

        return(customBelt);
    }