DirectX11 DirectX에서 디퍼드 렌더링 디퍼드 렌더링이란, 2차원의 스크린 스페이스상에서 쉐이딩을 행하는 기술입니다. 1패스째로 칼라나 법선등의 정보를 출력해, 2패스째로 그러한 정보를 사용해 렌더링해 갑니다. 색상이나 법선과 같은 정보를 G-Buffer라고 합니다. 이번에는 디퍼드 렌더링에서 법선을 사용한 디렉션 라이트의 라이팅을 구현하고 싶습니다. G-버퍼 칼라 법선 1패스째에서는 컬러나 법선이라고 말한 라이팅에 필요한 정보를... DirectX11DirectX게임 제작 DirectX로 화면 분할 이와 같이 DirectX로 화면 분할하는 방법을 소개합니다. DirectX는 그릴 때 다양한 행렬을 사용하지만, 그 중 하나에 뷰포트 행렬이라는 것이 있습니다. 이 뷰포트 행렬을 그리기 전에 설정함으로써 화면 분할을 할 수 있습니다.... C++DirectX11게임 제작 DirectX에서 에지 감지 노멀 맵과 깊이 값을 사용하여 윤곽을 강조하는 방법을 소개합니다. MRT로 1패스로 보통 렌더링하고, 2패스로 법선 맵, 3패스에서 카메라로부터의 깊이값 맵을 제작합니다. 1패스(일반 렌더링) 2패스(법선 맵) 3패스(심도값 맵) 노멀 맵과 깊이 값 맵을 사용하여 가장자리 추출을 수행합니다. 엣지 추출한 것을 1 패스째에 곱셈 합성합니다. 곱셈 합성에는 DirectX11의 블렌드 스테이트를 ... C++DirectX11게임 제작 DirectX::SpriteBatch로 이미지를 쉽게 표시해보기(DirectX11) DirectX에는 이미지를 쉽게 표시할 수 있는 SpriteBatch라는 클래스가 있습니다. 이 클래스를 사용하면, 귀찮은 정점 셰이더나 픽셀 쉐이더를 준비할 필요가 없어지는 것입니다! 먼저 보려는 이미지를 VisualStudio에 추가합니다. 오른쪽 클릭 → 속성에서 항목 유형을 Image Content Pipeline으로 설정합니다. 이제 빌드했을 때 이미지 파일에서 .dds라는 파일을 ... C++DirectX11VisualStudio게임 제작 DirectX::SpriteBatch에서 원형 게이지 표시(DirectX11) 이미지를 표시하는 방법을 모르는 사람은 봐, 어쩌면 이것으로 할 수 있다고 생각합니다 ... 이번에 설명하는 방법은 픽셀 셰이더에서 불필요한 픽셀을 삭제하는 것입니다. 이런 식으로 각도 θ보다 작은 각도의 픽셀은 남겨두고, 크면 픽셀을 삭제하도록 합니다. x는 각도가 θ보다 작기 때문에 남긴다, z는 θ보다 크기 때문에 삭제한다는 느낌입니다. sprite.h 정수 버퍼의 작성을 합니다. sp... C++DirectX11게임 제작 DirectX11의 툰 셰이더 DirectX11로 간이적인 툰셰이더의 구현을 하고 싶습니다. 툰 셰이더는 이렇게 음영이 분명합니다. 애니메이션 톤의 게임 등에서 사용되고 있습니다. 툰 셰이더는 툰 셰이더에 대한 텍스처를 제공합니다. 확산 반사광 등은 계산에 의해 색을 결정합니다만, 툰 셰이더는 이 텍스처로부터 색을 결정합니다. 조명을 계산한 후 UV 좌표의 X 성분으로 값을 이 이미지에서 조명 값을 가져옵니다. ToonM... C++DirectX11게임 제작 Eclipse에서 C++에서 DirectX11을 사용하여 3D보기 원래 이론이지만, Directx 한다면 Visual Studio 사용하는 것이 편하다. (MS의 회전자가 아니야?) Window 앱을 만드는 것만으로도 (이하 약어 여러 사정에 따라 Visual Studio가 설치할 수 없는 환경에서 아무래도 DirectX를 사용하고 싶었기 때문에, Eclipse를 사용하여 어떻게 해야 할까-와 사고팔고 하고 겨우 표시까지는 붙였다. 덧붙여서, 자신이 한 환... C++DirectX11CDT이클립스 DirectX11 이제 시작1: 환경 구축 굳이 Windows API를 두드릴 필요가 있나요?"이런 생각을 가진 사람은 이 기사를 읽지 말아야 하고,'DirectX11 따위는 식은 죽 먹기니 12편을 설명해 주세요'라고 생각하는 사람들도 읽지 말아야 한다. DirectX11 개발에 필요한 프로그램 라이브러리는 Windows 10이라면 표준으로 탑재되어야 한다.Programs Files(x86)의 Windows Kits 디렉토리에 있습... DirectX11Direct3DC++ DirectX11 Map Unmap의 GPU 동작에 대한 차이점 DirectX11의 API를 잘 이해하지 못해 발생한 이벤트 로깅 ■ PC 사용 ・프로세서: Intel(R) Core(TM) i7-8650U [email protected](8CPUs), ~2.1GHz ・GPU0:Intel(R)UHD Graphics 620 ・GPU1:NVIDIA GeForce GTX 1060 ■ 환경 Intel GPU 및 Nvidia GPU로 전환할 수 있습니다. 이 항목을 변경할 때... DirectX11 자체 제작 물리적 기초 렌더링 프레임워크 이번에 제가 만든 렌더링 엔진 이 경제산업대신상을 받았습니다! 렌더링 엔진 자체가 단일한 빨간색으로 실행되는 게임 업데이트 → Render는 흔히 볼 수 있는 아쉬움의 실현이다. 컴퓨터 면도기, 기하학 면도기, DrawIndirect 등 Direct 3D 11세대 명령을 많이 활용했다. GPU 메시지 렌더링(GPU 구동 렌더링) 이 렌더링 엔진의 특징 중 하나는 GPU 드라이버 렌더링 부분입... DirectX11C++ DirectXTK의 Make Sprite Font 문제 및 해결 방법 DirectXTK의 Make Sprite Font 문제 및 해결 방법 SpriteFont.h 이번엔 폰트를 그리고 싶어서 스프릿폰트를 그리고 싶어요.h의 SpriteFont 클래스를 사용합니다.이 SpriteFont 클래스는 미리 "spritefont 데이터"를 만들어야 합니다.이 데이터는 무늬 무늬 정보와 글씨체 그리기에 필요한 정보를 포함한다.이 데이터를 만든 것은 DirectXTK에 포... DirectXTKDirectX11MakeSpriteFont
DirectX에서 디퍼드 렌더링 디퍼드 렌더링이란, 2차원의 스크린 스페이스상에서 쉐이딩을 행하는 기술입니다. 1패스째로 칼라나 법선등의 정보를 출력해, 2패스째로 그러한 정보를 사용해 렌더링해 갑니다. 색상이나 법선과 같은 정보를 G-Buffer라고 합니다. 이번에는 디퍼드 렌더링에서 법선을 사용한 디렉션 라이트의 라이팅을 구현하고 싶습니다. G-버퍼 칼라 법선 1패스째에서는 컬러나 법선이라고 말한 라이팅에 필요한 정보를... DirectX11DirectX게임 제작 DirectX로 화면 분할 이와 같이 DirectX로 화면 분할하는 방법을 소개합니다. DirectX는 그릴 때 다양한 행렬을 사용하지만, 그 중 하나에 뷰포트 행렬이라는 것이 있습니다. 이 뷰포트 행렬을 그리기 전에 설정함으로써 화면 분할을 할 수 있습니다.... C++DirectX11게임 제작 DirectX에서 에지 감지 노멀 맵과 깊이 값을 사용하여 윤곽을 강조하는 방법을 소개합니다. MRT로 1패스로 보통 렌더링하고, 2패스로 법선 맵, 3패스에서 카메라로부터의 깊이값 맵을 제작합니다. 1패스(일반 렌더링) 2패스(법선 맵) 3패스(심도값 맵) 노멀 맵과 깊이 값 맵을 사용하여 가장자리 추출을 수행합니다. 엣지 추출한 것을 1 패스째에 곱셈 합성합니다. 곱셈 합성에는 DirectX11의 블렌드 스테이트를 ... C++DirectX11게임 제작 DirectX::SpriteBatch로 이미지를 쉽게 표시해보기(DirectX11) DirectX에는 이미지를 쉽게 표시할 수 있는 SpriteBatch라는 클래스가 있습니다. 이 클래스를 사용하면, 귀찮은 정점 셰이더나 픽셀 쉐이더를 준비할 필요가 없어지는 것입니다! 먼저 보려는 이미지를 VisualStudio에 추가합니다. 오른쪽 클릭 → 속성에서 항목 유형을 Image Content Pipeline으로 설정합니다. 이제 빌드했을 때 이미지 파일에서 .dds라는 파일을 ... C++DirectX11VisualStudio게임 제작 DirectX::SpriteBatch에서 원형 게이지 표시(DirectX11) 이미지를 표시하는 방법을 모르는 사람은 봐, 어쩌면 이것으로 할 수 있다고 생각합니다 ... 이번에 설명하는 방법은 픽셀 셰이더에서 불필요한 픽셀을 삭제하는 것입니다. 이런 식으로 각도 θ보다 작은 각도의 픽셀은 남겨두고, 크면 픽셀을 삭제하도록 합니다. x는 각도가 θ보다 작기 때문에 남긴다, z는 θ보다 크기 때문에 삭제한다는 느낌입니다. sprite.h 정수 버퍼의 작성을 합니다. sp... C++DirectX11게임 제작 DirectX11의 툰 셰이더 DirectX11로 간이적인 툰셰이더의 구현을 하고 싶습니다. 툰 셰이더는 이렇게 음영이 분명합니다. 애니메이션 톤의 게임 등에서 사용되고 있습니다. 툰 셰이더는 툰 셰이더에 대한 텍스처를 제공합니다. 확산 반사광 등은 계산에 의해 색을 결정합니다만, 툰 셰이더는 이 텍스처로부터 색을 결정합니다. 조명을 계산한 후 UV 좌표의 X 성분으로 값을 이 이미지에서 조명 값을 가져옵니다. ToonM... C++DirectX11게임 제작 Eclipse에서 C++에서 DirectX11을 사용하여 3D보기 원래 이론이지만, Directx 한다면 Visual Studio 사용하는 것이 편하다. (MS의 회전자가 아니야?) Window 앱을 만드는 것만으로도 (이하 약어 여러 사정에 따라 Visual Studio가 설치할 수 없는 환경에서 아무래도 DirectX를 사용하고 싶었기 때문에, Eclipse를 사용하여 어떻게 해야 할까-와 사고팔고 하고 겨우 표시까지는 붙였다. 덧붙여서, 자신이 한 환... C++DirectX11CDT이클립스 DirectX11 이제 시작1: 환경 구축 굳이 Windows API를 두드릴 필요가 있나요?"이런 생각을 가진 사람은 이 기사를 읽지 말아야 하고,'DirectX11 따위는 식은 죽 먹기니 12편을 설명해 주세요'라고 생각하는 사람들도 읽지 말아야 한다. DirectX11 개발에 필요한 프로그램 라이브러리는 Windows 10이라면 표준으로 탑재되어야 한다.Programs Files(x86)의 Windows Kits 디렉토리에 있습... DirectX11Direct3DC++ DirectX11 Map Unmap의 GPU 동작에 대한 차이점 DirectX11의 API를 잘 이해하지 못해 발생한 이벤트 로깅 ■ PC 사용 ・프로세서: Intel(R) Core(TM) i7-8650U [email protected](8CPUs), ~2.1GHz ・GPU0:Intel(R)UHD Graphics 620 ・GPU1:NVIDIA GeForce GTX 1060 ■ 환경 Intel GPU 및 Nvidia GPU로 전환할 수 있습니다. 이 항목을 변경할 때... DirectX11 자체 제작 물리적 기초 렌더링 프레임워크 이번에 제가 만든 렌더링 엔진 이 경제산업대신상을 받았습니다! 렌더링 엔진 자체가 단일한 빨간색으로 실행되는 게임 업데이트 → Render는 흔히 볼 수 있는 아쉬움의 실현이다. 컴퓨터 면도기, 기하학 면도기, DrawIndirect 등 Direct 3D 11세대 명령을 많이 활용했다. GPU 메시지 렌더링(GPU 구동 렌더링) 이 렌더링 엔진의 특징 중 하나는 GPU 드라이버 렌더링 부분입... DirectX11C++ DirectXTK의 Make Sprite Font 문제 및 해결 방법 DirectXTK의 Make Sprite Font 문제 및 해결 방법 SpriteFont.h 이번엔 폰트를 그리고 싶어서 스프릿폰트를 그리고 싶어요.h의 SpriteFont 클래스를 사용합니다.이 SpriteFont 클래스는 미리 "spritefont 데이터"를 만들어야 합니다.이 데이터는 무늬 무늬 정보와 글씨체 그리기에 필요한 정보를 포함한다.이 데이터를 만든 것은 DirectXTK에 포... DirectXTKDirectX11MakeSpriteFont