SlideShare une entreprise Scribd logo
1  sur  99
Télécharger pour lire hors ligne
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용
물리 기반 쉐이더의 허와 실
물리 기반 쉐이더를 가르쳐 보았습니다
정종필
1992. Hqteam – 충무공전 / 임진록1 , 2 / 천년의 신화 등
조이온 Art Director – 임진록 온라인 거상 등
Ndoors Technical Art Director – 군주/ 삼국지를 품다/ 영웅의 군단 등
청강문화산업대학교 게임콘텐츠 스쿨 교수
대충 살아가는 게임개발자
http://chulin28ho.egloos.com
http://chulin28ho.tistory.com/
게임 개발 포에버 / 대마왕
http://gamedevforever.com
그래서 물리 기반 쉐이더 (PBS)가 뭔가요?
PBR이라고도 합니다만
PBS (Physically Based Shader )의 마케팅 용어
보다 더 정확한 라이팅 표현이 가능하다!
아티스트들이 신경을 덜 써도 된다!
보다 더 직관적이다!
Shader 하나로 모든 재질을 표현!
여기서 PBS의 큰 특징
• 요새 PBS 강연문서는 꽤 많으니까
요
• 좋은 동영상도 많이 있습니다.
• 깊게 들어가면 너무 깊어지니까
쉽게 특징적인 것 두 개만 짚어봅시
다
1. Energy Conservation
거울에는 그림자가 생길까요?
네 여자친구처럼
• 빛은 투과, 흡수, 반사등의 성질을 지닙니다만
일단 반사만 생각합시다
• 반사는 크게 두 종류로 나눌 수 있습니다.
• Diffuse : 난반사
• Specular : 정반사
• 난반사와 정반사는 상호 보완 관계를 가지고 있습니다
정반
사
난반
사
정반사
난반사
• 즉 거울 자체는 빛을 비춰도 밝아지지 않습니다
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용
• 물론 실제 거울은 이상적인 100% 정반사가 아니고,
각종 불순물과 먼지 손자국 등등 때문에 밝아지긴 하죠
어쨌건 기존의 구형 라이트 방식은 이런
정반사 (Specular)와 난반사 (Diffuse) 를
감각적으로 따로 계산해서
더하는 방식이었습니다.
대충 스페큘러를
이 정도 넣고
대충 디퓨즈를
이 정도 넣으면
정반사
난반사
100%
거기다가 정반사는 무려 흰 공이었죠
ㅎㅎ
잘못된 경우
옳은 경우 - PBR
2. Specular Color
• 금속은 고유의 스페큘러 칼라를 가지고 있고
• 비금속은 그냥 흰색의 스페큘러 칼라를 가지고 있습니다
• 표면의 공유 전자 (Shared Electron) 때문이라는데 뭐… 난누군가 여긴어딘
가
http://www.gamedevforever.com/17
• Diffuse Color + Specular Color
• 금속은 칼라 스페큘러
• Diffuse Color + Specular Color
• 비금속은 흰색 스페큘러
• 비금속
• 1- Diffuse Color = Specular Color
https://area.autodesk.com/tutorials/natascha_hybrid_texturing
• 그래서 PBS에서는
Metal 이냐 아니냐를 구분하는 기능이 생겼습니다
Metal
DiffuseBRDF *0 , SpecularBRDF * Albedo
DiElectric
DiffuseBRDF * Albedo , SpecularBRDF * 0.5
즉 자동으로 출력되는 Albedo의 위치가 결정되는 것이 PBS
잘못된 경우
슬쩍 이 두 가지만 봐도
• PBS는 과연 대단합니다
• 추가로 프레넬 리플렉션이라던가
• 미세 표면이라던가
• 감마 코렉션이라던가
• 하는 것들 역시 ‘옳게’ 처리되고 있습니다
• 보다 더 정확한 라이팅 표현이 가능하다!
• 아티스트들이 신경을 덜 써도 된다!
• 보다 더 직관적이다!
• Shader 하나로 모든 재질을 표현!
즉 이 말의 의미는
• 보다 더 정확한 라이팅 표현이 가능하다!
• > 물리적으로 정확한 라이팅을 원한다면
• 아티스트들이 신경을 덜 써도 된다!
• > 물리적으로 정확한 라이팅을 표현한다면
• 보다 더 직관적이다!
• > 물리적으로 정확한 이론을 알고 있다면
• Shader 하나로 모든 재질을 표현!
• > 물리적으로 옳은 재질이라면
물론 이 쪽 방향은 궁극적으로 맞는 방향이긴 합니다.
제대로 알고 쓰면 좋은 결과가 나옵니다
PBS를 사용하면서 구형 방식으로 텍스쳐를 제작하면 안됩니다
새로운 방식을 이해하면서 텍스쳐를 그려야만 합니다
그런데 말입니다
‘정말’ 위의 것이 더 예쁩니까?
‘저는 아래 것이 더 예뻐요’ 라는 의견은 ‘틀린’ 의견입니까?
오른쪽 이미지는 옳지 않지만
그렇게 심각하게 이상합니까?
언제나 프로그래머 분들이 뭔가 조금
부러워하고 있는
‘예쁘다’ 의 기준을 말하고 있습니다.
물론 이건 물리적으로 옳은 느낌과 비슷해 지려는 과장이라고 쳐도…
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용
게다가 세상에는 NPR이라고 하는 당당한 분야도 존재합니다
(Non Photo Realistic)
길티기어 xrd-sign-「애니메이션처럼 보이는 3d그래픽」의 비밀
• 보다 더 정확한 라이팅 표현이 가능하다!
• > 물리적으로 정확한 라이팅을 원한다면
• 아티스트들이 신경을 덜 써도 된다!
• > 물리적으로 정확한 라이팅을 표현한다면
• 보다 더 직관적이다!
• > 물리적으로 정확한 이론을 알고 있다면
• Shader 하나로 모든 재질을 표현!
• > 물리적으로 옳은 재질이라면
기본적으로 물리적으로 옳은 것을 지향하는 것은 맞지만
물리적으로 정확한 결과만
꼭 예쁜 것은 아닙니다
기본적으로 물리적으로 옳은 것을 지향하는 것은 맞지만
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용
다음 중 어느게 PBR인지 구별 가능하십니까?
PBR (Standard : Metallic pass)Diffuse + Specular + rim + Reflection
(BlinnPhong)
이건 가능 하십니까?
사실은 구형 방식도
• PR (Photo Realistics) 렌더링의 한 식구
• 구형 방식도 원래 PBR의 한 분야였습니다!
사실은 구형 방식도
구형 방식으로도
비슷한 결과를 만들 수 있습니다
• PR (Photo Realistics) 렌더링의 한 식구
• 구형 방식도 원래 PBR의 한 분야였습니다!
즉
• 기존의 방식이 ‘비 물리’ 방식이라는 말이 아닙니다
• 기본의 방식은
‘생략이 많이 되고 수동으로 조절해야 하는’
물리 기반 방식이라는 말이지요
PBR is NOT MAGIC!!!
• 분명 개량된 것은 맞지만
• 천지가 개벽할 정도로 다른 것이 아니다
• 단지 “자동화”가 많이 되고 계산이 좀 더 정밀해진
우버 셰이더에 가깝다
“자동화”의 한계
• 아티스트의 자유도 제약
“난 무리해서라도 한계를 돌파하고 싶다고!!!”
“거절합니다”
AD가 이걸 원한다면 ?
AD가 원하면 정답입니다
• 언리얼의 고민
• ‘Fortnite :포트나이트’ 을 지원하기 위해 구형 방식을 다시 지원
하는 것을 결정 : 어이 근데 2013년 얘기인데…
Henry :
언리얼로 제작된 오큘러스용 애니메이션
“우리의 과장되고 아름답게 재해석된 아트 방향은 실제와 달랐고,
이를 물리기반 셰이더만으로 완전히 달성할 수 없었다"
• 유니티의 고민 : 그럼 몽땅 다 지원하자!!!
으아아아 서로 섞여서
정신없어졌다
에이 신형 PBS도 만들어 넣자
신형 PBS 규칙을 깨뜨릴 수
있는 변칙 PBS 규칙도 또 만들어 넣자
에라 옛날 Shader도 그냥 두자
• 게다가 유니티와 몇몇 엔진은 Roughness를 쓰지
않고 Smoothness를 사용
• Smoothness = 1- Roughness
• 즉 이런 방식
구형 라이트
(Non-PBS)
Diffuse
Ambient
Specular
신형 라이트
(PBS)
BRDF Diffuse
Metallic
Smoothness
신형 라이트
변형
(PBS)
BRDF Diffuse
Specular Color
Smoothness
struct SurfaceOutputStandard
{
fixed3 Albedo;
fixed3 Normal;
fixed3 Emission;
half Metallic;
half Smoothness;
half Occlusion;
half Alpha;
};
struct SurfaceOutputStandardSpecular
{
fixed3 Albedo;
fixed3 Specular;
fixed3 Normal;
fixed3 Emission;
half Smoothness;
half Occlusion;
half Alpha;
};
Metallic Pass Specular Pass
Metal
Black * Diffuse BRDF , Albedo * Specular BRDF
Non-metal
Albedo * Diffuse BRDF , Gray* Specular BRDF
Albedo * Diffuse BRDF , Specular Color * Specular BRDF
Metallic Pass
Specular Pass
Metallic pass
Black * Diffuse BRDF , Albedo * Specular BRDF
Specular pass
Albedo * Diffuse BRDF , Specular Color * Specular BRDF
* Diffuse BRDF , Specular Color * Specular BRDF
Non-metal
Albedo * Diffuse BRDF , Gray* Specular BRDF
Specular pass
Albedo * Diffuse BRDF , Specular Color * Specular BRDF
Albedo * Diffuse BRDF , Gray * Specular BRDF
Specular pass
Albedo * Diffuse BRDF , Specular Color * Specular BRDF
PBR is NOT MAGIC
• PBR이 나쁘다고 오해하시면 안됩니다. PBR은 좋습니다!
• 꼭 물리적이어야 예쁜 건 아닙니다
• 물론 물리적으로 PBR은 이상적인 접근 방식입니다
• 원래 만든 목적이 ‘아티스트 편하라고’ 만든 기능입니다
• 아직 발전중이고, 약점도 없지 않습니다
P B R 이 만 병 통 치 약 취 급 을 당 하 는
마케팅 용어가 되는걸 주의하자는 말입니다
그란데 말입니다
우리는 됐다 치고…
이걸 학교에서 아티스트에게 가르치려니까 말입니다
청강대 게임스쿨 게임제작 스튜디오 전경 (광고)
수업에서 PBS를 설명할 때의 문제점
• 실무에서도 아직 안 쓰는 곳이 꽤 많다
• 예전 방식의 라이팅과 전혀 다른 구조
• 안 가르치자니 그것도 곤란
• 기존의 라이팅 구조
• Diffuse
• Specular
• Ambient
• 새로운 라이팅 구조
• Albedo
• Metallic (Specular pass?)
• Glossiness (Smoothness)
• Occlusion
어설프게 알면 혼란을 겪게 될 가능성이 크다
• 아니면 대충 ‘외워’ 버리게 된다던가
• 수준 높게 가르친다고 이론만 어렵게 나열하면 흥미를 잃고 포기한다
• 다른 엔진이나 이후 발전되는 방향에도 대처하게 만들어 주고 싶다
• 이론을 근본적으로 이해하되, 쉽게 이해할 수 있도록 만들어 주고 싶다
그래서 작전을 짜봤습니다
1단계 : 아예 빛부터 가르치기로 결정
• 과목명 : 카메라/라이트/렌더링 (카/라/렌)
• 학생들 : 저게 뭐하는 과목이지?(갸웃)
카메라를 가르치자
• 일단 전반기에는 카메라를 가르쳐 봤습
니다.
• 마침 학교도 이쁜데
밤새며 과제만 하는것도 불쌍하고…
• 어차피 게임 그래픽은 우리 눈이 아니라
카메라 (영화) 의 카피니까요
빛을 찾아보자
• Diffuse를 찾아보자
• Ambient를 찾아보자
빛을 찾아보자
• Specular를 찾아보자
빛을 찾아보자
• 마른 표면과 젖은 표면을 비교해 보자
빛을 찾아보자
그 외 빛 찾고 연구하기
• 셔터스피드 연구
• 패닝샷 촬영
그 외 빛 찾고 연구하기
• Rim light / Translucent
• Fresnel Reflection
• Ambient Occlusion
• Refraction / Caustics
그 외 빛 찾고 연구하기
• 금속과 비금속의
Specular Color 차이
그 외 빛 찾고 연구하기
• HDR 과 LDR
이 모든것이 PBS를 가르치려는 계획이었습니다
德業一致
2단계 : 후반기에는 맨탈레이
• 맨탈레이로 광자 계산을 실습
• 조사했던 빛을 디지털로 표현하려면 얼마나 복잡한 것인지를 느끼게 해 줌
• 정적 라이팅의 개념과 그 디테일의 차이…
• 공짜
Image from : http://blog.digitaltutors.com/indirect-illumination-final-gather-vs-global-illumination/
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용
이것 역시 PBR을 가르치려는 계획이었습니다
NDC에서 PBS를 알아듣게 만들자
마침 이호성님이 NDC에…
그래서 의도한 결과
‘엠비언트 칼라가 신경쓰여서 영화에 집중을 못하겠어요‘
‘레스토랑에 갔더니 굴절과 커스틱이 신경쓰여 … ㅜㅜ‘
‘NDC 이호성님 강연이 무슨 얘기인지 대충 다 들려요 ㅠㅠㅠ’
빛 관련 강연은 전부 카라렌과 연관이…!!! ㅠㅠ
3단계 : Shader 코딩
• 직접 Lambert / BlinnPhong / NPR 연산으로
구현해 보면서 학습
그래서 이런걸…
그래서
• 물리 기반 셰이더를 제대로 이해하게 되었다!
• 적어도 두려워하거나 혼동하지 않게 되었다!
• 바르게 공부할 수 있는 방향을 알게 되었다!
• ‘아티스트가 기술을 이해하면 놀라운 일이 일어납니다’
결 론
PBR is NOT MAGIC !
• PBR은 훌륭한 방향입니다만, 만병통치약은 아닙니다
• PBR은 제대로 알고 사용해야 그 가치가 있습니다
• 하지만 그 한계를 알거나 제대로 사용하기 위해선
PBR을 제대로 가르치고, 제대로 공부해야 합니다
• 제대로 공부하면 제대로 사용할 수도 있고,
그 한계를 넘어설 수도 있습니다!
• 게다가 앞으로 발전하는 방향에 대응할 수도 있습니다
• http://www.gamedevforever.com/17
물체 표면의 스페큘러 칼라에 대하여_유우원
• https://www.unrealengine.com/ko/blog/physically-based-shading-in-ue4
UE4 의 물리 기반 셰이딩 Jordan Walker
• [Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기
• Physically Based Rendering for Artists
• Sand Rendering in Journey
SIGGRAPH 2013 Course:
Physically Based Shading in Theory and Practice
http://blog.selfshadow.com/publications/s2013-shading-course/==
• Real Shading in Unreal Engine 4 (Brian Karis)
• http://www.slideshare.net/Hybrid0/physically-based-rendering-51309337
• http://bbs2.ruliweb.daum.net/gaia/do/ruliweb/default/ps/93/read?articleId=1454413&bbsId=G003
• NDC2015_3DS MAX 멘탈레이로 유니티 정적라이팅하기_16_9
• 길티기어 xrd-sign-「애니메이션처럼 보이는 3d그래픽」의 비밀
감사합니다
http://chulin28ho.tistory.com/
jpcorp@ck.ac.kr
@JPcorps
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용

Contenu connexe

Tendances

스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)포프 김
 
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술henjeon
 
Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더동석 김
 
