Unity/쉐이더 맨텀 2022. 12. 29. 13:37
테스트 버전 Unity 2022.1.24f1 / AmplifyShaderEditor 1.9.1.2 기본적으로 노드가 비슷하기 때문에 유니티의 기본 Shader Graph에서도 만들 수 있음. #. 불 쉐이더를 만들자! 트위터에서 아래의 글을 보고 Amplify로 만들어보기로 결정. HTML 삽입 미리보기할 수 없는 소스 #. 최종 아웃풋 미리보기 URP Unlit Opaque AlphaTest로 작성함. 일렁거리는 Dissolve만들기 우선 SmoothStep부터 만들어준다. Noise Generator로 위쪽으로 Panning되는 노이즈 하나 만들어주자. Noise 설정은 Simple, Scale 35, 0-1Range 체크. 이제 이 두개의 노드를 step으로 연결해주자. 좀 더 불꽃처럼 일렁거리는 ..
Unity/쉐이더 맨텀 2022. 5. 10. 18:07
#. 쉐이더 그래프로 만든 UI용 쉐이더 UI에 들어가는 하이라이트 등을 표현하기 위해 Shader Graph로 몇 가지 쉐이더를 만들어 사용하고 있었는데, #. 갑자기 알파가 사라졌다 Unity 2020.3 버전까지 잘 지원하다가 Unity 2021 버전부터 UI에서 Shader Graph로 만든 쉐이더를 사용하면 까만 배경이 같이 나와서 전혀 사용할 수 없는 문제가 발생. (URP 버전이 올라가면서 내부적으로 구조를 많이 바꾼 듯) #. 해결해보려 했지만.. 평소처럼 버전 올라가면서 부분을 숙지하고 처리해주면 되겠지 하고 찾아보니, 역시 포럼 글이 올라와있었다. https://forum.unity.com/threads/shader-graph-ui-image-shader-does-not-work.120..
Unity/쉐이더 맨텀 2021. 10. 25. 20:05
유니티 내장 쉐이더 그래프로 제작된 쉐이더를 적용해보면 UI에서 마스크가 작동하지 않는다. 정식 지원이 아니라서 그런듯. 한 TA분이 해당 오류를 해결하는 방법을 올려주셔서 해결했다. 쉐이더 그래프로 제작 -> 코드로 변환 -> 코드 수정 하는 귀찮은 과정을 거쳐야하고, 쉐이더를 수정하게되면 그때마다 다시 만들어줘야된다 ㅠㅠ https://www.youtube.com/watch?v=RxW7_qgkXPo 1. 쉐이더 그래프로 쉐이더를 제작 2. View Generated Code로 내용을 복사 3. 새로 일반 코드 Unlit Shader 생성 4. 내용 붙여넣음 5. 최상단 _StencilComp ("Stencil Comparison", Float) = 8 _Stencil ("Stencil ID", Flo..
Unity/쉐이더 맨텀 2020. 7. 25. 23:16
UnityFofum https://forum.unity.com/threads/sprite-shader-cutoff-to-transparency.546996/ FillAmount는 Image에서만 지원하는 기능이고 Sprite에서는 사용할 수 없다! 편법으로 cutoutShader를 사용하여 게이지를 흉내내 만들 수 있다. # 주의사항 Sprite를 9-Slice로 사용했을경우 늘린만큼 게이지가 워프해버리니 주의. 거의 못쓴다고 보면 됨. 아래의 gradient 텍스쳐를 사용하여 쉐이더의 cutout수치를 조정하는 것. 텍스쳐만 바꿔주면 원형 게이지도 만들 수 있다. 투명버전 Shader "Sprites/DefaultCutoff" { Properties { [PerRendererData] _MainTex(..
Unity/쉐이더 맨텀 2019. 9. 20. 14:35
사실 그냥 Unlit 기본 생성하고 Cull Off만 추가하면 된다. Shader "UnlitDoubleSided" { Properties { _MainTex ("Texture", 2D) = "white" {} } SubShader { Tags { "RenderType"="Opaque" } LOD 100 Cull Off Pass { CGPROGRAM #pragma vertex vert #pragma fragment frag // make fog work #pragma multi_compile_fog #include "UnityCG.cginc" struct appdata { float4 vertex : POSITION; float2 uv : TEXCOORD0; }; struct v2f { float2 uv..
Unity/쉐이더 맨텀 2018. 11. 20. 10:55
참고링크 : https://answers.unity.com/questions/590800/how-to-cullrender-to-through-a-window.html 창문과 같이 특정 오브젝트 뒤로 메쉬를 마스킹 한다. 스텐실 기능을 사용. [ 쉐이더 1 : window용 마스킹 쉐이더 ] 기본 쉐이더 만들고 LOD 200 밑에다가 12345678910 ZWrite Off ColorMask 0 Pass { Stencil { Ref 1 Comp always Pass replace } }cs [ 쉐이더 2 : 마킹킹대상이 되는 메쉬용 쉐이더 ] 기본 쉐이더 만들고 LOD 200 밑에다가 12345 Stencil { Ref 1 Comp Equal } cs