목록분류 전체보기 (154)
개발하는 리프터 꽃게맨입니다.
사용기술DirectX 11 및 HSLS, C++ 라이브러리Assimp 모델로딩imgui GUI 참고문헌https://www.pbr-book.org/4ed/contents Physically Based Rendering: From Theory to Implementation www.pbr-book.orghttps://media.disneyanimation.com/uploads/production/publication_asset/48/asset/s2012_pbs_disney_brdf_notes_v3.pdf

참고문헌https://cg.informatik.uni-freiburg.de/publications/2014_EG_SPH_STAR.pdf 사용 APIDirectX 11 입자의 데이터 구조 총 3개의 컴퓨트 쉐이더를 사용하여파이프라인처럼 density, pressure -> force -> velocity, position 을 계산 핵심 구현 알고리즘구현에 초점을 맞췄기에근접 이웃을 찾지 않고 단순하게 전체를 루프 Compute Density Pressure (4) 번 방정식을 이용하여 Wij를 계산커널 함수는 논문에서 제시한 cubic spline 함수를 사용 앞서 계산한 밀도 값을 이용하여 압력 계산 사용한 코드 Compute Force 근사식을 이용하여 압력의 힘 벡터, 점성의 힘 벡터, 중력 등을 ..

이 장에서는 실시간 그래픽의 핵심 구성 요소인 그래픽 렌더링 파이프라인 (간단히 파이프라인)에 대해서 소개한다.렌더링 파이프라인의 주요 기능은 '가상 카메라', '3차원 객체', '광원' 등을 제공받아 2차원 이미지를 생성하고 렌더링하는 것이다. 따라서 '렌더링 파이프라인'이란 실시간 렌더링의 기본적인 도구이다. (핵심 기술이라고 설명할 수 있다.) 렌더링된 이미지에서 객체의 위치와 형태는 오브젝트의 기하학적 모양(Geometry), 환경의 특성, 카메라의 배치등에 따라 결정되고, 오브젝트의 외관은 재질 속성(Material), 광원, 텍스처 및 음영 방정식에 의해 결정된다.(음영 방정식 Shading equation 은 광원, 물체 표면, 관찰자 간의 상호작용을 기반으로 최종 색상을 계산하는 방정식을..

실시간 렌더링은 컴퓨터에서 이미지를 빠르게 생성하는 것을 다룬다. 화면에 이미지가 나타나면, 사용자는 행동하고 반응하며, 이 피드백이 다음에 생성되는 이미지를 결정한다.이러한 반응과 렌더링은 Cycle은 충분히 빠른 속도로 이루어져야 한다. 그러면 사용자는 개별 이미지를 보는 것이 아니라 역동적인 과정에 몰입할 수 있게 된다. 이미지가 표시되는 속도(rate)는 FPS(초당 프레임 수) 또는 Hz(헤르츠)로 측정된다.1 FPS에서는 상호작용의 느낌이 거의 없으며, 사용자는 새로운 이미지가 갱신되기까지의 텀을 고통스럽게 인식하게 된다.6 FPS 부터 상호작용의 느낌이 형성되기 시작하며, 비디오 게임은 30, 60 , 72 .. 혹은 그 이상의 FPS 를 목표로 한다. 영화 프로젝터는 24 FPS로 영상을 ..

테셀레이션 단계를 사용하지 않는다고 가정하면, 지오메트리 쉐이더 단계는 정점 쉐이더와 픽셀 쉐이더 단계 사이에 위치한 선택적 단계이다. 정점 쉐이더가 정점을 입력으로 받는 반면, 지오메트리 쉐이더는 전체 프리미티브를 입력으로 받는다. 예를 들어, 삼각형 목록을 그리는 경우, 지오메트리 쉐이더 프로그램은 목록의 각 삼각형 T에 대해 실행된다.for(UINT i = 0; i 각 삼각형의 세 정점이 지오메트리 쉐이더에 입력되며, 지오메트리 쉐이더는 프리미티브 목록을 출력한다. 정점 쉐이더가 정점을 생성하거나 삭제할 수 없는 것과 달리, 지오메트리 쉐이더의 주요 이점은 기하학을 생성하거나 삭제할 수 있다는 것이다. 이는 GPU에서 흥미로운 효과를 구현할 수 있게 해준다. 예를 들어, 입력된 프리미티브는 하나 ..