언차티드4 테크아트 파트1 톤맵핑&색보정
언차티드4 테크아트 파트1 톤맵핑&색보정언차티드4 테크아트 파트1 톤맵핑&색보정
언차티드4 테크아트 파트1 톤맵핑&색보정Dae Hyek KIM
 
멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)Bongseok Cho
 
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑MinGeun Park
 
[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희changehee lee
 
Cascade Shadow Mapping
Cascade Shadow MappingCascade Shadow Mapping
Cascade Shadow MappingSukwoo Lee
 
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근MinGeun Park
 
[Ndc11 박민근] deferred shading
[Ndc11 박민근] deferred shading[Ndc11 박민근] deferred shading
[Ndc11 박민근] deferred shadingMinGeun Park
 
캐주얼 게임 배경에서 Vertex Color 활용법
캐주얼 게임 배경에서 Vertex Color 활용법캐주얼 게임 배경에서 Vertex Color 활용법
캐주얼 게임 배경에서 Vertex Color 활용법지영 신
 
빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술YEONG-CHEON YOU
 
Hierachical z Map Occlusion Culling
Hierachical z Map Occlusion CullingHierachical z Map Occlusion Culling
Hierachical z Map Occlusion CullingYEONG-CHEON YOU
 
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현MinGeun Park
 
Screen space reflection
Screen space reflectionScreen space reflection
Screen space reflectionBongseok Cho
 

Tendances (20)

카툰 렌더링
카툰 렌더링카툰 렌더링
카툰 렌더링
 
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)
스크린 스페이스 데칼에 대해 자세히 알아보자(워햄머 40,000: 스페이스 마린)
 
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술
 
Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더
 
