본문 바로가기

전체 글

(17)
Rust에서 DirectX12 개발하기(3) - DirectX 초기화하기(CommandQueue, CommandAllocator, SwapChain 초기화) 이전 편에서는 Rust에서 DirectX12를 사용하기 위해서, 디바이스를 초기화하는 방법을 살펴보았습니다. 2021.06.07 - [개발/Rust] - Rust에서 DirectX12 개발하기(2) - DirectX 초기화하기(디바이스 초기화) Rust에서 DirectX12 개발하기(2) - DirectX 초기화하기(디바이스 초기화) 이전 편에서는 Rust에서 윈도우 창을 띄우기 위한 간단한 프로젝트를 살펴보았습니다. 2021.06.07 - [개발/Rust] - Rust에서 DirectX12 개발하기(1) - 윈도우 창 생성하기 Rust에서 DirectX12 개발하기(1) - 윈도.. honey-balm.tistory.com 이번 편에서는, 초기화한 디바이스를 통해서 명령을 전달하기 위한 CommandA..
Rust에서 DirectX12 개발하기(2) - DirectX 초기화하기(디바이스 초기화) 이전 편에서는 Rust에서 윈도우 창을 띄우기 위한 간단한 프로젝트를 살펴보았습니다. 2021.06.07 - [개발/Rust] - Rust에서 DirectX12 개발하기(1) - 윈도우 창 생성하기 Rust에서 DirectX12 개발하기(1) - 윈도우 창 생성하기 이전 편에서는 Rust에서 DirectX12 개발을 하기 위한 기본적인 프로젝트 설정에 대해서 알아보았습니다. 2021.06.06 - [개발/Rust] - Rust에서 DirectX12 개발하기(0) - 개발환경 준비하기 Rust에서 DirectX12 개.. honey-balm.tistory.com 이번 편에서는 DirectX를 이용하기에 앞서서, 여러 리소스와 장치를 초기화하는 과정을 알아보겠습니다. DirectX12를 사용하기 앞서서, 해..
Rust에서 DirectX12 개발하기(1) - 윈도우 창 생성하기 이전 편에서는 Rust에서 DirectX12 개발을 하기 위한 기본적인 프로젝트 설정에 대해서 알아보았습니다. 2021.06.06 - [개발/Rust] - Rust에서 DirectX12 개발하기(0) - 개발환경 준비하기 Rust에서 DirectX12 개발하기(0) - 개발환경 준비하기 최근 Rust라는 언어가 부상하고 있고, 구글, MS와 같은 글로벌 IT회사에서 자사의 제품에 부분적으로 Rust를 도입하고 있습니다. 특히 MS는 자사의 OS인 Windows에서 지난 12년간 발견한 오류중 70% 정도 honey-balm.tistory.com 이번 편에서는 간단한 윈도우 창을 생성하는 프로그램을 만들겠습니다. 지난 편에서 만들었던 프로젝트의 src 폴더에 d3d12.rs라는 이름의 파일을 추가해줍니다...
Rust에서 DirectX12 개발하기(0) - 개발환경 준비하기 최근 Rust라는 언어가 부상하고 있고, 구글, MS와 같은 글로벌 IT회사에서 자사의 제품에 부분적으로 Rust를 도입하고 있습니다. 특히 MS는 자사의 OS인 Windows에서 지난 12년간 발견한 오류중 70% 정도가 메모리 안정성 오류라고 밝혔으며, Rust 도입을 통해 이런 오류의 대부분을 제거할 수 있을 것이라고 발표했습니다. 또한 MS에서는 자사의 Win32API를 여러 언어에서 사용할 수 있도록 Win32 Metadata 프로젝트를 진행하고 있습니다. 이 Metadata 프로젝트를 바탕으로 나온것이 바로 Rust에서 윈도우 API를 호출할 수 있는 windows 크레이트입니다. https://crates.io/crates/windows 위 프로젝트에서 DirectX12 프로젝트의 샘플을 구..
컴퓨터 그래픽스 : Rendering Equation(렌더링 방정식) 이 글은 수학적으로 정확한 정의를 알려주기보다는, 직관적인 이해를 돕기 위해 작성한 글입니다. 그 점 양해부탁드립니다. 최근 엔비디아에서 RTX 시리즈 그래픽카드를 계속 출시하면서 일반 소비자들한테도 레이트레이싱이라는 기술이 많이 익숙해지기 시작했습니다. 하지만 이 기술은 최신의 기술이 아닌 오래 전부터 컴퓨터 그래픽스 분야에서 많이 사용되던 기술입니다. 다만 지금까지는 속도의 문제로 인해 리얼타임으로 적용시키지 못했다면, 엔비디아의 RTX 시리즈 그래픽카드는 이를 리얼타임으로 게임에서 구동가능케 해줍니다. 물론 실제 모든 빛을 추적하는 것이 아닌 반사와 굴절 효과에만 사용됩니다. 위 사진을 보면 RTX기능이 OFF / ON의 비교가 나와있습니다. OFF 상태에서는 벽에 비춰지는 유리창이 제대로 비춰지고..
컴퓨터 그래픽스 : PBR 이해를 위한 배경 지식(3) - Perfect Diffuse BRDF(반사율) 이 글은 수학적으로 정확한 정의를 알려주기보다는, 직관적인 이해를 돕기 위해 작성한 글입니다. 그 점 양해부탁드립니다. 지난 편에서는 BRDF에 대해서 알아봤습니다. 이러한 BRDF의 개념을 통해 우리는 빛의 반사를 수학적으로 표현할 수 있게 되었습니다. 또한 Reflectance의 개념을 알아봤습니다. 만약 이전 글을 보지 않았으면, 이번 글을 이해하는게 어려울 수도 있습니다. 꼭 이전 글의 내용을 이해하신 후에 읽어주시길 바랍니다. 2020/09/13 - [개발/컴퓨터 그래픽스] - 컴퓨터 그래픽스 : PBR 이해를 위한 배경 지식(2) - BRDF 컴퓨터 그래픽스 : PBR 이해를 위한 배경 지식(2) - BRDF 이 글은 수학적으로 정확한 정의를 알려주기보다는, 직관적인 이해를 돕기 위해 작성한 ..
컴퓨터 그래픽스 : PBR 이해를 위한 배경 지식(2) - BRDF 이 글은 수학적으로 정확한 정의를 알려주기보다는, 직관적인 이해를 돕기 위해 작성한 글입니다. 그 점 양해부탁드립니다. 지난 편에서는 Radiometry(방사 분석)에 대해서 알아봤습니다. 이러한 Radiometry의 개념을 통해 우리는 빛을 수량화할 수 있게 되었습니다. 만약 이전 글을 보지 않았으면, 이번 글을 이해하는게 어려울 수도 있습니다. 꼭 이전 글의 내용을 이해하신 후에 읽어주시길 바랍니다. 2020/09/11 - [개발/컴퓨터 그래픽스] - 컴퓨터 그래픽스 : PBR 이해를 위한 배경 지식(1) - Radiometry(방사 분석) 컴퓨터 그래픽스 : PBR 이해를 위한 배경 지식(1) - Radiometry(방사 분석) 이 글은 수학적으로 정확한 정의를 알려주기보다는, 직관적인 이해를 돕기..
컴퓨터 그래픽스 : PBR 이해를 위한 배경 지식(1) - Radiometry(방사 분석) 이 글은 수학적으로 정확한 정의를 알려주기보다는, 직관적인 이해를 돕기 위해 작성한 글입니다. 그 점 양해부탁드립니다. PBR(Physically Based Rendering)에 대해 공부를 하기 위해 책을 본다면, 일반적인 컴퓨터 공학을 공부한 학생들에게는 방사 조도, 복사 휘도 등의 생소한 개념과 단어들을 많이 접하게 될 것입니다. 또한 이러한 개념과 단어에 대한 정확한 이해를 하지 않고 넘어가게 된다면 PBR을 공부하면서 많은 어려움을 겪게 될 것입니다. 이 글에서는 이런 개념들에 대한 간단한 설명을 담고 있으며, 수학적으로는 정확하지는 않더라도 많은 분들이 쉽게 이해할 수 있도록 최대한 풀어쓰도록 하겠습니다. 또한 영어의 개념들이 한국어로 번역되는 과정에서 책마다 다르게 번역되는 경우가 있기에, ..