// Apply Event void IParserEventSubscriber.Apply(ConfigNode node) { mod.EmissiveMaterial = new Material(ShaderLoader.GetShader("KopernicusExpansion/EmissiveFX")); mod.EmissiveMaterial.SetColor("_Color", new Color(1f, 1f, 1f)); mod.EmissiveMaterial.SetFloat("_Brightness", 1.4f); mod.EmissiveMaterial.SetFloat("_Transparency", 0.6f); }
// constructor public ProceduralGasGiantLoader() { material = new Material(ShaderLoader.GetShader("KopernicusExpansion/ProceduralGasGiant")); material.name = "ProceduralGasGiant_" + Guid.NewGuid().ToString(); // Set default values material.SetFloat("_StormDistortion", 0f); }
public void AddAllSources() { var loader = new ShaderLoader(); loader.AddSource("a", File.ReadAllText("Shaders/FunctionA.glsl"), ShaderType.FragmentShader); loader.AddSource("b", File.ReadAllText("Shaders/MultipleFunctions.frag"), ShaderType.FragmentShader); Assert.IsTrue(loader.AddShader("shader", "a", "b")); Assert.IsTrue(loader.GetShader("shader").LinkStatusIsOk); }
// Apply Event void IParserEventSubscriber.Apply(ConfigNode node) { // Create scaled material and set proprties to defaults scaledMaterial = new Material(ShaderLoader.GetShader("KopernicusExpansion/EmissiveFX")); scaledMaterial.SetTextureScale("_EmissiveMap", Vector2.one); scaledMaterial.SetTextureOffset("_EmissiveMap", Vector2.zero); scaledMaterial.SetColor("_Color", new Color(1f, 1f, 1f)); scaledMaterial.SetFloat("_Brightness", 1.25f); scaledMaterial.SetFloat("_Transparency", 0.75f); // Assign the scaled space texture Material mat = generatedBody.scaledVersion.GetComponent <Renderer>().sharedMaterial; scaledMaterial.SetTexture("_EmissiveMap", mat.GetTexture("_MainTex")); }
public static void AddCometTail(PSystemBody body, Tail tail) { Transform scaledVersion = body.scaledVersion.transform; GameObject obj = new GameObject("CometTail"); obj.layer = GameLayers.ScaledSpace; obj.transform.parent = Kopernicus.Utility.Deactivator; MeshRenderer mr = obj.AddComponent <MeshRenderer>(); MeshFilter mf = obj.AddComponent <MeshFilter>(); Teardrop teardrop = new Teardrop(1f, (tail.length / tail.radius), 60, 90); mf.mesh = teardrop; mr.sharedMaterial = new Material(ShaderLoader.GetShader("KopernicusExpansion/CometTail")); //set default material values mr.sharedMaterial.SetColor("_TintColor", new Color(tail.color.r, tail.color.g, tail.color.b, 0.5f)); mr.sharedMaterial.SetFloat("_RimPower", tail.rimPower); mr.sharedMaterial.SetFloat("_Distortion", tail.distortion); mr.sharedMaterial.SetFloat("_AlphaDistortion", tail.alphaDistortion); mr.sharedMaterial.SetFloat("_ZDistortion", tail.zDistortion); mr.sharedMaterial.SetFloat("_VertexDistortion", 0f); mr.sharedMaterial.SetFloat("_Frequency", tail.frequency); mr.sharedMaterial.SetFloat("_Lacunarity", tail.lacunarity); mr.sharedMaterial.SetFloat("_Gain", tail.gain); mr.shadowCastingMode = ShadowCastingMode.Off; mr.receiveShadows = false; CometTailController cometController = obj.AddComponent <CometTailController>(); cometController.type = tail.type; cometController.color = tail.color; cometController.orbit = body.celestialBody.orbit; cometController.opacityCurve = tail.opacityCurve; cometController.brightnessCurve = tail.brightnessCurve; obj.transform.parent = scaledVersion; obj.transform.localPosition = Vector3.zero; obj.transform.localScale = (Vector3.one * tail.length); obj.SetActive(true); obj.layer = GameLayers.ScaledSpace; }
public static Material CreateMaterialWithShaderName(string aShaderName, bool aThroughErrorMsg) { var shader = ShaderLoader.GetShader(aShaderName); if (shader == null) { if (aThroughErrorMsg == true) { Debug.LogErrorFormat("[AmplifyOcclusion] Cannot find shader: \"{0}\"" + " Please contact [email protected]", aShaderName); } return(null); } return(new Material(shader) { hideFlags = HideFlags.DontSave }); }
private static void SetupFootprintPrefab() { footprintPrefab = new GameObject("KerbalEVAFootprint"); footprintPrefab.layer = GameLayers.LOCAL_SPACE; footprintPrefab.SetActive(false); MeshFilter mf = footprintPrefab.AddComponent <MeshFilter>(); MeshRenderer mr = footprintPrefab.AddComponent <MeshRenderer>(); mf.mesh = new Quad(0.15f, 0.3f, true); Material material = new Material(ShaderLoader.GetShader("KopernicusExpansion/Footprint")); Texture2DParser footprintMask = new Texture2DParser(); footprintMask.SetFromString("KopernicusExpansion/Textures/KerbalEVAFootprintMask"); material.SetTexture("_MainTex", footprintMask); material.SetFloat("_Opacity", 0.8f); material.SetColor("_Color", Color.black); mr.material = material; mr.shadowCastingMode = ShadowCastingMode.Off; footprintPrefab.AddComponent <EVAFootprint>(); Debug.Log("[KopernicusExpansion] Footprint prefab created"); }
public void GetInvalidName() { Assert.IsNull(loader.GetShader("invalidShader")); }