Bump Mapping
Bump MappingBump Mapping
Bump Mapping
 
언차티드4 테크아트 파트1 톤맵핑&색보정
언차티드4 테크아트 파트1 톤맵핑&색보정언차티드4 테크아트 파트1 톤맵핑&색보정
언차티드4 테크아트 파트1 톤맵핑&색보정
 
멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)
 
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑
 
[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희[Kgc2012] deferred forward 이창희
[Kgc2012] deferred forward 이창희
 
Cascade Shadow Mapping
Cascade Shadow MappingCascade Shadow Mapping
Cascade Shadow Mapping
 
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
[Ndc12] 누구나 알기쉬운 hdr과 톤맵핑 박민근
 
Motion blur
Motion blurMotion blur
Motion blur
 
[Ndc11 박민근] deferred shading
[Ndc11 박민근] deferred shading[Ndc11 박민근] deferred shading
[Ndc11 박민근] deferred shading
 
캐주얼 게임 배경에서 Vertex Color 활용법
캐주얼 게임 배경에서 Vertex Color 활용법캐주얼 게임 배경에서 Vertex Color 활용법
캐주얼 게임 배경에서 Vertex Color 활용법
 
빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술
 
Hierachical z Map Occlusion Culling
Hierachical z Map Occlusion CullingHierachical z Map Occlusion Culling
Hierachical z Map Occlusion Culling
 
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
 
Ndc11 이창희_hdr
Ndc11 이창희_hdrNdc11 이창희_hdr
Ndc11 이창희_hdr
 
Screen space reflection
Screen space reflectionScreen space reflection
Screen space reflection
 
Ssao
SsaoSsao
Ssao
 

En vedette

[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기강 민우
 
뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)
뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)
뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)ozlael ozlael
 
