이제 슬슬
리팩토링(?) 캡슐화(?) 같은거를 해야할 때가 왔다.
일단 뇌피셜로 시도해보자.
1. com 변수를 어디서 관리해줄지
1_1. main 단
- ID3D11Device
- ID3D11DeviceContext
- IDXGISwapChain (1)
1_2. Scene 단
- IDXGISwapChain (2)
- ID3D11RasterizerState
- ID3D11BlendState
- ID3D11DepthStencilState
- ID3D11RenderTargetView
- ID3D11DepthStencilView
1_3. Object 단
- ID3D11VertexShader
- ID3D11InputLayout
- ID3D11PixelShader
- ID3D11ShaderResourceView
- ID3D11SamplerState
1_4. 공통
- ID3D11Buffer
2. 대충 내가 원하는 프로그램 구조
main 에서 core 돌림
- core에서 각종 manager 돌림 (Time, Input 등등)
- - Scene manager에서 Scene을 그림
- - - Scene에 포함되어 있는 Object들을 (초기화) 업데이트 / 그리기
3. 요약
3_1. main에서 window와 d3ddevice를 초기화
3_2. Scene에서 파이프라인의 각종 효과(?)들을 세팅
3_3. Object 중에 Render Asset이 쓸 법한 친구들을 세팅
3_4. 없어질 때는 각 단계에서 Release() 하기
'Programming > D3D11' 카테고리의 다른 글
[일기장] 설계를 좀 더 간단히.... (0) | 2023.12.02 |
---|---|
[assimp] 3d 모델 띄워보기 (0) | 2023.11.27 |
[뇌피셜][메모용] Object 단에서 com 변수 초기화/관리 (0) | 2023.11.24 |
Quaternion으로 카메라 회전 (0) | 2023.11.13 |
[일기장]샘플을 대충 구조(?)안에서 돌아가게함 (0) | 2023.11.07 |