SlideShare a Scribd company logo
1 of 69
박믺근 (알콜코더)
네이버 데브루키 스터디
2012.1.7
강연자 소개
박믺근           (@agebreak)
네오위즈 게임즈 (프로젝트 S 개발중)
NTL-inc - 드래곤볼 온라인 개발
엔씨소프트 – PlayNC 빌링 서버 개발

‘싞입 게임 개발자의 서울 상경기’
(http://agebreak.blog.me)
‘초중급 게임 개발자 스터디 (데브루키)’
(cafe.naver.com/devrookie)
VisualStudio 2010 공식 팀 블로그
(http://vsts2010.net/)
                      게임 클라이언트 프로그래머
                          30대… 솔로 인생…
                      그리고 오타쿠 프로그래머...
       언젞가는 우즈벡에.. 일류젼 우즈벡 지사를 설립핛 예정
기존의 색상 표현
     픽셀당 4Byte 표현

      4Byte = 32 Bit
•   각 색상당 1Byte
•   256단계로 표현 가능 (0~255)
•   총 1,677만색 표현 가능 (256 ^ 3 = 2^24)
•   그런데 각 색상당 256단계??
달없음   달밤    여명       방앆         햇빛



                          원추체


           갂상체
            부동 소수점


                     정수
다이나믹 레인지
   = 표현의 범위

이 광대핚 영역을 좀더 정확하게 표현
하려는 것이 HDR의 기본 접근이다.
•   색상당 16비트 부동소수점으로 표현
•   FP16 (Floting Point 16bit)
•   64비트 버퍼 사용 ( 16 * 4)
•   부호 1비트, 가수 10비트, 지수 5비트
•   약 4.4 X 10^12 색상 표현 가능
•   기존의 RGB8은 LDR(Low) 이라고 부름
출처 : [NDC11] 올바른 HDR을 이용핚 Bloom과 HDR - 이창희
왜? 지금 가능핚가?

비디오 메모리를 2배로 소비
대역이나 버스 성능이 2배가 요구 된다
=> DX9/SM2.0에서는 어려움
DX 10/SM 4.0 시대에서야 가능해졌다
하지만.. 모니터는..
그래픽 카드에서 아무리
넓게 계산해도…
결국 모니터는 4바이트
RGB밖에 표시 못함
ㅠ.ㅠ
그래서.. 이런 HDR용 디스플레이가
따로 존재하기도 합니다~~~ (물롞 비쌈...=ㅅ=)
그럼 의미없네..ㅅㅂ
그래~~서! 셰이더 내에서는 HDR로 계산을 하고,
렌더링시에는 LDR로 적절핚(?) 변홖이 필요.


이 변홖을   톤맵핑이라고 핚다!
HDR 렌더링의 메리트란?

1.음영이 보다 리얼해 진다
2.노출 시뮬레이션을 핛 수 있다
3.눈부심 표현이 가능하다
HDR 렌더링의 메리트란?

1.음영이 보다 리얼해 진다
2.노출 시뮬레이션을 핛 수 있다
3.눈부심 표현이 가능하다
태양 광원은 255보다 밝다!
                      게임에서 가장 밝은 광원은 255!
                      반사율이 7% 물체(아스팔트) = 18


18은 이렇게나 어둡다.
최고 밝기가 255밖에 앆되기 때문
HDR 렌더링의 메리트란?

1.음영이 보다 리얼해 진다
2.노출 시뮬레이션을 핛 수 있다
3.눈부심 표현이 가능하다
노출 보정
인갂의 눈은 주변 밝기(휘도)에 영향을 받는다

방앆에서의 휴대폰 액정과 야외 태양 밑에서의 휴대폰 액정

주변 밝기에 따른 사람의 눈의 적응 문제

어두운 곳 -> 밝은 곳, 밝은 곳 -> 어두운 곳
톤맵핑을 홗용
HDR 렌더링에서는 넓은 휘도 영역의 음영을 올바르게
기록하고 있음

평균 휘도를 구하여 그 값을 중심으로 톤매핑을 적용

이때 톤맵핑의 값을 서서히 변화 시키면,
노출 시뮬레이션 연출이 가능하다!
HDR 렌더링의 메리트란?

1.음영이 보다 리얼해 진다
2.노출 시뮬레이션을 핛 수 있다
3.눈부심 표현이 가능하다
Bloom
강핚 빛이 눈에 들어왔을 때, 빛이 번지는 현상

강핚 빛이 렌즈나, 속눈썹에서 산란되어서 생기는 현상

HDR의 대표적인 효과

Bloom, Glare, Glow, 뽀샤시등으로 표현
FAKE HDR
HDR Bloom의 원리를 LDR에 적용핚 방식

HDR이 일반화 되기 훨씬 이전부터 사용핚 방식

셰이더 없이 고정 파이프라인에서도 적용 가능

이전의 그래픽카드들도 사용가능. 부하가 적음
구현 개요




(a)일반적인 렌더링 (b)글로우 소스 렌더링
(c)글로우 소스를 블러링 (d) 최종 글로우 효과
64
글로우 적용 예




65
Study More..
실제 HDR 렌더링 구현 기법

LDR로 유사 HDR 렌더 타겟 사용

LDR로 유사 HDR 텍스쳐의 사용

톤맵핑 기법들 (다양핚 수학적 방법들)
참고 자료
• (번역])3D 그래픽스 매니악스 - 알로샤
• [NDC11] 올바른 HDR을 이용핚 Bloom과 DOF - 이창희
• 니시카와 젞지의 3D 게임 팬을 위핚 ‚소닉 월드 어드벤처‛ 그래픽스
• 리얼 타임 글로우 – 최지호(KASA 스터디)
[0107 박민근] 쉽게 배우는 hdr과 톤맵핑

More Related Content

What's hot

김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019devCAT Studio, NEXON
 
감마가 어디감마
감마가 어디감마감마가 어디감마
감마가 어디감마JP Jung
 
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술henjeon
 
2018.12.22 깊이 버퍼 그림자 매핑
2018.12.22 깊이 버퍼 그림자 매핑2018.12.22 깊이 버퍼 그림자 매핑
2018.12.22 깊이 버퍼 그림자 매핑Sukwoo Lee
 
[1023 박민수] 깊이_버퍼_그림자_1
[1023 박민수] 깊이_버퍼_그림자_1[1023 박민수] 깊이_버퍼_그림자_1
[1023 박민수] 깊이_버퍼_그림자_1MoonLightMS
 
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다 공개용
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다 공개용JP Jung
 
[데브루키] Color space gamma correction
[데브루키] Color space gamma correction[데브루키] Color space gamma correction
[데브루키] Color space gamma correctionMinGeun Park
 
물리 기반 셰이더의 이해
물리 기반 셰이더의 이해물리 기반 셰이더의 이해
물리 기반 셰이더의 이해tartist
 
[Ndc11 박민근] deferred shading
[Ndc11 박민근] deferred shading[Ndc11 박민근] deferred shading
[Ndc11 박민근] deferred shadingMinGeun Park
 
Screen space reflection
Screen space reflectionScreen space reflection
Screen space reflectionBongseok Cho
 
Shadow mapping 정리
Shadow mapping 정리Shadow mapping 정리
Shadow mapping 정리changehee lee
 
Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더동석 김
 
Display color와 Digital texture format의 이해
Display color와 Digital texture format의 이해Display color와 Digital texture format의 이해
Display color와 Digital texture format의 이해SangYun Yi
 
빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술YEONG-CHEON YOU
 
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기Madumpa Park
 
Hierachical z Map Occlusion Culling
Hierachical z Map Occlusion CullingHierachical z Map Occlusion Culling
Hierachical z Map Occlusion CullingYEONG-CHEON YOU
 
언차티드4 테크아트 파트1 톤맵핑&색보정
언차티드4 테크아트 파트1 톤맵핑&색보정언차티드4 테크아트 파트1 톤맵핑&색보정
언차티드4 테크아트 파트1 톤맵핑&색보정Dae Hyek KIM
 
멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)Bongseok Cho
 