[IGC 2016] 넷게임즈 김복식 - 중국 모바일 게임과 캐주얼 게임 디자인
[IGC 2016] 넷게임즈 김복식 - 중국 모바일 게임과 캐주얼 게임 디자인[IGC 2016] 넷게임즈 김복식 - 중국 모바일 게임과 캐주얼 게임 디자인
[IGC 2016] 넷게임즈 김복식 - 중국 모바일 게임과 캐주얼 게임 디자인강 민우
 
모바일 게임 최적화
모바일 게임 최적화 모바일 게임 최적화
모바일 게임 최적화 tartist
 
NDC 2015 박주은,최재혁 물리기반렌더링 지난1년간의 경험
NDC 2015 박주은,최재혁 물리기반렌더링 지난1년간의 경험NDC 2015 박주은,최재혁 물리기반렌더링 지난1년간의 경험
NDC 2015 박주은,최재혁 물리기반렌더링 지난1년간의 경험Jooeun Park
 
물리기반 모델링 기초 - 강의노트
물리기반 모델링 기초 - 강의노트물리기반 모델링 기초 - 강의노트
물리기반 모델링 기초 - 강의노트Young-Min kang
 
게임수학 강의노트 1부
게임수학 강의노트 1부게임수학 강의노트 1부
게임수학 강의노트 1부Young-Min kang
 
Ndc12 이창희 render_pipeline
Ndc12 이창희 render_pipelineNdc12 이창희 render_pipeline
Ndc12 이창희 render_pipelinechangehee lee
 
[박민근] 3 d렌더링 옵티마이징_5 최적화 전략
[박민근] 3 d렌더링 옵티마이징_5 최적화 전략[박민근] 3 d렌더링 옵티마이징_5 최적화 전략
[박민근] 3 d렌더링 옵티마이징_5 최적화 전략MinGeun Park
 
10강최적화 가속화
10강최적화 가속화10강최적화 가속화
10강최적화 가속화JP Jung
 
[IGC 2016] 액션스퀘어 문의주 - 언리얼4 아티스트를 위한 실용적인 PBR 가이드
[IGC 2016] 액션스퀘어 문의주 - 언리얼4 아티스트를 위한 실용적인 PBR 가이드[IGC 2016] 액션스퀘어 문의주 - 언리얼4 아티스트를 위한 실용적인 PBR 가이드
[IGC 2016] 액션스퀘어 문의주 - 언리얼4 아티스트를 위한 실용적인 PBR 가이드강 민우
 
Algorithms summary korean
Algorithms summary koreanAlgorithms summary korean
Algorithms summary koreanYoung-Min kang
 

En vedette (12)

[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
[IGC 2016] 넷게임즈 김영희 - Unreal4를 사용해 모바일 프로젝트 제작하기
 
뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)
뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)
뭣이 중헌디? 성능 프로파일링도 모름서 - 유니티 성능 프로파일링 가이드 (IGC16)
 
[IGC 2016] 넷게임즈 김복식 - 중국 모바일 게임과 캐주얼 게임 디자인
[IGC 2016] 넷게임즈 김복식 - 중국 모바일 게임과 캐주얼 게임 디자인[IGC 2016] 넷게임즈 김복식 - 중국 모바일 게임과 캐주얼 게임 디자인
[IGC 2016] 넷게임즈 김복식 - 중국 모바일 게임과 캐주얼 게임 디자인
 
모바일 게임 최적화
모바일 게임 최적화 모바일 게임 최적화
모바일 게임 최적화
 
NDC 2015 박주은,최재혁 물리기반렌더링 지난1년간의 경험
NDC 2015 박주은,최재혁 물리기반렌더링 지난1년간의 경험NDC 2015 박주은,최재혁 물리기반렌더링 지난1년간의 경험
NDC 2015 박주은,최재혁 물리기반렌더링 지난1년간의 경험
 
물리기반 모델링 기초 - 강의노트
물리기반 모델링 기초 - 강의노트물리기반 모델링 기초 - 강의노트
물리기반 모델링 기초 - 강의노트
 
게임수학 강의노트 1부
게임수학 강의노트 1부게임수학 강의노트 1부
게임수학 강의노트 1부
 
Ndc12 이창희 render_pipeline
Ndc12 이창희 render_pipelineNdc12 이창희 render_pipeline
Ndc12 이창희 render_pipeline
 
[박민근] 3 d렌더링 옵티마이징_5 최적화 전략
[박민근] 3 d렌더링 옵티마이징_5 최적화 전략[박민근] 3 d렌더링 옵티마이징_5 최적화 전략
[박민근] 3 d렌더링 옵티마이징_5 최적화 전략
 
10강최적화 가속화
10강최적화 가속화10강최적화 가속화
10강최적화 가속화
 
