TextureLoader
- 텍스처를 로드하고 관리하는 역할.
- 텍스처는 TextureInfo구조체로 관리되며 Atlas 이미지에서 원하는 부분을 계산하기 위해서 행렬정보를 넣어준다.

- 계산을 통해서 위치를 알아내고 있기 때문에 각 이미지들의 높이, 너비가 같아야한다.
- 크기가 다른 Atlas이미지를 로드한다면 추가적으로 매핑 필요.
bool LoadTexture(const FName& Name, const FString& FileName, int32 InRows, int32 InColumns);
Name으로 등록할 이름, FileName으로 파일이름을 확장자 까지 입력. (ex . Cat.png)
InRows, INColumns 에 아틀라스 의 행 렬 개수를 입력. 단일 텍스처라면 기본인자가 1, 1이기 때문에 입력하지 않아도 됨
- 현재는 파일을 .png만 쓰고 있어서 WIC로 로더를 구현했는데 이후 DDS 텍스처를 쓴다면 함수를 수정해 주어야 한다.
- 등록된 텍스처는 TextureInfo로 unordered_map에서 관리한다.
Billboard
SetTexture메서드를 통해 텍스처와 아틀라스 이미지의 행과 열 정보를 설정
Tick메서드를 통해 매 프레임마다 업데이트
- 만약 Atlas이미지라면 원하는 위치의 이미지를 렌더링하기 위해서
SetRenderUV 메서드로 위치 설정. 이때 들어가는 값은 행, 열의 양의 정수
- 렌더링할 때 이미지의 행,열 정보와 RenderUV를 사용하여 UV값을 계산, 이후 상수버퍼를 업데이트
TextBillboard
SetText 를 사용해서 렌더링할 텍스트의 길이 만큼 버텍스버퍼를 생성.
- 텍스트를 순회하며 각 글자의 아스키코드를 ASCII Atlas 이미지 기준으로 UV계산, 버텍스버퍼를 생성할 때 저장