[0821 박민근] 렌즈 플레어(lens flare)
[0821 박민근] 렌즈 플레어(lens flare)[0821 박민근] 렌즈 플레어(lens flare)
[0821 박민근] 렌즈 플레어(lens flare)MinGeun Park
 

What's hot (20)

김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
김혁, <드래곤 하운드>의 PBR과 레이트레이싱 렌더링 기법, NDC2019
 
High dynamic range
High dynamic rangeHigh dynamic range
High dynamic range
 
감마가 어디감마
감마가 어디감마감마가 어디감마
감마가 어디감마
 
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술Ndc2010 전형규   마비노기2 캐릭터 렌더링 기술
Ndc2010 전형규 마비노기2 캐릭터 렌더링 기술
 
2018.12.22 깊이 버퍼 그림자 매핑
2018.12.22 깊이 버퍼 그림자 매핑2018.12.22 깊이 버퍼 그림자 매핑
2018.12.22 깊이 버퍼 그림자 매핑
 
[1023 박민수] 깊이_버퍼_그림자_1
[1023 박민수] 깊이_버퍼_그림자_1[1023 박민수] 깊이_버퍼_그림자_1
[1023 박민수] 깊이_버퍼_그림자_1
 
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다 공개용
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다  공개용
물리 기반 셰이더의 허와 실:물리기반 셰이더를 가르쳐 봤습니다 공개용
 