[IGC 2016] 액션스퀘어 문의주 - 언리얼4 아티스트를 위한 실용적인 PBR 가이드
[IGC 2016] 액션스퀘어 문의주 - 언리얼4 아티스트를 위한 실용적인 PBR 가이드[IGC 2016] 액션스퀘어 문의주 - 언리얼4 아티스트를 위한 실용적인 PBR 가이드
[IGC 2016] 액션스퀘어 문의주 - 언리얼4 아티스트를 위한 실용적인 PBR 가이드
 
Algorithms summary korean
Algorithms summary koreanAlgorithms summary korean
Algorithms summary korean
 

Plus de JP Jung

Unite2019 _ 학교에서 배우는 게임개발이란
Unite2019 _ 학교에서 배우는 게임개발이란Unite2019 _ 학교에서 배우는 게임개발이란
Unite2019 _ 학교에서 배우는 게임개발이란JP Jung
 
Siggraph2013보고서 저용량
Siggraph2013보고서   저용량Siggraph2013보고서   저용량
Siggraph2013보고서 저용량JP Jung
 
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트JP Jung
 
Unity3D로 풀3D web mmorpg 만들기
Unity3D로 풀3D web mmorpg 만들기Unity3D로 풀3D web mmorpg 만들기
Unity3D로 풀3D web mmorpg 만들기JP Jung
 
9강 camera advanced light2
9강 camera advanced light29강 camera advanced light2
9강 camera advanced light2JP Jung
 
8강 camera advanced light
8강 camera advanced light8강 camera advanced light
8강 camera advanced lightJP Jung
 
7강 shader basic lighting_배포용 삭제버전
7강 shader basic lighting_배포용 삭제버전7강 shader basic lighting_배포용 삭제버전
7강 shader basic lighting_배포용 삭제버전JP Jung
 
6강 light shadow 기초
6강 light shadow 기초6강 light shadow 기초
6강 light shadow 기초JP Jung
 
5강 알파와알파소팅
5강 알파와알파소팅5강 알파와알파소팅
5강 알파와알파소팅JP Jung
 
4강 shader fx 기초실습_텍스쳐 조작2
4강 shader fx 기초실습_텍스쳐 조작24강 shader fx 기초실습_텍스쳐 조작2
4강 shader fx 기초실습_텍스쳐 조작2JP Jung
 
3강 shader fx 기초실습_텍스쳐 조작
3강 shader fx 기초실습_텍스쳐 조작3강 shader fx 기초실습_텍스쳐 조작
3강 shader fx 기초실습_텍스쳐 조작JP Jung
 
2강 텍스쳐 포맷과 기초 / 오타수정
2강 텍스쳐 포맷과 기초 / 오타수정2강 텍스쳐 포맷과 기초 / 오타수정
2강 텍스쳐 포맷과 기초 / 오타수정JP Jung
 
2강 텍스쳐 포맷과 기초
2강 텍스쳐 포맷과 기초2강 텍스쳐 포맷과 기초
2강 텍스쳐 포맷과 기초JP Jung
 
6강 light shadow 기초
6강 light shadow 기초6강 light shadow 기초
6강 light shadow 기초JP Jung
 
6강 light shadow 기초
6강 light shadow 기초6강 light shadow 기초
6강 light shadow 기초JP Jung
 
정종필 팀장이됐어요(더저용량)
정종필 팀장이됐어요(더저용량)정종필 팀장이됐어요(더저용량)
정종필 팀장이됐어요(더저용량)JP Jung
 

Plus de JP Jung (16)

Unite2019 _ 학교에서 배우는 게임개발이란
Unite2019 _ 학교에서 배우는 게임개발이란Unite2019 _ 학교에서 배우는 게임개발이란
Unite2019 _ 학교에서 배우는 게임개발이란
 
Siggraph2013보고서 저용량
Siggraph2013보고서   저용량Siggraph2013보고서   저용량
Siggraph2013보고서 저용량
 
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
 
Unity3D로 풀3D web mmorpg 만들기
Unity3D로 풀3D web mmorpg 만들기Unity3D로 풀3D web mmorpg 만들기
Unity3D로 풀3D web mmorpg 만들기
 
9강 camera advanced light2
9강 camera advanced light29강 camera advanced light2
9강 camera advanced light2
 
8강 camera advanced light
8강 camera advanced light8강 camera advanced light
8강 camera advanced light
 
7강 shader basic lighting_배포용 삭제버전
7강 shader basic lighting_배포용 삭제버전7강 shader basic lighting_배포용 삭제버전
7강 shader basic lighting_배포용 삭제버전
 
6강 light shadow 기초
6강 light shadow 기초6강 light shadow 기초
6강 light shadow 기초
 
5강 알파와알파소팅
5강 알파와알파소팅5강 알파와알파소팅
5강 알파와알파소팅
 
4강 shader fx 기초실습_텍스쳐 조작2
4강 shader fx 기초실습_텍스쳐 조작24강 shader fx 기초실습_텍스쳐 조작2
4강 shader fx 기초실습_텍스쳐 조작2
 
3강 shader fx 기초실습_텍스쳐 조작
3강 shader fx 기초실습_텍스쳐 조작3강 shader fx 기초실습_텍스쳐 조작
3강 shader fx 기초실습_텍스쳐 조작
 
2강 텍스쳐 포맷과 기초 / 오타수정
2강 텍스쳐 포맷과 기초 / 오타수정2강 텍스쳐 포맷과 기초 / 오타수정
2강 텍스쳐 포맷과 기초 / 오타수정
 
2강 텍스쳐 포맷과 기초
2강 텍스쳐 포맷과 기초2강 텍스쳐 포맷과 기초
2강 텍스쳐 포맷과 기초
 
6강 light shadow 기초
6강 light shadow 기초6강 light shadow 기초
6강 light shadow 기초
 
6강 light shadow 기초
6강 light shadow 기초6강 light shadow 기초
6강 light shadow 기초
 
정종필 팀장이됐어요(더저용량)
정종필 팀장이됐어요(더저용량)정종필 팀장이됐어요(더저용량)
정종필 팀장이됐어요(더저용량)
 

