• Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
  • Asset Store
  • Get Unity

UNITY ACCOUNT

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account
  • Blog
  • Forums
  • Answers
  • Evangelists
  • User Groups
  • Beta Program
  • Advisory Panel

Navigation

  • Home
  • Products
  • Solutions
  • Made with Unity
  • Learning
  • Support & Services
  • Community
    • Blog
    • Forums
    • Answers
    • Evangelists
    • User Groups
    • Beta Program
    • Advisory Panel

Unity account

You need a Unity Account to shop in the Online and Asset Stores, participate in the Unity Community and manage your license portfolio. Login Create account

Language

  • Chinese
  • Spanish
  • Japanese
  • Korean
  • Portuguese
  • Ask a question
  • Spaces
    • Default
    • Help Room
    • META
    • Moderators
    • Topics
    • Questions
    • Users
    • Badges
  • Home /
avatar image
0
Question by FogLP · Aug 13, 2020 at 05:12 PM · shadershadersshader programmingshader writingemission

How to add Emission to my custom shader?

Hi in my Endless Runner Game im using shader from this video : https://www.youtube.com/watch?v=UGYLMPOyHyM thats making curved surface effect, its working perfectly except that on my surface material i was previously using Standart Shader but this new curved Shader doesnt contain the same Functions like emission and much more, i need to add Emission to the Shader but none of the internet solutions seem to work default standart shader : https://github.com/TwoTailsGames/Unity-Built-in-Shaders/blob/master/DefaultResourcesExtra/Standard.shader , CurvedShader Script :

     Properties {
    _Color ("Color", Color) = (1,1,1,1)
    _MainTex ("Albedo (RGB)", 2D) = "white" {}![alt text][1]
   }
 
   SubShader {
 
  Tags { "RenderType"="Opaque" }
  LOD 200
 
  CGPROGRAM
 
  // Physically based Standard lighting model, and enable shadows on all light types
 
  #pragma surface surf Standard fullforwardshadows vertex:vert addshadow
  //#pragma surface surf Lambert vertex:vert addshadow
    
  // Use shader model 3.0 target, to get nicer looking lighting
  #pragma target 3.0
 
  #include "UnityCG.cginc"
 
  sampler2D _MainTex;
    
  struct Input {
  float2 uv_MainTex;
  };
    
  fixed4 _Color;
  
  // Add instancing support for this shader. You need to check 'Enable Instancing' on materials that use the shader.
  // See https://docs.unity3d.com/Manual/GPUInstancing.html for more information about instancing.
  // #pragma instancing_options assumeuniformscaling
 
  UNITY_INSTANCING_BUFFER_START(Props)
  // put more per-instance properties here
  UNITY_INSTANCING_BUFFER_END(Props)
 
  #include "CurvedSurfaceCore.cginc"
 
  void surf (Input IN, inout SurfaceOutputStandard o) 
  //void surf (Input IN, inout SurfaceOutput o) 
  {
      // Albedo comes from a texture tinted by color
      fixed4 c = tex2D (_MainTex, IN.uv_MainTex) * _Color;
      o.Albedo = c.rgb;
      o.Alpha = c.a;
  }
 
  ENDCG
 
  }
 
  FallBack "Diffuse"
 
  }![alt text][1]


[1]: /storage/temp/165461-help2.png

help2.png (60.7 kB)
Comment
Add comment
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

2 Replies

· Add your reply
  • Sort: 
avatar image
1

Answer by FogLP · Aug 14, 2020 at 02:26 PM

Okay problem fixed with these changes :

 Properties {
   _Color ("Color", Color) = (1,1,1,1)
   _MainTex ("Albedo (RGB)", 2D) = "white" {}
   _Emission("Emission", float) = 0
   [HDR] _EmissionColor("Color", Color) = (0,0,0)
   _Glossiness ("Smoothness", Range(0,1)) = 0.5
  }

  fixed4 _EmissionColor;
  half _Glossiness;

  void surf (Input IN, inout SurfaceOutputStandard o) 
 //void surf (Input IN, inout SurfaceOutput o) 
 {
     // Albedo comes from a texture tinted by color
     fixed4 c = tex2D (_MainTex, IN.uv_MainTex) * _Color;
     o.Albedo = c.rgb;
     o.Alpha = c.a;
     o.Emission = c.rgb * tex2D(_MainTex, IN.uv_MainTex).a * _EmissionColor;
     o.Smoothness = _Glossiness;
 }
Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users
avatar image
0

Answer by Destroyer720 · 2 hours ago

hey, how would you add HDR emision on this one, im new at this and I'll like to put emision to this shader:

Shader "UltraFX/FlareOverrender" {

Properties {

 _MainTex ("Particle Texture", 2D) = "black" {}

 _glow("Glow", range(0, 1000)) = 0.05

 _ap("Alpha Power", range(0, 1000)) = 0.3


}

SubShader {

 Tags {

     "Queue"="Transparent+2147479647"

     "IgnoreProjector"="True"

     "RenderType"="Transparent"

     "PreviewType"="Plane"

 }
 Cull Off Lighting Off ZWrite Off Ztest Always
 Blend One One

 Pass {
     CGPROGRAM
     #pragma vertex vert
     #pragma fragment frag
     #pragma target 2.0

     #include "UnityCG.cginc"

     sampler2D _MainTex;
     fixed4 _TintColor;

     struct appdata_t {
         float4 vertex : POSITION;
         fixed4 color : COLOR;
         float2 texcoord : TEXCOORD0;
         UNITY_VERTEX_INPUT_INSTANCE_ID
     };

     struct v2f {
         float4 vertex : SV_POSITION;
         fixed4 color : COLOR;
         float2 texcoord : TEXCOORD0;
         UNITY_VERTEX_OUTPUT_STEREO
     };

     float4 _MainTex_ST;

     v2f vert (appdata_t v)
     {
         v2f o;
         UNITY_SETUP_INSTANCE_ID(v);
         UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(o);
         o.vertex = UnityObjectToClipPos(v.vertex);
         o.color = v.color;
         o.texcoord = TRANSFORM_TEX(v.texcoord, _MainTex);
         return o;
     }

     fixed4 frag (v2f i) : SV_Target
     {
         fixed4 col;
         fixed4 tex = tex2D(_MainTex, i.texcoord);
         col.rgb = i.color.rgb * tex.rgb;
         col.a = tex.a;
         return col;
     }
     ENDCG
 }

}

}

Comment
Add comment · Share
10 |3000 characters needed characters left characters exceeded
▼
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Viewable by all users

Your answer

Hint: You can notify a user about this post by typing @username

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Welcome to Unity Answers

The best place to ask and answer questions about development with Unity.

To help users navigate the site we have posted a site navigation guide.

If you are a new user to Unity Answers, check out our FAQ for more information.

Make sure to check out our Knowledge Base for commonly asked Unity questions.

If you are a moderator, see our Moderator Guidelines page.

We are making improvements to UA, see the list of changes.



Follow this Question

Answers Answers and Comments

211 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

Dissolve Shader Problem 1 Answer

Possible for a shader to have two decal slots? 2 Answers

Triplanar shaders that use the position and rotation of the attached object (or local Triplanar shaders) 0 Answers

How can i add a alpha value to this shader? 1 Answer

Shader inverts uv map only once, how to fix it? 0 Answers

  • Anonymous
  • Sign in
  • Create
  • Ask a question
  • Spaces
  • Default
  • Help Room
  • META
  • Moderators
  • Explore
  • Topics
  • Questions
  • Users
  • Badges