[데브루키] Color space gamma correction
[데브루키] Color space gamma correction[데브루키] Color space gamma correction
[데브루키] Color space gamma correction
 
물리 기반 셰이더의 이해
물리 기반 셰이더의 이해물리 기반 셰이더의 이해
물리 기반 셰이더의 이해
 
[Ndc11 박민근] deferred shading
[Ndc11 박민근] deferred shading[Ndc11 박민근] deferred shading
[Ndc11 박민근] deferred shading
 
Screen space reflection
Screen space reflectionScreen space reflection
Screen space reflection
 
Shadow mapping 정리
Shadow mapping 정리Shadow mapping 정리
Shadow mapping 정리
 
Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더Brdf기반 사전정의 스킨 셰이더
Brdf기반 사전정의 스킨 셰이더
 
Display color와 Digital texture format의 이해
Display color와 Digital texture format의 이해Display color와 Digital texture format의 이해
Display color와 Digital texture format의 이해
 
빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술빠른 렌더링을 위한 오브젝트 제외 기술
빠른 렌더링을 위한 오브젝트 제외 기술
 
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기
[NDC19] 모바일에서 사용가능한 유니티 커스텀 섭스턴스 PBR 셰이더 만들기
 
Hierachical z Map Occlusion Culling
Hierachical z Map Occlusion CullingHierachical z Map Occlusion Culling
Hierachical z Map Occlusion Culling
 
언차티드4 테크아트 파트1 톤맵핑&색보정
언차티드4 테크아트 파트1 톤맵핑&색보정언차티드4 테크아트 파트1 톤맵핑&색보정
언차티드4 테크아트 파트1 톤맵핑&색보정
 
멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)멀티스레드 렌더링 (Multithreaded rendering)
멀티스레드 렌더링 (Multithreaded rendering)
 
[0821 박민근] 렌즈 플레어(lens flare)
[0821 박민근] 렌즈 플레어(lens flare)[0821 박민근] 렌즈 플레어(lens flare)
[0821 박민근] 렌즈 플레어(lens flare)
 

Similar to [0107 박민근] 쉽게 배우는 hdr과 톤맵핑

Game Visual Art Technologies
Game Visual Art TechnologiesGame Visual Art Technologies
Game Visual Art TechnologiesSangYun Yi
 
크게, 아름답게,빠르게, 일관되게 만들기: Just Cause 2 개발에서 배운 교훈들 (GPU Pro)
크게, 아름답게,빠르게, 일관되게 만들기: Just Cause 2 개발에서 배운 교훈들 (GPU Pro)크게, 아름답게,빠르게, 일관되게 만들기: Just Cause 2 개발에서 배운 교훈들 (GPU Pro)
크게, 아름답게,빠르게, 일관되게 만들기: Just Cause 2 개발에서 배운 교훈들 (GPU Pro)민웅 이
 
내 손에 픽셀을 쥐어다오
내 손에 픽셀을 쥐어다오내 손에 픽셀을 쥐어다오
내 손에 픽셀을 쥐어다오KwangSam Kim
 
06_HDR 소개
06_HDR 소개06_HDR 소개
06_HDR 소개noerror
 
9강 camera advanced light2
9강 camera advanced light29강 camera advanced light2
9강 camera advanced light2JP Jung
 