물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다 공개용

  • 2. 물리 기반 쉐이더의 허와 실 물리 기반 쉐이더를 가르쳐 보았습니다
  • 3. 정종필 1992. Hqteam – 충무공전 / 임진록1 , 2 / 천년의 신화 등 조이온 Art Director – 임진록 온라인 거상 등 Ndoors Technical Art Director – 군주/ 삼국지를 품다/ 영웅의 군단 등 청강문화산업대학교 게임콘텐츠 스쿨 교수 대충 살아가는 게임개발자 http://chulin28ho.egloos.com http://chulin28ho.tistory.com/ 게임 개발 포에버 / 대마왕 http://gamedevforever.com
  • 4. 그래서 물리 기반 쉐이더 (PBS)가 뭔가요? PBR이라고도 합니다만
  • 5. PBS (Physically Based Shader )의 마케팅 용어 보다 더 정확한 라이팅 표현이 가능하다! 아티스트들이 신경을 덜 써도 된다! 보다 더 직관적이다! Shader 하나로 모든 재질을 표현!
  • 6. 여기서 PBS의 큰 특징 • 요새 PBS 강연문서는 꽤 많으니까 요 • 좋은 동영상도 많이 있습니다. • 깊게 들어가면 너무 깊어지니까 쉽게 특징적인 것 두 개만 짚어봅시 다
  • 10. • 빛은 투과, 흡수, 반사등의 성질을 지닙니다만 일단 반사만 생각합시다 • 반사는 크게 두 종류로 나눌 수 있습니다. • Diffuse : 난반사 • Specular : 정반사
  • 11. • 난반사와 정반사는 상호 보완 관계를 가지고 있습니다
  • 13. 정반사 난반사 • 즉 거울 자체는 빛을 비춰도 밝아지지 않습니다
  • 15. • 물론 실제 거울은 이상적인 100% 정반사가 아니고, 각종 불순물과 먼지 손자국 등등 때문에 밝아지긴 하죠
  • 16. 어쨌건 기존의 구형 라이트 방식은 이런 정반사 (Specular)와 난반사 (Diffuse) 를 감각적으로 따로 계산해서 더하는 방식이었습니다. 대충 스페큘러를 이 정도 넣고 대충 디퓨즈를 이 정도 넣으면 정반사 난반사 100% 거기다가 정반사는 무려 흰 공이었죠 ㅎㅎ
  • 19. • 금속은 고유의 스페큘러 칼라를 가지고 있고 • 비금속은 그냥 흰색의 스페큘러 칼라를 가지고 있습니다 • 표면의 공유 전자 (Shared Electron) 때문이라는데 뭐… 난누군가 여긴어딘 가 http://www.gamedevforever.com/17
  • 20. • Diffuse Color + Specular Color • 금속은 칼라 스페큘러
  • 21. • Diffuse Color + Specular Color • 비금속은 흰색 스페큘러
  • 22. • 비금속 • 1- Diffuse Color = Specular Color https://area.autodesk.com/tutorials/natascha_hybrid_texturing
  • 23. • 그래서 PBS에서는 Metal 이냐 아니냐를 구분하는 기능이 생겼습니다
  • 24. Metal DiffuseBRDF *0 , SpecularBRDF * Albedo DiElectric DiffuseBRDF * Albedo , SpecularBRDF * 0.5
  • 25. 즉 자동으로 출력되는 Albedo의 위치가 결정되는 것이 PBS
  • 27. 슬쩍 이 두 가지만 봐도 • PBS는 과연 대단합니다 • 추가로 프레넬 리플렉션이라던가 • 미세 표면이라던가 • 감마 코렉션이라던가 • 하는 것들 역시 ‘옳게’ 처리되고 있습니다
  • 28. • 보다 더 정확한 라이팅 표현이 가능하다! • 아티스트들이 신경을 덜 써도 된다! • 보다 더 직관적이다! • Shader 하나로 모든 재질을 표현! 즉 이 말의 의미는
  • 29. • 보다 더 정확한 라이팅 표현이 가능하다! • > 물리적으로 정확한 라이팅을 원한다면 • 아티스트들이 신경을 덜 써도 된다! • > 물리적으로 정확한 라이팅을 표현한다면 • 보다 더 직관적이다! • > 물리적으로 정확한 이론을 알고 있다면 • Shader 하나로 모든 재질을 표현! • > 물리적으로 옳은 재질이라면 물론 이 쪽 방향은 궁극적으로 맞는 방향이긴 합니다.
  • 30. 제대로 알고 쓰면 좋은 결과가 나옵니다 PBS를 사용하면서 구형 방식으로 텍스쳐를 제작하면 안됩니다 새로운 방식을 이해하면서 텍스쳐를 그려야만 합니다
  • 32. ‘정말’ 위의 것이 더 예쁩니까?
  • 33. ‘저는 아래 것이 더 예뻐요’ 라는 의견은 ‘틀린’ 의견입니까?
  • 34. 오른쪽 이미지는 옳지 않지만 그렇게 심각하게 이상합니까?
  • 35. 언제나 프로그래머 분들이 뭔가 조금 부러워하고 있는 ‘예쁘다’ 의 기준을 말하고 있습니다.
  • 36. 물론 이건 물리적으로 옳은 느낌과 비슷해 지려는 과장이라고 쳐도…
  • 39. 게다가 세상에는 NPR이라고 하는 당당한 분야도 존재합니다 (Non Photo Realistic) 길티기어 xrd-sign-「애니메이션처럼 보이는 3d그래픽」의 비밀
  • 40. • 보다 더 정확한 라이팅 표현이 가능하다! • > 물리적으로 정확한 라이팅을 원한다면 • 아티스트들이 신경을 덜 써도 된다! • > 물리적으로 정확한 라이팅을 표현한다면 • 보다 더 직관적이다! • > 물리적으로 정확한 이론을 알고 있다면 • Shader 하나로 모든 재질을 표현! • > 물리적으로 옳은 재질이라면 기본적으로 물리적으로 옳은 것을 지향하는 것은 맞지만
  • 41. 물리적으로 정확한 결과만 꼭 예쁜 것은 아닙니다 기본적으로 물리적으로 옳은 것을 지향하는 것은 맞지만
  • 43. 다음 중 어느게 PBR인지 구별 가능하십니까?
  • 44. PBR (Standard : Metallic pass)Diffuse + Specular + rim + Reflection (BlinnPhong)
  • 46. 사실은 구형 방식도 • PR (Photo Realistics) 렌더링의 한 식구 • 구형 방식도 원래 PBR의 한 분야였습니다!
  • 47. 사실은 구형 방식도 구형 방식으로도 비슷한 결과를 만들 수 있습니다 • PR (Photo Realistics) 렌더링의 한 식구 • 구형 방식도 원래 PBR의 한 분야였습니다!
  • 48. 즉 • 기존의 방식이 ‘비 물리’ 방식이라는 말이 아닙니다 • 기본의 방식은 ‘생략이 많이 되고 수동으로 조절해야 하는’ 물리 기반 방식이라는 말이지요
  • 49. PBR is NOT MAGIC!!! • 분명 개량된 것은 맞지만 • 천지가 개벽할 정도로 다른 것이 아니다 • 단지 “자동화”가 많이 되고 계산이 좀 더 정밀해진 우버 셰이더에 가깝다
  • 50. “자동화”의 한계 • 아티스트의 자유도 제약 “난 무리해서라도 한계를 돌파하고 싶다고!!!” “거절합니다”
  • 53. • 언리얼의 고민 • ‘Fortnite :포트나이트’ 을 지원하기 위해 구형 방식을 다시 지원 하는 것을 결정 : 어이 근데 2013년 얘기인데…
  • 54. Henry : 언리얼로 제작된 오큘러스용 애니메이션 “우리의 과장되고 아름답게 재해석된 아트 방향은 실제와 달랐고, 이를 물리기반 셰이더만으로 완전히 달성할 수 없었다"
  • 55. • 유니티의 고민 : 그럼 몽땅 다 지원하자!!! 으아아아 서로 섞여서 정신없어졌다 에이 신형 PBS도 만들어 넣자 신형 PBS 규칙을 깨뜨릴 수 있는 변칙 PBS 규칙도 또 만들어 넣자 에라 옛날 Shader도 그냥 두자
  • 56. • 게다가 유니티와 몇몇 엔진은 Roughness를 쓰지 않고 Smoothness를 사용 • Smoothness = 1- Roughness
  • 57. • 즉 이런 방식 구형 라이트 (Non-PBS) Diffuse Ambient Specular 신형 라이트 (PBS) BRDF Diffuse Metallic Smoothness 신형 라이트 변형 (PBS) BRDF Diffuse Specular Color Smoothness
  • 58. struct SurfaceOutputStandard { fixed3 Albedo; fixed3 Normal; fixed3 Emission; half Metallic; half Smoothness; half Occlusion; half Alpha; }; struct SurfaceOutputStandardSpecular { fixed3 Albedo; fixed3 Specular; fixed3 Normal; fixed3 Emission; half Smoothness; half Occlusion; half Alpha; }; Metallic Pass Specular Pass
  • 59. Metal Black * Diffuse BRDF , Albedo * Specular BRDF Non-metal Albedo * Diffuse BRDF , Gray* Specular BRDF Albedo * Diffuse BRDF , Specular Color * Specular BRDF Metallic Pass Specular Pass
  • 60. Metallic pass Black * Diffuse BRDF , Albedo * Specular BRDF Specular pass Albedo * Diffuse BRDF , Specular Color * Specular BRDF * Diffuse BRDF , Specular Color * Specular BRDF
  • 61. Non-metal Albedo * Diffuse BRDF , Gray* Specular BRDF Specular pass Albedo * Diffuse BRDF , Specular Color * Specular BRDF Albedo * Diffuse BRDF , Gray * Specular BRDF
  • 62. Specular pass Albedo * Diffuse BRDF , Specular Color * Specular BRDF
  • 63. PBR is NOT MAGIC • PBR이 나쁘다고 오해하시면 안됩니다. PBR은 좋습니다! • 꼭 물리적이어야 예쁜 건 아닙니다 • 물론 물리적으로 PBR은 이상적인 접근 방식입니다 • 원래 만든 목적이 ‘아티스트 편하라고’ 만든 기능입니다 • 아직 발전중이고, 약점도 없지 않습니다 P B R 이 만 병 통 치 약 취 급 을 당 하 는 마케팅 용어가 되는걸 주의하자는 말입니다
  • 65. 이걸 학교에서 아티스트에게 가르치려니까 말입니다 청강대 게임스쿨 게임제작 스튜디오 전경 (광고)
  • 66. 수업에서 PBS를 설명할 때의 문제점 • 실무에서도 아직 안 쓰는 곳이 꽤 많다 • 예전 방식의 라이팅과 전혀 다른 구조 • 안 가르치자니 그것도 곤란
  • 67. • 기존의 라이팅 구조 • Diffuse • Specular • Ambient • 새로운 라이팅 구조 • Albedo • Metallic (Specular pass?) • Glossiness (Smoothness) • Occlusion
  • 68. 어설프게 알면 혼란을 겪게 될 가능성이 크다 • 아니면 대충 ‘외워’ 버리게 된다던가 • 수준 높게 가르친다고 이론만 어렵게 나열하면 흥미를 잃고 포기한다 • 다른 엔진이나 이후 발전되는 방향에도 대처하게 만들어 주고 싶다 • 이론을 근본적으로 이해하되, 쉽게 이해할 수 있도록 만들어 주고 싶다
  • 70. 1단계 : 아예 빛부터 가르치기로 결정 • 과목명 : 카메라/라이트/렌더링 (카/라/렌) • 학생들 : 저게 뭐하는 과목이지?(갸웃)
  • 71. 카메라를 가르치자 • 일단 전반기에는 카메라를 가르쳐 봤습 니다. • 마침 학교도 이쁜데 밤새며 과제만 하는것도 불쌍하고… • 어차피 게임 그래픽은 우리 눈이 아니라 카메라 (영화) 의 카피니까요
  • 75. • 마른 표면과 젖은 표면을 비교해 보자 빛을 찾아보자
  • 76. 그 외 빛 찾고 연구하기 • 셔터스피드 연구 • 패닝샷 촬영
  • 77. 그 외 빛 찾고 연구하기 • Rim light / Translucent • Fresnel Reflection • Ambient Occlusion • Refraction / Caustics
  • 78. 그 외 빛 찾고 연구하기 • 금속과 비금속의 Specular Color 차이
  • 79. 그 외 빛 찾고 연구하기 • HDR 과 LDR
  • 80. 이 모든것이 PBS를 가르치려는 계획이었습니다
  • 83. • 맨탈레이로 광자 계산을 실습 • 조사했던 빛을 디지털로 표현하려면 얼마나 복잡한 것인지를 느끼게 해 줌 • 정적 라이팅의 개념과 그 디테일의 차이… • 공짜 Image from : http://blog.digitaltutors.com/indirect-illumination-final-gather-vs-global-illumination/
  • 90. 이것 역시 PBR을 가르치려는 계획이었습니다
  • 91. NDC에서 PBS를 알아듣게 만들자 마침 이호성님이 NDC에…
  • 92. 그래서 의도한 결과 ‘엠비언트 칼라가 신경쓰여서 영화에 집중을 못하겠어요‘ ‘레스토랑에 갔더니 굴절과 커스틱이 신경쓰여 … ㅜㅜ‘ ‘NDC 이호성님 강연이 무슨 얘기인지 대충 다 들려요 ㅠㅠㅠ’ 빛 관련 강연은 전부 카라렌과 연관이…!!! ㅠㅠ
  • 93. 3단계 : Shader 코딩 • 직접 Lambert / BlinnPhong / NPR 연산으로 구현해 보면서 학습
  • 95. 그래서 • 물리 기반 셰이더를 제대로 이해하게 되었다! • 적어도 두려워하거나 혼동하지 않게 되었다! • 바르게 공부할 수 있는 방향을 알게 되었다! • ‘아티스트가 기술을 이해하면 놀라운 일이 일어납니다’
  • 97. PBR is NOT MAGIC ! • PBR은 훌륭한 방향입니다만, 만병통치약은 아닙니다 • PBR은 제대로 알고 사용해야 그 가치가 있습니다 • 하지만 그 한계를 알거나 제대로 사용하기 위해선 PBR을 제대로 가르치고, 제대로 공부해야 합니다 • 제대로 공부하면 제대로 사용할 수도 있고, 그 한계를 넘어설 수도 있습니다! • 게다가 앞으로 발전하는 방향에 대응할 수도 있습니다
  • 98. • http://www.gamedevforever.com/17 물체 표면의 스페큘러 칼라에 대하여_유우원 • https://www.unrealengine.com/ko/blog/physically-based-shading-in-ue4 UE4 의 물리 기반 셰이딩 Jordan Walker • [Ndc13]Ndc 2013 김동석:UDK로 물리기반 셰이더 만들기 • Physically Based Rendering for Artists • Sand Rendering in Journey SIGGRAPH 2013 Course: Physically Based Shading in Theory and Practice http://blog.selfshadow.com/publications/s2013-shading-course/== • Real Shading in Unreal Engine 4 (Brian Karis) • http://www.slideshare.net/Hybrid0/physically-based-rendering-51309337 • http://bbs2.ruliweb.daum.net/gaia/do/ruliweb/default/ps/93/read?articleId=1454413&bbsId=G003 • NDC2015_3DS MAX 멘탈레이로 유니티 정적라이팅하기_16_9 • 길티기어 xrd-sign-「애니메이션처럼 보이는 3d그래픽」의 비밀 감사합니다 http://chulin28ho.tistory.com/ jpcorp@ck.ac.kr @JPcorps

