Loading...
2018. 1. 31. 16:14

depth-precision-visualized

원문을 보시는 것을 추천드립니다. 깊이 정밀도 시각화 깊이 정밀도는 모든 그래픽스 프로그래머가 조만간 고민해 봐야 하는 골칫거리다.많은 아티클과 논문에서 이미 이 주제가 다루어졌고, 서로 다른 게임들, 엔진들,그리고 디바이스들에서 다양한 깊이버퍼 포멧과 설정을 볼 수 있다. 원근투영과의 상호작용하는 방식 때문에 GPU 하드웨어 깊이 매핑은 다소 난해하며방정식을 연구한다고 해서 바로 상황이 명확해 지지는 않는다.어떻게 동작하는지 알기 위해서는 몇장의 그림을 그려보는게 좋다. 이 글은 3개의 메인 파트가 있다.첫번째 파트에서는, 비선형(nonlinear) 깊이 매핑을 하는 이유에 대해 다룬다.두번째 파트에서는, 서로 다른 상황에서 비선형 깊이 매핑이 어떻게 수행되는지 이해를 돕는직관적이며, 시각적인 몇개의 ..

2018. 1. 26. 17:43

디더링 (Dithering)

디더링이란 무었인가?컴퓨터 그래픽스에서 제한된 색을 사용하여 여러 색을 최대한 근사하게 생성하기 위해 사용되는 기술.화상의 각 면을 다른 계조 색의 도트 집합으로 처리하는 기술에 의존한다.결국은 없는 색을 만들기 위해 색을 조밀하게 배합하여 다른색상인 것처럼 보이게 하는 방법.참고 : 앱 개발에 필요한 Image magick 활용 이 기술로 매끄럽지 못하고 계단모양으로 울퉁불퉁한 윤곽선이나 대각선을 완화시킬 수 있다.참조 : wiki, 디더링 이전 방식? 으로는 망점(halftone screen)이 있는데 망점은 점의 크기나 간격에 따라연속 색조의 상을 따라 만드는 복사기법으로 점으로 그라디언트와 같은 효과를 낸다.참조 : wiki, 망점 (halftone screen) Reference Link- wi..

Texture types

이 글의 내용은 이곳의 내용중 필요한 부분만 정리한 것입니다.원문을 보시길 추천합니다.http://wiki.polycount.com/wiki/Texture_types 텍스쳐 타입게임모델에 텍스처 처리를 할 때 사용되어지는 몇가지 map 타입이 있다.모든 경우에, 화면에 렌더링 되는 최종 이미지를 생성하기 위해 다른 map 타입들이 함께 동작한다. 아티스트들은 각 작업의 균형을 맞추기 위해 이러한 맵들을 동시에 만든다.대부분의 경우, 이러한 이미지는 투명도(Transparency) 또는 광택(gloss)과 같은단일 값 슬라이더 대신, 픽셀 단위 수준에서 동작하는 재료 속성을 위한 마스크로 간주될 수 있다.가장 흔한 타입은 diffuse, emissive, normal, opacity, 그리고 gloss이다..

rgbm

FP10 : 엑스박스 고유의 포멧. HDR 광원을 묘사하기 위해 사용.HDR표준 포맷인 FP16을 운용하기에 콘솔의 대역폭이 너무 작아 개발.FP16의 RGBA 4개 채널 각 16비트로 합계 64비트의 함수 데이터를RGB 10비트 + A 2비트로 합계 32비트에 축소시킴.이는 RGBA8 포맷과 동일한 데이터 크기로 색영역은 훨씬 넓지만 광원을 자연스럽게 묘사할 만큼범위가 충분하지 않다. LOGLUV : 플레이스테이션 고유포멧. HDR 광원을 묘사하기 위해 사용.인간의 눈이 색상보다는 휘도에 민감한 것에 착안하여 RGB같은 색상정보가 아닌휘도(Luminance)와 색차(Chrominance)정보를 지원하는 HDR포맷.RGBA8의 색상정보를 휘도16비트, 색차U/V(적,청) 각 8비트로 컨버팅하는 알고리즘...

