示例#1
0
        protected override void SetupPQS(PQS pqs)
        {
            //disable easter eggs and color map
            DisableUnneededObjects(pqs);

            //change out heightmap for new one
            var height = pqs.GetPQSMod <PQSMod_VertexHeightMap> ();

            height.heightMap = MapSO.CreateInstance <MapSO> ();

            var heightMap = Utils.LoadTexture("Height/Duna_height.png");

            height.heightMap.CreateMap(MapSO.MapDepth.Greyscale, heightMap);
            height.scaleDeformityByRadius = false;
            height.heightMapDeformity     = 8000.0;
            GameObject.Destroy(heightMap);

            //new colormap
            var colorMapBlend = pqs.GetPQSMod <PQSMod_VertexColorMapBlend> ();

            colorMapBlend.modEnabled = false;
            var colorNoise = pqs.GetPQSMod <PQSMod_VertexSimplexNoiseColor> ();

            colorNoise.modEnabled = false;

            var land = pqs.GetPQSMod <PQSLandControl> ();

            land.createScatter = false;
            land.createColors  = false;

            var _LandClass  = pqs.transform.FindChild("_LandClass").gameObject;
            var heightColor = _LandClass.AddComponent <PQSMod_HeightColorRamp> ();

            heightColor.modEnabled = true;
            //just before the original color map, which is now disabled
            heightColor.order  = 9999990;
            heightColor.sphere = pqs;

            //new color ramp
            var ramp = new PQSMod_HeightColorRamp.ColorRamp();

            ramp.Add(Utils.Color(149, 85, 58), Utils.Color(122, 58, 30), -100f);                                //lowlands
            ramp.Add(Utils.Color(149, 85, 58), Utils.Color(122, 58, 30), 200f);                                 //end of lowlands
            ramp.Add(Utils.Color(192, 119, 87), Utils.Color(178, 79, 37), 1000f);                               //fade into midlands
            ramp.Add(Utils.Color(192, 119, 87), Utils.Color(178, 79, 37), 2100f);                               //end of midlands
            ramp.Add(Utils.Color(215, 170, 150), Utils.Color(220, 150, 120), 3000f);                            //fade into highlands
            ramp.Add(new Color(0.9f, 0.9f, 0.9f), new Color(0.75f, 0.75f, 0.75f), 3200f);                       //sharp start of snowlands
            ramp.Add(new Color(0.9f, 0.9f, 0.9f), new Color(0.75f, 0.75f, 0.75f), 5750f);                       //snowlands
            ramp.Add(new Color(0.87f, 0.87f, 0.87f), new Color(0.8f, 0.8f, 0.85f), 6000f);                      //sharp start of veryhighlands
            ramp.Add(new Color(0.87f, 0.87f, 0.87f), new Color(0.8f, 0.8f, 0.85f), 100000f);                    //veryhighlands go to the top

            heightColor.Ramp          = ramp;
            heightColor.simplex       = new Simplex(555, 5, 0.5, 5);
            heightColor.BaseColorBias = 0.2f;
            heightColor.OnSetup();

            //rebuild sphere
            pqs.RebuildSphere();
        }
