사용자 도구

사이트 도구


language:shader:basic2

DirectX 9 셰이더 . 메모

  • 무작위 마구 메모 : 나중에 그냥 찾아보는 용도로

벡터

벡터 덧셈

  • 위치벡터원점(0,0)에서 시작되는 벡터를 사용한다면
  • 더하는 순서는 상관 없고 합으로 최종 결과가 된다.
  • 한점위치에서 특정 거리만큼 떨어진 한점위치를 찾을 수 있다.
  • 물체에 가해진 힘에 대한 최종 합력을 구한다.

벡터 뺄셈

  • 두 점 사이의 거리를 구할때 사용
  • 벡터 A, B에 대해서
    • A-B : B를 가리키는 벡터를 구한다.
    • B-A : A를 가리키는 벡터를 구한다.

내적 : 벡터의 곱이 스칼라로 산출되는 연산

  • a⋅b=<m>a_x*b_x + a_y*b_y + a_z*b_z …</m>
  • dot(A,B) = <m>cos{theta} delim{|}{A}{|}delim{|}{B}{|}</m>
  • <m>delim{|}{a}{|}^2</m> = a⋅a
  • 직교 벡터 : a⋅b, <m>{theta}=90</m> : 내적은 0
  • 기저벡터
    모든 벡트가 벡터의 합과 스칼라 곱으로(?)

평면방정식

  • <m>a_x + b_y + c_z = D</m>
  • 이것의 벡터 성분 : V = <m>delim{[}{a,b,c}{]}</m>

아핀(affin) 벡터

  • (x, y, z) → (x, y, z, 1)

파이와 라디안

  • (2 PI) = 360
  • 1rad = 360 / (2 PI)

cos, sin

  • cos(0) = 1
  • cos(PI/2) = 0
  • sin(0) = 0
  • sin(PI/2) = 1

행렬

  • 가로 : 행
  • 세로 : 열
  • 행수와 열수가 같아 연산 가능
  • 기본 내적 계산된다.
  • 단위행렬 (행++,열++ 위치에 1이 있는 것
    <m>delim{[}{matrix{3}{3}{1 0 0 0 1 0 0 0 1}}{]}</m>
  • 이런 연산을 기억해두면
    <m>delim{[}{matrix{1}{3}{a b c}}{]} {*} delim{[}{matrix{3}{1}{a b c}}{]}</m>

동차좌표계(?) 뭐지??

  • 원근감 있는 위치에 맞게, 텍스쳐를 입힐때 사용.
  • dx에서는 기본 처리 되므로 무시.

컬링 : 뒷면을 렌더링 하지 않는다.

language/shader/basic2.txt · 마지막으로 수정됨: 2024/04/23 22:44 저자 127.0.0.1