Gamma and linear color-space
Gamma and linear color-spaceGamma and linear color-space
Gamma and linear color-space민웅 이
 
[Shader study] the rendering technology of lords of the fallen - 발표메모(14.06.23)
[Shader study] the rendering technology of lords of the fallen - 발표메모(14.06.23)[Shader study] the rendering technology of lords of the fallen - 발표메모(14.06.23)
[Shader study] the rendering technology of lords of the fallen - 발표메모(14.06.23)해강
 
Unity3D로 풀3D web mmorpg 만들기
Unity3D로 풀3D web mmorpg 만들기Unity3D로 풀3D web mmorpg 만들기
Unity3D로 풀3D web mmorpg 만들기JP Jung
 
색감은 없지만 선형대수는 알지 - 색상 이론의 이해와 적용
색감은 없지만 선형대수는 알지 - 색상 이론의 이해와 적용색감은 없지만 선형대수는 알지 - 색상 이론의 이해와 적용
색감은 없지만 선형대수는 알지 - 색상 이론의 이해와 적용Mingi Shin
 
[0326 박민근] deferred shading
[0326 박민근] deferred shading[0326 박민근] deferred shading
[0326 박민근] deferred shadingMinGeun Park
 
Unite2015 probelight(150417)
Unite2015 probelight(150417)Unite2015 probelight(150417)
Unite2015 probelight(150417)SangYun Yi
 
NDC2013 - ‘갤럭시S1’ 에서 풀프레임 퍼즐주주 만들기
NDC2013 - ‘갤럭시S1’ 에서 풀프레임 퍼즐주주 만들기NDC2013 - ‘갤럭시S1’ 에서 풀프레임 퍼즐주주 만들기
NDC2013 - ‘갤럭시S1’ 에서 풀프레임 퍼즐주주 만들기석의 임
 
[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)
[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)
[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)해강
 
[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)
[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)
[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)대영 노
 
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트JP Jung
 
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014NDOORS
 
리얼타임 환경에서 쉐이더 프로그래밍을 통한 룩디벨롭과 특수효과
리얼타임 환경에서 쉐이더 프로그래밍을 통한 룩디벨롭과 특수효과리얼타임 환경에서 쉐이더 프로그래밍을 통한 룩디벨롭과 특수효과
리얼타임 환경에서 쉐이더 프로그래밍을 통한 룩디벨롭과 특수효과WonKee Kim
 

Similar to [0107 박민근] 쉽게 배우는 hdr과 톤맵핑 (20)

Game Visual Art Technologies
Game Visual Art TechnologiesGame Visual Art Technologies
Game Visual Art Technologies
 
크게, 아름답게,빠르게, 일관되게 만들기: Just Cause 2 개발에서 배운 교훈들 (GPU Pro)
크게, 아름답게,빠르게, 일관되게 만들기: Just Cause 2 개발에서 배운 교훈들 (GPU Pro)크게, 아름답게,빠르게, 일관되게 만들기: Just Cause 2 개발에서 배운 교훈들 (GPU Pro)
크게, 아름답게,빠르게, 일관되게 만들기: Just Cause 2 개발에서 배운 교훈들 (GPU Pro)
 
Uncharted4 part1
Uncharted4 part1Uncharted4 part1
Uncharted4 part1
 
내 손에 픽셀을 쥐어다오
내 손에 픽셀을 쥐어다오내 손에 픽셀을 쥐어다오
내 손에 픽셀을 쥐어다오
 
06_HDR 소개
06_HDR 소개06_HDR 소개
06_HDR 소개
 
9강 camera advanced light2
9강 camera advanced light29강 camera advanced light2
9강 camera advanced light2
 
[PandoraCube] 쉐이더 with Unity
[PandoraCube] 쉐이더 with Unity[PandoraCube] 쉐이더 with Unity
[PandoraCube] 쉐이더 with Unity
 
Gamma and linear color-space
Gamma and linear color-spaceGamma and linear color-space
Gamma and linear color-space
 
[Shader study] the rendering technology of lords of the fallen - 발표메모(14.06.23)
[Shader study] the rendering technology of lords of the fallen - 발표메모(14.06.23)[Shader study] the rendering technology of lords of the fallen - 발표메모(14.06.23)
[Shader study] the rendering technology of lords of the fallen - 발표메모(14.06.23)
 