示例#2
0
        protected override void SetupPQS(PQS pqs)
        {
            //new heightmap
            var height = pqs.GetPQSMod <PQSMod_VertexHeightMap> ();

            height.heightMap          = MapSO.CreateInstance <MapSO> ();
            height.heightMapDeformity = 20000;
            var heightMap = Utils.LoadTexture("Height/Moho_height.png");

            height.heightMap.CreateMap(MapSO.MapDepth.Greyscale, heightMap);
            GameObject.Destroy(heightMap);

            //setup fine details
            var simplexAbsolute = pqs.GetPQSMod <PQSMod_VertexSimplexHeightAbsolute> ();

            simplexAbsolute.deformity = 100;
            var simplex = pqs.GetPQSMod <PQSMod_VertexSimplexHeight> ();

            simplex.modEnabled = false;


            //remove old colormap
            var noiseColor = pqs.GetPQSMod <PQSMod_VertexSimplexNoiseColor> ();

            noiseColor.modEnabled = false;
            var heightColor = pqs.GetPQSMod <PQSMod_HeightColorMap> ();

            heightColor.modEnabled = false;

            var _Color    = pqs.transform.FindChild("_Color").gameObject;
            var colorRamp = _Color.AddComponent <PQSMod_HeightColorRamp> ();

            var ramp = new PQSMod_HeightColorRamp.ColorRamp();

            ramp.Add(Utils.Color(101, 48, 37), Utils.Color(104, 65, 58), -100f);
            ramp.Add(Utils.Color(118, 40, 25), Utils.Color(129, 64, 50), 3900f);
            ramp.Add(Utils.Color(155, 123, 105), Utils.Color(121, 102, 91), 13000f);
            ramp.Add(Utils.Color(90, 69, 57), Utils.Color(95, 79, 70), 17000f);
            ramp.Add(Utils.Color(115, 105, 100), Utils.Color(152, 148, 145), 20000f);
            ramp.Add(Utils.Color(115, 105, 100), Utils.Color(152, 148, 145), 100000f);

            //TODO: make ramp

            colorRamp.Ramp          = ramp;
            colorRamp.simplex       = new Simplex(666, 6, 0.6, 6);       //>:D
            colorRamp.BaseColorBias = 0.1f;
            colorRamp.modEnabled    = true;
            colorRamp.order         = 202;
            colorRamp.sphere        = pqs;

            pqs.RebuildSphere();
        }
        protected override void SetupPQS(PQS pqs)
        {
            var fractal = pqs.GetPQSMod <PQSMod_VertexPlanet> ();

            fractal.deformity = 3500;
            fractal.seed      = 425364;
            foreach (var lc in fractal.landClasses)
            {
                if (lc.name == "AbyPl")
                {
                    lc.baseColor  = Utils.Color(100, 203, 173);
                    lc.colorNoise = Utils.Color(92, 224, 185);
                }
                if (lc.name == "Beach")
                {
                    lc.baseColor  = Utils.Color(96, 196, 169);
                    lc.colorNoise = Utils.Color(96, 196, 169);
                }
                if (lc.name == "Grass")
                {
                    lc.baseColor  = Utils.Color(44, 94, 84);
                    lc.colorNoise = Utils.Color(41, 111, 91);
                }
                if (lc.name == "Snow")
                {
                    lc.baseColor  = Utils.Color(66, 104, 96);
                    lc.colorNoise = Utils.Color(76, 124, 114);
                }
            }

            var land = pqs.GetPQSMod <PQSLandControl> ();

            land.createScatter = false;

            pqs.RebuildSphere();
        }
示例#4
0
        protected override void SetupPQS(PQS pqs)
        {
            //new heightmap
            var height = pqs.GetPQSMod <PQSMod_VertexHeightMap> ();

            height.heightMap = MapSO.CreateInstance <MapSO> ();
            var heightMap = Utils.LoadTexture("Height/Laythe_height.png");

            height.heightMap.CreateMap(MapSO.MapDepth.Greyscale, heightMap);
            GameObject.Destroy(heightMap);

            //all that cool stuff
            SetupLaythe(pqs);

            //rebuild sphere
            pqs.RebuildSphere();
        }
