XMVECTOR
XMFLOAT234
load float234 벡터변환
store float234 플로트변환
get set xyzw
FFFGHHC
XMVECTOR32
XMMATRIX
XMFLOAT4x4
Scaling
Rotation xyz axis
translation
translation from vec
transform coord 점변환
transform normal 벡터변환
Com객체 = 클래스 역할
Comptr<T>::Get()
Comptr<T>::GetAddressOf()
Comptr<T>::Reset()
DXGI_FORMAT_RnGnBnAn_T
무형식 TYPELESS
IDXGISwapChain::ResizeBuffers
IDXGISwapChain::Present
DXGI_FORMAT_Dn_T(_Sn_T) 괄호 생략가능
CBV/SRV/UAV서술자
표본추출기 서술자
RTV서술자
DSV서술자
서술자 힙
앨리어싱(계단 현상)
앨리어싱 제거
초과표본화 : 비용 높음 그 대신 정확
다중표본화 : 이미지 색상이 픽셀당 한번만 계산
DXGI_SAMPLE_DESC 구조체의 Count, Quality 채우기
ID3D12Device::CheckFeatureSupport로 지원여부점검
D3D_FEATURE_LEVEL 9~11버전
다렉과 함께 쓰이는 API
IDXGIFactory : 밑에 두개 관리
IDXGISwapChain : 교환사슬
IDXGIAdapter : 디스플레이 어댑터
IDXGIOutput : 디스플레이 출력
DXGI_MODE_DESC : 하나의 디스플레이 모드 서술
ID3D12Device::CheckFeatureSupport의 데이터 3개
Feature : 지원 여부 점검할 기능 종류
pFeatureSupportData : 기능 관련 구조체 가리키는 포인터(읽기, 쓰기 가능)
FeatureSupportDataSize : 구조체 크기
화면에 보이는 자원만 사용 - 퇴거, 입주
ID3D12Device::MakeResident
ID3D12Device::Evict
둘다 매개변수 같음
첫번째 인수 : 자원들의 개수
두번째 인수 : ID3D12Pageable 자원들의 배열
ID3D12CommandQueue : 명령 대기열을 대표함
D3D12_COMMAND_QUEUE_DESC : 대기열 서술 구조체
ExecuteCommandLists : 명령들을 대기열에 추가함
ID3D12CommandList : 명령 목록을 대표함
ID3D12GraphicsCommandList : 그래픽 작업을 위한 명령 목록을 대표함
ID3D12GraphicsCommandList::Close : 대기열에 추가하기 전에 명령 목록을 반드시 닫아야 한다.
ID3D12CommandAllocator : 명령 메모리 할당자
ID3D12Device::CreateCommandAllocator : 명령 메모리 할당자 생성
ID3D12Device::CreateCommandList : 명령 목록 생성
ID3D12CommandList::Reset : 제출한 명령목록을 새로운 명령 기록하는 데 재사용
ID3D12CommandAllocator::Reset : 명령할당자 메모리 재사용
ID3D12Fence : 울타리를 대표
ID3D12Device::CreateFence : 울타리 객체 생성
기록되지 않은 자원 읽는 상황 피하기
D3D12_RESOURCE_BARRIOR_DESC : 자원장벽 서술 구조체
위에서 C붙으면 확장 버전
명령 목록 : 자유 스레드X
명령 할당자 : 자유 스레드X
명령 대기열 : 자유 스레드
window.h에서 가져온다.
QueryPerformanceCounter함수 : 틱 수 단위의 현재 시간얻기
QueryPerformanceFrequency함수 : 타이머의 주파수 얻기 -> 역수는 틱당 초수
틱 단위의 현재 시간 X 틱당 초 수 = 초 단위의 현재 시간
(작업 전 - 작업 후) X 틱당 토 수 = 작업 시간