본문 바로가기

D3D23

[DirectX3D] PostEffect(상수버퍼를 사용한 Fadein/Fadeout 효과) PostEffect.hlsl Shader 파일에 상수버퍼를 이용한 코드를 추가합니다. cbuffer PS_Point : register(b11) { float2 Point; float Size; float PointPadding; } Scene Class 헤더 파일에 상수버퍼에 사용할 구조체를 선언합니다. private 구역 struct Point // 상수버퍼용 구조체 { Vector2 point; // 시작지점 변수(x,y) float size; // 시야범위 변수 float padding; // 패딩용 변수 } _point; ID3D11Buffer* PointBuffer; // 버퍼 // control을 위한 추가 변수들 float posx; float posy; float scale; // fad.. 2023. 8. 18.
[DirectX3D] RTT구현(미니맵만들기) D3D11 에서 RTT(Render To Texture)구현하기 RenderTarget 클래스 생성하기(h) #pragma once class RenderTarget { protected: // 화면(이미지)의 가로 세로 크기 변수 int width, height; //protected에 있는 이유는 ResizeScreen으로만 크기변경하려고 //I(인터페이스)D3D(도구)11(넘버링) 인터페이스 ID3D11Texture2D* rgb; // 일반 텍스처 데이터 ID3D11Texture2D* depth; // 깊이값 텍스처 데이터 //파이프라인 결합할때 타겟으로 쓸 인터페이스 /* 기존에 Direct3D11 클래스에서 백버퍼로도 쓰였음(실질적자원담당) 프로그램실행시 싱글톤 생성하면서 만들어지고, Resiz.. 2023. 8. 16.
[Graphics] D3D11 렌더링 파이프 라인(Rendering Pipeline) 렌더링 파이프라인 ? DirectX 3D Graphics에서의 렌더링 파이프라인은 그래픽스 카드에서 3D 모델을 렌더링하는 과정을 각각의 단계별로 나타낸 것입니다. 렌더링 파이프라인은 크게 두가지 버전으로 나뉘게 됩니다. 1. 고정 함수 파이프라인 2. 프로그래머블 파이프라인(DirectX 10 이후부터 지원 현재 배우는 기준은 DirectX11) 두가지의 버전중에서 프로그래머블 파이프라인이 더 우연하며 강력한 기능을 제공합니다. 때문에 프로그래머블 파이프라인을 기준으로 각 단계에 대하여 정리하도록 합니다. 렌더링 파이프 라인의 단계(생략가능, 필수) 1. 입력 어셈블러(IA - Input Assembler) 정점(버텍스)데이터를 가져와 점, 선, 삼각형 등의 프리미티브를 조합 생성합니다. 버텍스 버퍼,.. 2023. 8. 10.
[DirectX3D] 환경 맵핑(Environment Mapping) 환경 맵핑 ? 환경 맵핑은 컴퓨터 그래픽스에서 사용되는 기술중 하나 입니다. 3D 모델의 표면에 주변 환경(배경)을 반사시켜 실시간으로 더욱 현실적인 느낌을 줄 수 있습니다. 주로 반사, 굴절, 환경등의 변환에 따른 질감을 향상시키는데 사용합니다. 환경 맵핑값의 변화에 따른 반사 확인하기 위의 영상에는 무료 배포된 던전앤파이터의 "던파 연단된 칼날" 폰트를 사용하였습니다. >NEXON LEVEL UP (레벨업) – 넥슨 브랜드 인벤토리 LEVEL UP의 첫 단계로 게임에서 경험했던 느낌을 서체에 담아 표현했습니다. 서체의 기능적인 부분 외에도 즐거운 경험들을 전달하고자 하는 또 다른 도전의 시작입니다. levelup.nexon.com -아래접은글 > DirectWrite(DWRITE) 복습- 더보기 DW.. 2023. 8. 8.
[Graphics] 블러(Blur) Blur ? 블러는 영상이나 그래픽의 세부 정보를 흐려지게(흐릿하게)만드는 시각적 효과를 의미합니다. 이미지의 선명도를 감소시켜 색상과 형태의 경계를 부드럽게 만들거나 이미지를 불분명하게 만들어 장면에 광택감을 부여하는 데 사용됩니다. 또한 블러 효과는 다른 많은 효과들의 기본이 됩니다. 예를들어 블룸, 뎁스 오브 필드, 풀스크린 글로우, 글로우 맵핑, 헤일로 글로우, 엣지 글로우, 그림자 경계, 물속 효과 등등이 있습니다. DirectX 11에서는 실시간 블러 효과를 위해서 우선 화면을 텍스처에 그린다음 텍스처에 블러를 적용시킨 뒤 화면에 텍스처를 그리는 방식으로 진행이 됩니다. 텍스처에 그려진 장면에 2D 이미지를 프로세싱 하는 것을 후처리 또는 포스트 프로세싱 이라고 합니다. Blur의 적용 단계(.. 2023. 8. 7.
[Graphics] 포스트 이펙트(Post Effect) Post Effect ? 포스트 이펙트는 3D 그래픽스에서 렌더링이 완료된 최종 이미지에 추가적인 시각적 효과를 적용시키는 기술을 의미합니다. 일반적으로 화면에 출력되기 전에 수행되는 후처리 작업으로서 화면에 렌더링 된 이미지에 필터링, 쉐이딩, 블러, 색상 보정, 후광 효과 등 다양한 시각적 변화를 적용할 수 있습니다. 아래의 이미지를 참고한다면 쉽게 이해가 가능합니다. 포스트 이펙트는 주로 쉐이더를 사용하여 구현됩니다. 렌더링 된 이미지를 쉐이더로 전달하여 화면 전체에 효과를 적용하거나 특정 영역에만 효과를 적용할 수 있습니다. 예를 들어 블러 효과를 적용하여 광원 주변을 흐리게 표현하거나, 컬러 그레이딩을 사용하여 화면의 색상을 변경할 수 있습니다. 일반적으로 포스트 이펙트는 화면에 출력되기 직전에.. 2023. 8. 7.