示例#5
0
        protected override void SetupPQS(PQS pqs)
        {
            var dunaPQS = Utils.GetCelestialBody("Duna").pqsController;

            pqs.surfaceMaterial = new Material(dunaPQS.surfaceMaterial);

            var _LandClass = pqs.transform.FindChild("_LandClass").gameObject;

            //disable current colormap
            var noiseColor = pqs.GetPQSMod <PQSMod_VertexSimplexNoiseColor> ();

            noiseColor.modEnabled = false;
            var colorBlend = pqs.GetPQSMod <PQSMod_VertexColorMapBlend> ();

            colorBlend.modEnabled = false;
            var land = pqs.GetPQSMod <PQSLandControl> ();

            land.modEnabled = false;

            //add new colorRamp
            var colorRamp = _LandClass.AddComponent <PQSMod_HeightColorRamp> ();

            colorRamp.modEnabled = true;
            colorRamp.order      = 9999990;
            colorRamp.sphere     = pqs;

            var ramp = new PQSMod_HeightColorRamp.ColorRamp();

            ramp.Add(Utils.Color(235, 171, 74), Utils.Color(235, 171, 74), -5000f);                     //oceans
            ramp.Add(Utils.Color(235, 171, 74), Utils.Color(235, 171, 74), -50f);                       //end of oceans
            ramp.Add(Utils.Color(155, 135, 88), Utils.Color(175, 149, 87), -10f);                       //start of beaches
            ramp.Add(Utils.Color(155, 135, 88), Utils.Color(175, 149, 87), 100f);                       //end of beaches
            ramp.Add(Utils.Color(212, 171, 75), Utils.Color(189, 158, 86), 200f);                       //start of lowlands
            ramp.Add(Utils.Color(189, 158, 86), Utils.Color(155, 120, 60), 2000f);                      //fade into midlands
            ramp.Add(Utils.Color(155, 120, 60), Utils.Color(172, 139, 78), 5000f);                      //fade into highlands
            ramp.Add(Utils.Color(223, 189, 129), Utils.Color(220, 194, 149), 5500f);                    //quickly fade out to mountain tops
            ramp.Add(Utils.Color(220, 194, 149), Utils.Color(186, 184, 180), 20000f);                   //top of the curve

            colorRamp.Ramp          = ramp;
            colorRamp.BaseColorBias = 0.5f;
            colorRamp.simplex       = new Simplex(654, 6, 0.35, 4);
            colorRamp.OnSetup();

            //new heightmap
            var height = pqs.GetPQSMod <PQSMod_VertexHeightMap> ();

            height.scaleDeformityByRadius = false;
            height.heightMapOffset        = -500.0;
            height.heightMapDeformity     = 7000.0;

            height.heightMap = MapSO.CreateInstance <MapSO> ();

            var heightMap = Utils.LoadTexture("Height/Eve_height.png");

            height.heightMap.CreateMap(MapSO.MapDepth.Greyscale, heightMap);
            GameObject.Destroy(heightMap);

            //setup ocean
            PQS ocean = null;

            foreach (var child in pqs.ChildSpheres)
            {
                Log(child.gameObject.name);
                if (child.gameObject.name == "EveOcean")
                {
                    ocean = child;
                }
            }
            if (ocean != null)
            {
                Log("EveOcean found!");

                var OceanFX = ocean.transform.FindChild("OceanFX").gameObject;

                ocean.surfaceMaterial.color = Utils.Color(235, 171, 74);
                ocean.surfaceMaterial.SetColor("_ColorFromSpace", Utils.Color(235, 171, 74));
            }
        }
示例#6
0
        void SetupLaythe(PQS pqs)
        {
            var land = pqs.GetPQSMod <PQSLandControl> ();

            land.createScatter = false;

            var kerbinPQS = Utils.GetCelestialBody("Kerbin").pqsController;

            //for grass and stuff
            pqs.surfaceMaterial = new Material(kerbinPQS.surfaceMaterial);

            var newlcs = new List <PQSLandControl.LandClass> (land.landClasses);

            foreach (var lc in land.landClasses)
            {
                if (lc.landClassName == "Mud")
                {
                    lc.color      = Utils.Color(128, 115, 65);
                    lc.noiseColor = Utils.Color(128, 115, 65);
                }
                if (lc.landClassName == "BaseLand")
                {
                    lc.color      = Utils.Color(51, 92, 51);
                    lc.noiseColor = Utils.Color(51, 102, 51);
                }
                if (lc.landClassName == "SeaFloor")
                {
                    lc.color      = Utils.Color(0, 90, 0);
                    lc.noiseColor = Utils.Color(0, 115, 0);
                }
                if (lc.landClassName == "Beach")
                {
                    lc.color      = Utils.Color(202, 189, 139);
                    lc.noiseColor = Utils.Color(202, 189, 139);
                }
                if (lc.landClassName == "IceCaps" || lc.landClassName == "Snow")                  //die! >:C
                {
                    newlcs.Remove(lc);
                }
            }
            land.landClasses = newlcs.ToArray();
            land.OnSetup();

            PQS ocean = null;

            foreach (var child in pqs.ChildSpheres)
            {
                Log(child.gameObject.name);
                if (child.gameObject.name == "LaytheOcean")
                {
                    ocean = child;
                }
            }
            if (ocean != null)
            {
                Log("LaytheOcean found!");

                var OceanFX = ocean.transform.FindChild("OceanFX").gameObject;

                var fx       = ocean.GetPQSMod <PQSMod_OceanFX> ();
                var textures = fx.watermain;

                Shader emissiveQuadShader = Utils.LoadShader("Shaders/Compiled-EmissiveQuad.shader");
                var    emissiveMaterial   = new Material(emissiveQuadShader);

                ocean.surfaceMaterial = emissiveMaterial;
                ocean.surfaceMaterial.SetTextureScale("_EmissiveMap", new Vector2(0.2f, 0.2f));

                var emissiveFx = OceanFX.AddComponent <PQSMod_EmissiveOceanFX> ();
                emissiveFx.order      = 101;
                emissiveFx.modEnabled = true;
                emissiveFx.sphere     = ocean;

                emissiveFx.color      = Utils.Color(56, 181, 69, 255);
                emissiveFx.textures   = textures;
                emissiveFx.brightness = 2f;
                emissiveFx.alpha      = 0.15f;

                emissiveFx.OnSetup();
            }
            else
            {
                LogError("LaytheOcean not found... :C");                   //:'C
            }
        }
