일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- CGV
- 유니티 Json 데이터 연동
- 연습
- Oculus
- 앱 배포
- 멀티플레이
- OVR
- 오브젝트 풀링
- 드래곤 플라이트 모작
- Photon Fusion
- 팀프로젝트
- 팀 프로젝트
- 유니티
- 모작
- 드래곤 플라이트
- meta xr
- 개발일지
- VR
- 오큘러스
- 유니티 UI
- XR
- 가상현실
- 포트폴리오
- ChatGPT
- 개발
- HAPTIC
- 유니티 GUI
- input system
- 길건너 친구들
- meta
Archives
- Today
- Total
EasyCastleUNITY
유니티 쉐이더 본문
쉐이더에서 사용하는 모든 수는 float다
쉐이더 코드
Shader "ljs/BlueSkyShader"
{
Properties
{
_MyColor("MyColor",Color) = (1,1,1,1)
}
SubShader
{
Tags { "RenderType"="Opaque" }
CGPROGRAM
#pragma surface surf Standard noambient
#pragma target 3.0
struct Input
{
float2 uv_MainTex;
};
fixed4 _MyColor;
void surf (Input IN, inout SurfaceOutputStandard o)
{
// o.Albedo = fixed3(_MyColor.r,_MyColor.g,_MyColor.b);
// o.Albedo = _MyColor;
// o.Albedo = _MyColor.r;
o.Emission = half3(_MyColor.r,_MyColor.g,_MyColor.b);
}
ENDCG
}
FallBack "Diffuse"
}
커스텀 라이트 모델
Shader "ljs/BlueSkyShader"
{
Properties
{
_MyColor("MyColor",Color) = (1,1,1,1)
}
SubShader
{
Tags { "RenderType"="Opaque" }
CGPROGRAM
#pragma surface surf _MyLightModel noambient
#pragma target 3.0
struct Input
{
float2 uv_MainTex;
};
fixed4 _MyColor;
void surf (Input IN, inout SurfaceOutput o)
{
// o.Albedo = fixed3(_MyColor.r,_MyColor.g,_MyColor.b);
// o.Albedo = _MyColor;
// o.Albedo = _MyColor.r;
o.Emission = half3(_MyColor.r,_MyColor.g,_MyColor.b);
}
//커스텀 라이트 모델
half4 Lighting_MyLightModel(SurfaceOutput s, half3 lightDir,half atten){
half4 final;
final.rgb = s.Emission;
final.a = s.Alpha;
return final;
}
ENDCG
}
FallBack "Diffuse"
}
Albedo는 빛에 영향을 받는 색깔, Emission은 빛에 영향을 받지 않는 색깔
들어오는 빛의 방향을 반대로 만든 다음, dot product를 실행하여,
해당 면이 빛을 얼마나 받고 있는 가에 대한 정보를 생성한다.
dot product의 결과는 -1~1
-1이라면 완전 반대편, 1이라면 정면, 0이라면 빛에서 90도에 있는 면을 의미
'개인 필기' 카테고리의 다른 글
Photon Fusion 세팅 (0) | 2023.11.15 |
---|---|
2023/08/31 개인필기 (Occulusion Culling,Input System) (0) | 2023.08.31 |
2023/08/30 필기 (Light 관련 및 씬 비동기 전환) (0) | 2023.08.30 |
2023/08/29 필기 (0) | 2023.08.29 |
2023/08/28 필기 (오브젝트 풀링 내용 포함) (0) | 2023.08.28 |