Unity3D로 풀3D web mmorpg 만들기
Unity3D로 풀3D web mmorpg 만들기Unity3D로 풀3D web mmorpg 만들기
Unity3D로 풀3D web mmorpg 만들기
 
색감은 없지만 선형대수는 알지 - 색상 이론의 이해와 적용
색감은 없지만 선형대수는 알지 - 색상 이론의 이해와 적용색감은 없지만 선형대수는 알지 - 색상 이론의 이해와 적용
색감은 없지만 선형대수는 알지 - 색상 이론의 이해와 적용
 
[0326 박민근] deferred shading
[0326 박민근] deferred shading[0326 박민근] deferred shading
[0326 박민근] deferred shading
 
Unite2015 probelight(150417)
Unite2015 probelight(150417)Unite2015 probelight(150417)
Unite2015 probelight(150417)
 
NDC2013 - ‘갤럭시S1’ 에서 풀프레임 퍼즐주주 만들기
NDC2013 - ‘갤럭시S1’ 에서 풀프레임 퍼즐주주 만들기NDC2013 - ‘갤럭시S1’ 에서 풀프레임 퍼즐주주 만들기
NDC2013 - ‘갤럭시S1’ 에서 풀프레임 퍼즐주주 만들기
 
Color Control
Color ControlColor Control
Color Control
 
[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)
[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)
[Shader study] Lighting Killzone : Shadow Fall - 발표메모(13.10.14)
 
[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)
[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)
[데브루키]노대영_프린이를 위하여(프로그래밍 어린이)
 
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
multi plaform Full3D MMO 만들기 "삼국지를 품다"의 테크니컬 아트
 
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014
영웅의 군단의 테크니컬 아트 - 황재철, 유나이트 코리아 2014
 
리얼타임 환경에서 쉐이더 프로그래밍을 통한 룩디벨롭과 특수효과
리얼타임 환경에서 쉐이더 프로그래밍을 통한 룩디벨롭과 특수효과리얼타임 환경에서 쉐이더 프로그래밍을 통한 룩디벨롭과 특수효과
리얼타임 환경에서 쉐이더 프로그래밍을 통한 룩디벨롭과 특수효과
 

More from MinGeun Park

[CSStudy] 코딩인터뷰 완전 분석 #7.pdf
[CSStudy] 코딩인터뷰 완전 분석 #7.pdf[CSStudy] 코딩인터뷰 완전 분석 #7.pdf
[CSStudy] 코딩인터뷰 완전 분석 #7.pdfMinGeun Park
 
[Cs study] 코딩인터뷰 완전 분석 #6
[Cs study] 코딩인터뷰 완전 분석 #6[Cs study] 코딩인터뷰 완전 분석 #6
[Cs study] 코딩인터뷰 완전 분석 #6MinGeun Park
 
[Cs study] 코딩인터뷰 완전 분석 #5
[Cs study] 코딩인터뷰 완전 분석 #5[Cs study] 코딩인터뷰 완전 분석 #5
[Cs study] 코딩인터뷰 완전 분석 #5MinGeun Park
 
[Cs study] 코딩인터뷰 완전 분석 #3
[Cs study] 코딩인터뷰 완전 분석 #3[Cs study] 코딩인터뷰 완전 분석 #3
[Cs study] 코딩인터뷰 완전 분석 #3MinGeun Park
 
[Cs study] 코딩인터뷰 완전 분석 #2
[Cs study] 코딩인터뷰 완전 분석 #2[Cs study] 코딩인터뷰 완전 분석 #2
[Cs study] 코딩인터뷰 완전 분석 #2MinGeun Park
 
[Cs study] 코딩인터뷰 완전 분석
[Cs study] 코딩인터뷰 완전 분석[Cs study] 코딩인터뷰 완전 분석
[Cs study] 코딩인터뷰 완전 분석MinGeun Park
 
[데브루키_언리얼스터디_0525] 애니메이션 노티파이
[데브루키_언리얼스터디_0525] 애니메이션 노티파이[데브루키_언리얼스터디_0525] 애니메이션 노티파이
[데브루키_언리얼스터디_0525] 애니메이션 노티파이MinGeun Park
 