示例#7
0
        protected override void SetupPQS(PQS pqs)
        {
            var color = pqs.GetPQSMod <PQSMod_VertexSimplexNoiseColor> ();

            color.modEnabled = false;

            var land = pqs.GetPQSMod <PQSLandControl> ();

            land.modEnabled = false;

            var simplex = pqs.GetPQSMod <PQSMod_VertexSimplexHeightAbsolute> ();

            simplex.deformity   = 1000;
            simplex.frequency   = 4;
            simplex.octaves     = 4;
            simplex.persistence = 0.9;
            simplex.seed        = 45276;
            simplex.OnSetup();

            var heightNoise = pqs.GetPQSMod <PQSMod_VertexHeightNoise> ();

            heightNoise.modEnabled = false;

            var _Height = pqs.transform.FindChild("_Height").gameObject;
            var _Color  = pqs.transform.FindChild("_Color").gameObject;

            var noise = _Height.AddComponent <PQSMod_VertexSimplexHeightAbsolute>();

            noise.modEnabled  = true;
            noise.order       = 8;
            noise.sphere      = pqs;
            noise.deformity   = 20000;
            noise.frequency   = 0.65;
            noise.octaves     = 4;
            noise.persistence = 0.55;
            noise.seed        = 45276;

            var noise2 = _Height.AddComponent <PQSMod_VertexSimplexHeightAbsolute>();

            noise2.modEnabled  = true;
            noise2.order       = 9;
            noise2.sphere      = pqs;
            noise2.deformity   = 4000;
            noise2.frequency   = 3;
            noise2.octaves     = 4;
            noise2.persistence = 0.65;
            noise2.seed        = 45276;

            noise.OnSetup();

            var flatten = _Height.AddComponent <PQSMod_FlattenOcean> ();

            flatten.modEnabled  = true;
            flatten.order       = 12;
            flatten.sphere      = pqs;
            flatten.oceanRadius = 0.0;
            flatten.OnSetup();

            var colorRamp = _Color.AddComponent <PQSMod_HeightColorRamp> ();

            colorRamp.modEnabled = true;
            colorRamp.order      = 110;
            colorRamp.sphere     = pqs;

            var ramp = new PQSMod_HeightColorRamp.ColorRamp();

            ramp.Add(Utils.Color(30, 30, 30), Utils.Color(45, 45, 45), -100f);
            ramp.Add(Utils.Color(150, 150, 150), Utils.Color(200, 200, 200), 20000);
            ramp.Add(Utils.Color(150, 150, 150), Utils.Color(200, 200, 200), 60000);

            colorRamp.Ramp          = ramp;
            colorRamp.simplex       = new Simplex(45267, 3, 0.5, 8);
            colorRamp.BaseColorBias = 0.45f;

            pqs.RebuildSphere();
        }
