Direct11

    [Direct11] 15. EX App Program - Light System

    1. Ex App Program 1.1 Light System 1.1.1 Effect File - 물체로 부터 전달된 빛을 이용하여 픽셀 셰이더로 부터 계산 (계산방식은 이전 Direct3D 글의 코드를 사용) struct Material { float4 Ambient; float4 Diffuse; float4 Specular; float4 Reflect; }; - Vertex Shader로 부터 전달된 값들을 이용하여 평행광, 점광, 점적광의 빛을 사용하여 물체에게 전달 ComputeDirectionalLight(gMaterial, gDirLight, pin.NormalW, toEyeW, A, D, S); ambient += A; diffuse += D; spec += S; ComputePointLig..

    [Direct11] 14. Lighting System - Directional & Point & Spot Light

    1. Lighting System 1.1 Lighting System 1.1.1 Directional Light - 지향광이라고 하는 평행광은 아주 멀리 있는 광원에서 오는 빛을 본뜬 것 - 광원이 아주 멀리 있다면 모든 입사광선이 서로 평행하다고 간주할 수 있음 - 평행광원은 빛이 나아가는 방향을 뜻하는 하나의 벡터로 정의 - 광선들이 평행이라는 것은 모든 광선의 방향이 동일하다는 뜻이므로 하나의 벡터로 충분 - 평행광의 빛 벡터는 광선이 나아가는 방향의 반대 방향, 실제 세상에서 지향광원의 대표적인 예는 바로 태양 void ComputeDirectionalLight(Material mat, DirectionalLight L, float3 normal, float3 toEye, out float4 am..

    [Direct11] 13. Lighting System - Diffuse & Ambient & Specular Light

    1. Lighting System 1.1 Lighting - 조명과 음영은 물체의 입체감과 부피감을 묘사하는 데 큰 도움 - 시각적 인식은 빛과 물체 재질의 상호작용에 의존 - 실사적인 장면을 생성하는 문제의 상당 부분은 물리적으로 정확한 조명 모형과 관련 - 정확한 조명 모형일수록 계산 비용이 높음, 사실감과 속도의 균형을 맞추는 것이 중요 - 영화의 프레임들이 실시간으로 생성되는 것이 아닌 미리 렌더링해 두는 것 - 게임은 실시간 응용 프로그램이므로 프레임들이 적어도 초당 30프레임의 속도로 렌더링할 필요가 있음 1.1.1 Material & Intensity - 정점 색상을 직접 지정X, 표면의 재질 특성과 광원의 특성을 설정하고 조명 방정식을 적용하여 정점 색상이 결정 - 조명 방정식은 빛과 재질..