Notes de l'éditeur

  1. 재질이 매끈하면 정반사가 주로 일어나고 재질이 둔탁하면 난반사가 주로 일어납니다
  2. 즉 난반사가 강해지면 정반사가 약해지고 정반사가 강해지면 난반사가 약해진다는 말입니다.
  3. 고로 정반사가 거의 다인 거울에서 난반사는 거의 일어나지 않습니다
  4. 밝아지지 않으니 그림자도 지지 않겠죠 즉, 거울은 그림자가 지지 않습니다.
  5. http://spectrevision.net/2012/09/28/the-fake-gold-standard/ https://www.flickr.com/photos/37921614@N00/7649146152
  6. http://gizmodo.com/5163640/concordes-knobstastic-cockpit-looks-like-a-strategic-nuclear-bombers http://www.arodate.com/ ‘편해’ 진거죠
  7. Metal인데 흰색 Specular …는 있을 수 있군요. DiElectric인데 칼라 Specular라는 잘못된 경우가 있을 수 없게 된 겁니다.
  8. 이론적으로 꿈의 라이팅 아닌가
  9. 이론적으로 꿈의 라이팅 아닌가
  10. Valve의 Half Lambert도 물리적으로 옳은 접근은 아니었지만 ‘예뻐서’ 한 케이스였지요.
  11. 아름다운 모래 스페큘러를 자랑하는 Journey 의 Technical Art 발표에서도
  12. 이론적으로 꿈의 라이팅 아닌가
  13. 이론적으로 꿈의 라이팅 아닌가
  14. 모바일 환경에서는 그것마저 제대로 보이지 않는다는게 문제
  15. GGX
  16. GGX 모바일 환경에서는 그것마저 제대로 보이지 않는다는게 문제
  17. 누가 더 많이 계산을 단순하게 생략했냐 정도의 차이 누구도 ‘완벽‘ 하다고는 말할 수 없는 정도
  18. 마치 수동기어를 빼앗고 수동기능 없는 오토 차량을 레이서에게 준 격
  19. http://kotaku.com/5925515/fortnite-will-be-the-first-unreal-engine-4-game http://blog.selfshadow.com/publications/s2013-shading-course/karis/s2013_pbs_epic_notes_v2.pdf
  20. …혹시 눈에 렌즈 플레어 보이시는 분 …아님 비네팅 보이시는 분
  21. 를 느끼는게 목적 라이트맵과도 자연스럽게 연결되게 강의