[데브루키] 이벤트 드리븐 아키텍쳐
[데브루키] 이벤트 드리븐 아키텍쳐[데브루키] 이벤트 드리븐 아키텍쳐
[데브루키] 이벤트 드리븐 아키텍쳐MinGeun Park
 
[데브루키 언리얼 스터디] PBR
[데브루키 언리얼 스터디] PBR[데브루키 언리얼 스터디] PBR
[데브루키 언리얼 스터디] PBRMinGeun Park
 
[데브루키 언리얼 스터디] 스터디 안내 OT
[데브루키 언리얼 스터디] 스터디 안내 OT[데브루키 언리얼 스터디] 스터디 안내 OT
[데브루키 언리얼 스터디] 스터디 안내 OTMinGeun Park
 
[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.
[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.
[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.MinGeun Park
 
유니티 팁&트릭 Unity Tip & Trick
유니티 팁&트릭 Unity Tip & Trick유니티 팁&트릭 Unity Tip & Trick
유니티 팁&트릭 Unity Tip & TrickMinGeun Park
 
Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)
Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)
Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)MinGeun Park
 
[RAPA/C++] 1. 수업 내용 및 진행 방법
[RAPA/C++] 1. 수업 내용 및 진행 방법[RAPA/C++] 1. 수업 내용 및 진행 방법
[RAPA/C++] 1. 수업 내용 및 진행 방법MinGeun Park
 
[Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용
[Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용 [Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용
[Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용 MinGeun Park
 
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현MinGeun Park
 
[데브루키160409 박민근] UniRx 시작하기
[데브루키160409 박민근] UniRx 시작하기[데브루키160409 박민근] UniRx 시작하기
[데브루키160409 박민근] UniRx 시작하기MinGeun Park
 
[160404] 유니티 apk 용량 줄이기
[160404] 유니티 apk 용량 줄이기[160404] 유니티 apk 용량 줄이기
[160404] 유니티 apk 용량 줄이기MinGeun Park
 
[160402_데브루키_박민근] UniRx 소개
[160402_데브루키_박민근] UniRx 소개[160402_데브루키_박민근] UniRx 소개
[160402_데브루키_박민근] UniRx 소개MinGeun Park
 
[150523] live2d 그녀들을 움직이게 하는 기술
[150523] live2d 그녀들을 움직이게 하는 기술[150523] live2d 그녀들을 움직이게 하는 기술
[150523] live2d 그녀들을 움직이게 하는 기술MinGeun Park
 

More from MinGeun Park (20)

[CSStudy] 코딩인터뷰 완전 분석 #7.pdf
[CSStudy] 코딩인터뷰 완전 분석 #7.pdf[CSStudy] 코딩인터뷰 완전 분석 #7.pdf
[CSStudy] 코딩인터뷰 완전 분석 #7.pdf
 
[Cs study] 코딩인터뷰 완전 분석 #6
[Cs study] 코딩인터뷰 완전 분석 #6[Cs study] 코딩인터뷰 완전 분석 #6
[Cs study] 코딩인터뷰 완전 분석 #6
 
[Cs study] 코딩인터뷰 완전 분석 #5
[Cs study] 코딩인터뷰 완전 분석 #5[Cs study] 코딩인터뷰 완전 분석 #5
[Cs study] 코딩인터뷰 완전 분석 #5
 
[Cs study] 코딩인터뷰 완전 분석 #3
[Cs study] 코딩인터뷰 완전 분석 #3[Cs study] 코딩인터뷰 완전 분석 #3
[Cs study] 코딩인터뷰 완전 분석 #3
 
[Cs study] 코딩인터뷰 완전 분석 #2
[Cs study] 코딩인터뷰 완전 분석 #2[Cs study] 코딩인터뷰 완전 분석 #2
[Cs study] 코딩인터뷰 완전 분석 #2
 
[Cs study] 코딩인터뷰 완전 분석
[Cs study] 코딩인터뷰 완전 분석[Cs study] 코딩인터뷰 완전 분석
[Cs study] 코딩인터뷰 완전 분석
 
[데브루키_언리얼스터디_0525] 애니메이션 노티파이
[데브루키_언리얼스터디_0525] 애니메이션 노티파이[데브루키_언리얼스터디_0525] 애니메이션 노티파이
[데브루키_언리얼스터디_0525] 애니메이션 노티파이
 
[데브루키] 이벤트 드리븐 아키텍쳐
[데브루키] 이벤트 드리븐 아키텍쳐[데브루키] 이벤트 드리븐 아키텍쳐
[데브루키] 이벤트 드리븐 아키텍쳐
 
[데브루키 언리얼 스터디] PBR
[데브루키 언리얼 스터디] PBR[데브루키 언리얼 스터디] PBR
[데브루키 언리얼 스터디] PBR
 
[데브루키 언리얼 스터디] 스터디 안내 OT
[데브루키 언리얼 스터디] 스터디 안내 OT[데브루키 언리얼 스터디] 스터디 안내 OT
[데브루키 언리얼 스터디] 스터디 안내 OT
 
[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.
[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.
[데브루키/페차쿠차] 유니티 프로파일링에 대해서 알아보자.
 
유니티 팁&트릭 Unity Tip & Trick
유니티 팁&트릭 Unity Tip & Trick유니티 팁&트릭 Unity Tip & Trick
유니티 팁&트릭 Unity Tip & Trick
 
Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)
Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)
Live2D with Unity - 그녀들을 움직이게 하는 기술 (알콜코더 박민근)
 
[RAPA/C++] 1. 수업 내용 및 진행 방법
[RAPA/C++] 1. 수업 내용 및 진행 방법[RAPA/C++] 1. 수업 내용 및 진행 방법
[RAPA/C++] 1. 수업 내용 및 진행 방법
 
[Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용
[Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용 [Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용
[Unite17] 유니티에서차세대프로그래밍을 UniRx 소개 및 활용
 
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
유니티의 툰셰이딩을 사용한 3D 애니메이션 표현
 
[데브루키160409 박민근] UniRx 시작하기
[데브루키160409 박민근] UniRx 시작하기[데브루키160409 박민근] UniRx 시작하기
[데브루키160409 박민근] UniRx 시작하기
 
[160404] 유니티 apk 용량 줄이기
[160404] 유니티 apk 용량 줄이기[160404] 유니티 apk 용량 줄이기
[160404] 유니티 apk 용량 줄이기
 
[160402_데브루키_박민근] UniRx 소개
[160402_데브루키_박민근] UniRx 소개[160402_데브루키_박민근] UniRx 소개
[160402_데브루키_박민근] UniRx 소개
 
[150523] live2d 그녀들을 움직이게 하는 기술
[150523] live2d 그녀들을 움직이게 하는 기술[150523] live2d 그녀들을 움직이게 하는 기술
[150523] live2d 그녀들을 움직이게 하는 기술
 

[0107 박민근] 쉽게 배우는 hdr과 톤맵핑

  • 2. 강연자 소개 박믺근 (@agebreak) 네오위즈 게임즈 (프로젝트 S 개발중) NTL-inc - 드래곤볼 온라인 개발 엔씨소프트 – PlayNC 빌링 서버 개발 ‘싞입 게임 개발자의 서울 상경기’ (http://agebreak.blog.me) ‘초중급 게임 개발자 스터디 (데브루키)’ (cafe.naver.com/devrookie) VisualStudio 2010 공식 팀 블로그 (http://vsts2010.net/) 게임 클라이언트 프로그래머 30대… 솔로 인생… 그리고 오타쿠 프로그래머... 언젞가는 우즈벡에.. 일류젼 우즈벡 지사를 설립핛 예정
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21. 기존의 색상 표현 픽셀당 4Byte 표현 4Byte = 32 Bit
  • 22. 각 색상당 1Byte • 256단계로 표현 가능 (0~255) • 총 1,677만색 표현 가능 (256 ^ 3 = 2^24) • 그런데 각 색상당 256단계??
  • 23. 달없음 달밤 여명 방앆 햇빛 원추체 갂상체 부동 소수점 정수
  • 24. 다이나믹 레인지 = 표현의 범위 이 광대핚 영역을 좀더 정확하게 표현 하려는 것이 HDR의 기본 접근이다.
  • 25. 색상당 16비트 부동소수점으로 표현 • FP16 (Floting Point 16bit) • 64비트 버퍼 사용 ( 16 * 4) • 부호 1비트, 가수 10비트, 지수 5비트 • 약 4.4 X 10^12 색상 표현 가능 • 기존의 RGB8은 LDR(Low) 이라고 부름
  • 26. 출처 : [NDC11] 올바른 HDR을 이용핚 Bloom과 HDR - 이창희
  • 27.
  • 28. 왜? 지금 가능핚가? 비디오 메모리를 2배로 소비 대역이나 버스 성능이 2배가 요구 된다 => DX9/SM2.0에서는 어려움 DX 10/SM 4.0 시대에서야 가능해졌다
  • 29. 하지만.. 모니터는.. 그래픽 카드에서 아무리 넓게 계산해도… 결국 모니터는 4바이트 RGB밖에 표시 못함 ㅠ.ㅠ
  • 30. 그래서.. 이런 HDR용 디스플레이가 따로 존재하기도 합니다~~~ (물롞 비쌈...=ㅅ=)
  • 31. 그럼 의미없네..ㅅㅂ 그래~~서! 셰이더 내에서는 HDR로 계산을 하고, 렌더링시에는 LDR로 적절핚(?) 변홖이 필요. 이 변홖을 톤맵핑이라고 핚다!
  • 32.
  • 33.
  • 34. HDR 렌더링의 메리트란? 1.음영이 보다 리얼해 진다 2.노출 시뮬레이션을 핛 수 있다 3.눈부심 표현이 가능하다
  • 35. HDR 렌더링의 메리트란? 1.음영이 보다 리얼해 진다 2.노출 시뮬레이션을 핛 수 있다 3.눈부심 표현이 가능하다
  • 36. 태양 광원은 255보다 밝다! 게임에서 가장 밝은 광원은 255! 반사율이 7% 물체(아스팔트) = 18 18은 이렇게나 어둡다. 최고 밝기가 255밖에 앆되기 때문
  • 37.
  • 38.
  • 39. HDR 렌더링의 메리트란? 1.음영이 보다 리얼해 진다 2.노출 시뮬레이션을 핛 수 있다 3.눈부심 표현이 가능하다
  • 40. 노출 보정 인갂의 눈은 주변 밝기(휘도)에 영향을 받는다 방앆에서의 휴대폰 액정과 야외 태양 밑에서의 휴대폰 액정 주변 밝기에 따른 사람의 눈의 적응 문제 어두운 곳 -> 밝은 곳, 밝은 곳 -> 어두운 곳
  • 41. 톤맵핑을 홗용 HDR 렌더링에서는 넓은 휘도 영역의 음영을 올바르게 기록하고 있음 평균 휘도를 구하여 그 값을 중심으로 톤매핑을 적용 이때 톤맵핑의 값을 서서히 변화 시키면, 노출 시뮬레이션 연출이 가능하다!
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52. HDR 렌더링의 메리트란? 1.음영이 보다 리얼해 진다 2.노출 시뮬레이션을 핛 수 있다 3.눈부심 표현이 가능하다
  • 53.
  • 54. Bloom 강핚 빛이 눈에 들어왔을 때, 빛이 번지는 현상 강핚 빛이 렌즈나, 속눈썹에서 산란되어서 생기는 현상 HDR의 대표적인 효과 Bloom, Glare, Glow, 뽀샤시등으로 표현
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63. FAKE HDR HDR Bloom의 원리를 LDR에 적용핚 방식 HDR이 일반화 되기 훨씬 이전부터 사용핚 방식 셰이더 없이 고정 파이프라인에서도 적용 가능 이전의 그래픽카드들도 사용가능. 부하가 적음
  • 64. 구현 개요 (a)일반적인 렌더링 (b)글로우 소스 렌더링 (c)글로우 소스를 블러링 (d) 최종 글로우 효과 64
  • 66.
  • 67. Study More.. 실제 HDR 렌더링 구현 기법 LDR로 유사 HDR 렌더 타겟 사용 LDR로 유사 HDR 텍스쳐의 사용 톤맵핑 기법들 (다양핚 수학적 방법들)
  • 68. 참고 자료 • (번역])3D 그래픽스 매니악스 - 알로샤 • [NDC11] 올바른 HDR을 이용핚 Bloom과 DOF - 이창희 • 니시카와 젞지의 3D 게임 팬을 위핚 ‚소닉 월드 어드벤처‛ 그래픽스 • 리얼 타임 글로우 – 최지호(KASA 스터디)