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(); }
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(); }
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(); }
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)); } }
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 } }
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(); }
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(); }
//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(); }