본문 바로가기

그래픽스11

[Graphics] 포스트 이펙트(Post Effect) Post Effect ? 포스트 이펙트는 3D 그래픽스에서 렌더링이 완료된 최종 이미지에 추가적인 시각적 효과를 적용시키는 기술을 의미합니다. 일반적으로 화면에 출력되기 전에 수행되는 후처리 작업으로서 화면에 렌더링 된 이미지에 필터링, 쉐이딩, 블러, 색상 보정, 후광 효과 등 다양한 시각적 변화를 적용할 수 있습니다. 아래의 이미지를 참고한다면 쉽게 이해가 가능합니다. 포스트 이펙트는 주로 쉐이더를 사용하여 구현됩니다. 렌더링 된 이미지를 쉐이더로 전달하여 화면 전체에 효과를 적용하거나 특정 영역에만 효과를 적용할 수 있습니다. 예를 들어 블러 효과를 적용하여 광원 주변을 흐리게 표현하거나, 컬러 그레이딩을 사용하여 화면의 색상을 변경할 수 있습니다. 일반적으로 포스트 이펙트는 화면에 출력되기 직전에.. 2023. 8. 7.
[Graphics] 텍스처에 그리기 RTT(Render To Texture) Render To Texture ? 렌더투텍스처(Render To Texture)(이하 RTT)를 의미합니다. 3D 그래픽스에서 매우 유용한 기술로, 장면을 렌더링(Rendering)하고 그 결과를 텍스처(Texture)로 저장하는 방식입니다. 다양한 그래픽스 기법과 효과를 구현하기 위하여 사용되며, 렌더링 결과를 다른 객체의 텍스처로입혀 사용하거나 후처리 효과를 적용하는 등의 용도로 사용됩니다. 일반적으로 3D의 화면을 렌더링할때 화면에 직접 출력되도록 보여집니다. RTT를 사용하면 렌더링 결과를 프레임 버퍼가 아닌 텍스처로 저장하고 이후 이 텍스처를 다른 객체의 텍스처로 적용시키겨나 쉐이더(Shader)에 사용하여 다양한 시각적 효과를 구현할 수 있습니다. 예를들어 3D환경에서 배경의 이미지텍스처를 .. 2023. 8. 7.
[Graphics] 직사(Directional), 점(Point), 스포트(Spot) 라이트 Light 3D 그래픽스에서 조명 효과를 위하여 사용되는 주된 빛(조명)의 유형 3가지에 대하여 정리합니다. 조명의 유형은 다양한 방식으로 객체(Object)나 장면(Scene)에 적용하여 좀더 입체적이고 현실적인 시각적 효과를 만들어 내는 기능을 합니다. 1. 직사 광원 (Directional Light) 무한대로 뻗어나가는 병렬형태의 빛을 의미합니다. 빛의 방향이 일정합니다. 모든 지점에 동일한 강도로 조명하며, 전역적인 조명 효과입니다. 주로 자연광(태양 또는 천체)의 시뮬레이션에 사용됩니다. 2. 점 광원 (Point Light) 하나의 좌표(점)에서 빛이 모든방향으로 방출되는 조명을 의미합니다. 빛의 위치에 따라 조명의 범위가 정해지고 빛이 원점에서 멀어질수록 빛의 강도는 약해집니다. 주변에 빛.. 2023. 8. 6.
[Animation] 키프레임(KeyFrame) 애니메이션 키프레임 애니메이션? 컴퓨터 그래픽스에서 주로 사용되는 애니메이션 기법 중 하나입니다. 키프레임 애니매이션 기법은 3D 모델의 움직임(동작)을 주요 프레임들로 구성 합니다. 중간 프레임들은 보간(interpolation)을 통하여 계산되어지고 자연스러운 움직임을 생성 합니다. 키프레임의 구성 키프레임 애니메이션은 다음과 같은 단계로 진행 됩니다. 1. 키프레임의 생성 3D 모델이 움직이는 동안의 주요 프레임을 정의 하는 단계입니다. 각 키프레임은 객체의 위치, 회전, 스케일 등을 포함하는 정보들을 가지고 있습니다. 이러한 키프레임은 애니메이션 디자이너에 의해서 만들어집니다. 2. 인터폴레이션(보간) 실행 키프레임 사이의 중간 프레임을 계산합니다. 보간(interpolation)기법을 사용하여 애니메이션의.. 2023. 6. 28.
[DirectX3D / Graphics] 조명효과 (Ambient . Diffuse . Specular . Phong Reflection) D3D를 공부하며 조명효과를 배우기 시작하여 관련 내용을 정리하고자 합니다. 가장 기본적으로 사용되는 조명 모델인 Phong Reflection(이하 퐁 모델) 그리고 퐁 모델을 위해 필요한 기본 모델들에 대하여 알아보도록 합니다. 우선 퐁 모델을 위해서는 기본적인 3개의 모델이 필요합니다. Ambient Diffuse Specular Shaders 필터의 hlsl 파일의 PS 코드를 참조 합니다. float4 PS(PixelInput input) : SV_TARGET { //world space light float3 light = normalize(-float3(1, -1, 1)); // 빛의 방향 벡터 //world space normal float3 normal = normalize(input.N.. 2023. 6. 7.