示例#8
0
        protected override void SetupPQS(PQS pqs)
        {
            //MUA HA HA HA...
            if (SpaceKraken)
            {
                //disable the special craters
                var decals = pqs.GetPQSMods <PQSMod_MapDecal> ();
                foreach (var decal in decals)
                {
                    decal.modEnabled = false;
                }
                var flattens = pqs.GetPQSMods <PQSMod_MapDecal> ();
                foreach (var flatten in flattens)
                {
                    flatten.modEnabled = false;
                }

                //disable the heightmap, scatter, and colormap
                var scatter = pqs.GetPQSMod <PQSLandControl> ();
                scatter.modEnabled = false;
                var heightNoise = pqs.GetPQSMod <PQSMod_VertexHeightNoise> ();
                heightNoise.modEnabled = false;

                //collect gameobjects
                var _Color  = pqs.transform.FindChild("_Color").gameObject;
                var _Height = pqs.transform.FindChild("_Height").gameObject;


                var simplexColor = pqs.GetPQSMod <PQSMod_VertexSimplexNoiseColor> ();
                var simplex      = pqs.GetPQSMod <PQSMod_VertexSimplexHeightAbsolute> ();

                simplexColor.modEnabled = false;

                //the guy can't have perfectly flat skin, can he?
                simplex.deformity   = 50;
                simplex.frequency   = 4;
                simplex.octaves     = 4;
                simplex.persistence = 0.4;
                simplex.seed        = 4;
                simplex.modEnabled  = true;
                simplex.order       = 6;
                simplex.OnSetup();

                var height = _Height.AddComponent <PQSMod_VertexHeightMap> ();
                height.heightMap              = CreateMapSO(Utils.LoadTexture("Height/Kraken_height.png"));
                height.heightMapDeformity     = 25000;
                height.heightMapOffset        = 50.0;
                height.scaleDeformityByRadius = false;
                height.modEnabled             = true;
                height.order  = 5;
                height.sphere = pqs;
                height.OnSetup();

                var color = _Height.AddComponent <PQSMod_VertexColorMap> ();
                color.vertexColorMap = CreateColorMapSO(Utils.LoadTexture("Scaled/Kraken_color.png"));
                color.modEnabled     = true;
                color.order          = 200;
                color.sphere         = pqs;
                color.OnSetup();

                Log("THE KRAKEN HAS RISEN! >:D");
            }
            else
            {
                Log("The kraken decided to sleep in today... :'(");
            }

            pqs.RebuildSphere();
        }
示例#9
0
        //used to generate the texture
        private void BuildKraken(PQS pqs)
        {
            var _Color  = pqs.transform.FindChild("_Color").gameObject;
            var _Height = pqs.transform.FindChild("_Height").gameObject;

            //height stuff
            var skin      = pqs.GetPQSMod <PQSMod_VertexSimplexHeightAbsolute> ();
            var tentacles = _Height.AddComponent <PQSMod_VertexHeightMap> ();
            var eyes      = _Height.AddComponent <PQSMod_VertexHeightMap> ();

            //the guy can't have perfectly flat skin, can he?
            skin.deformity   = 50;
            skin.frequency   = 4;
            skin.octaves     = 4;
            skin.persistence = 0.4;
            skin.seed        = 4;
            skin.modEnabled  = true;
            skin.order       = 20;
            skin.OnSetup();

            //extrude the tentacles from it
            tentacles.heightMap              = CreateMapSO(Utils.LoadTexture("Kraken/tentacles_height.png"));
            tentacles.heightMapDeformity     = 25000;
            tentacles.scaleDeformityByRadius = false;
            tentacles.heightMapOffset        = 0.0;
            tentacles.modEnabled             = true;
            tentacles.order  = 21;
            tentacles.sphere = pqs;
            tentacles.OnSetup();

            //then extrude the eyes
            eyes.heightMap              = CreateMapSO(Utils.LoadTexture("Kraken/eyes_height.png"));
            eyes.heightMapDeformity     = 2000;
            eyes.scaleDeformityByRadius = false;
            eyes.heightMapOffset        = 0.0;
            eyes.modEnabled             = true;
            eyes.order  = 22;
            eyes.sphere = pqs;
            eyes.OnSetup();

            //color stuff
            var skinColor      = pqs.GetPQSMod <PQSMod_VertexSimplexNoiseColor> ();
            var tentaclesColor = _Color.AddComponent <PQSMod_VertexColorOverlay> ();
            var eyesColor      = _Color.AddComponent <PQSMod_VertexColorOverlay> ();

            skinColor.blend       = 0.4f;
            skinColor.frequency   = 4;
            skinColor.octaves     = 4;
            skinColor.persistence = 0.4;
            skinColor.seed        = 4;
            skinColor.order       = 200;
            skinColor.colorStart  = Utils.Color(67, 99, 14);
            skinColor.colorEnd    = Utils.Color(67, 109, 14);
            skinColor.OnSetup();

            //color the tentacles
            tentaclesColor.overlay    = CreateColorMapSO(Utils.LoadTexture("Kraken/tentacles_color.png"));
            tentaclesColor.modEnabled = true;
            tentaclesColor.order      = 201;
            tentaclesColor.sphere     = pqs;
            tentaclesColor.OnSetup();

            //color the eyes
            eyesColor.overlay    = CreateColorMapSO(Utils.LoadTexture("Kraken/eyes_color.png"));
            eyesColor.modEnabled = true;
            eyesColor.order      = 202;
            eyesColor.sphere     = pqs;
            eyesColor.OnSetup();
        }