2016. 10. 22. 09:58

Efficient Gaussian blur with linear sampling

원문 : Efficient Gaussian blur with linear sampling이 글은 필요에 의해 모자란 번역실력으로 번역한 글이다.좀 더 올바른 정보 습득을 위해서는 원문을 추천한다. 선형 샘플링과 효율적인 가우시안 블러가우시안 블러는 원본 이미지를 부드럽고 흐리게 만드는데 사용하는 이미지 공간 효과다.그리고 나서 이 이미지는 bloom이나 depth of field, heat haze or fuzzy glass 같은좀 더 세련된 알고리즘을 만드는데 사용된다.이 글에서는 효율적인 가우시안 필터를 만들기 위한 다양한 속성을 활용하는 방법과텍스처 조회texture fetch) 수를 줄이기 위해 선형 텍스처 필터링을 활용하여기본적인 가우시안 블러 필터 구현 성능을 크게 향상시킬수 있는 기술을 제시..

2016. 10. 12. 18:11

Blur 1

이전에도 blur를 한번 정리한적이 있긴 한데 다시 보다보니 이전에 적어둔 글에서잘못된 부분이 있어서 처음부터 다시 r&d 하면서 정리를 하게 되었다. 블러링 방식은 크게 box blur와 gaussian blur 이 두가지로 나뉜다.box blur는 16box, 64box, 9cone 방식이 있고gaussian은 전통적인 gaussian 방식과 최적화시킨 SGX방식이 있다. 많이 쓰이는 9cone과 gaussian, 그리고 sgx만 간단하게 살펴보자 9cone blur9cone의 기본 개념은 현재점을 중심으로 상,하,좌,우,상좌,상우,하좌,하우 이렇게 기준점 + offset points(8) 값을 합치는 것이다. 원본 이미지 1/4 downsampling 한 이미지 1/4 downsampling + 9..

2016. 8. 14. 10:18

UV Texture Coordinates and Texture Mapping - OpenGL / DirectX

원문 : http://thedev-log.blogspot.kr/2012/07/texture-coordinates-tutorial-opengl-and.html이 글은 필요에 의해 모자란 번역실력으로 번역한 글입니다. 이해를 돕기 위해 원문을 보시길 추천드립니다. 나는 지금 학생이 아니라서, WebGL을 좀 심도있게 살펴보고 새로운 3D와 그래픽 개념을 배우기 위해 노력하고 있다.범프매핑, 그림자 매핑 같은 것들을 배우기 전에 텍스처 매핑에 대해 기반을다지기 위해 간단한 튜토리얼을 적기로 했다. 나의 생각으로는 새로운 것을 배울 때 좋은 방법은 관련된 위키피디아 페이지들을 검색하는 것이다.그러므로 여기 글을 읽기 전이든, 일고 나서든 위키피디아 페이지를한번 열어서 읽어보길 권장한다.텍스처 매핑이 처음 사용된..

normal map compression

보통 게임에서는 메모리 용량 때문에 텍스쳐를 압축해서 많이 사용하는데pc에서는 특히 dds 파일을 많이 사용한다.dds 파일 포멧을 많이 쓰는 이유는 "DXT 압축" 링크를 참조하면 된다. 그런데 문제는 DXT 압축 알고리즘이 노멀맵을 염두에 두고 설계한 것이 아니기 때문에 노멀맵에DXT 압축을 사용하는것은 퀄리티에 심각한 결점을 부과해 준다는 것이다. 그래서 노멀맵은 어떻게 해야할까?그렇다면 어떻게 해야 할까? dxt의 그 가성비를 포기해야 하는가?다른 맵과는 다른 노멀맵의 특성을 이용하면 약간의 편법을 이용할 수 있다.우선 노멀맵은 다른 텍스쳐들(diffuse, specular, emissive etc..)처럼 색의 정보를 저장하는게 아니라기울기 정보, 즉 방향정보를 저장하고 있다.이 기울기 정보를 ..