Spline
휴리스틱 작게 유클리드 오일러 등
휴리스틱 가중치
다각형 바닥 깔기
휴리스틱
// 9935번 문자열 폭발
/*
문자 하나씩 넣으면서 뒤에 문자 일치하면 앞에 내용 하나씩 빼기
아이디어는 맞았는데 구현을 못했다.
하나씩 X -> 조건 체크해서 빼기
*/
// 17144번 미세먼지 안녕!
/*
확산하는거 한 칸씩 해놓으면 안된다 정해질 값 들고있다가 끝까지 계산되면 반영 되어야한다
Add 배열 만들어서 변화만 갖고있기
*/
// 9465번 스티커
/*
D X C
X D X
X X C
D X X
X D X
D X C
D X X
X X C
DP 사이즈 10만 넘는 것 어떻게 만들어놓지?
*/
버퍼 만들기 전 기하학적인 도형 표현
쉐이더에 넘기는 인자 관리 방법
Transform 데이터 같은 것 넣기
Texture
IA → VS → RS → PS → OM
하나 물체 그리는데 공통으로 묶을 수 있는 것들
계층구조
SRT * P
GameObject를 weak_ptr로 갖고있고 _gameObject.lock()으로 리턴한다.
GameObject에서 AddComponent를 할 때
component→SetGameObject()를 해야 한다. 여기에 this를 넣으면 안되고 shared_from_this()를 넣어야 한다. 그리고 GameObject는 enable_shared_from_this를 상속받아야 한다.
생성자에서 사용 X
weak_pointer를 생성자에서 만들어준다…?
matView = XMMatrixLookAtLH()
matProj = XMMatrixPerspetive()
cbuffer에 빼놓기
그리는 관련 부분 Mesh, Material 빼기
현재 씬 갖고있다
로드해놓은 리소스를 공용으로 사용할 수 있게 한다
Camera / SRT / Animation / RenderState
공유되서 사용한다
Shader + Texture 등으로 재질 나타낸다
vertex index buffer로 모양 나타낸다
Texture를 잘라서 쓴다
Animation 재생하는 Component
키프레임 / 재생할 애니매이션
Constant Buffer로 GPU에 데이터 넣기
XML로 tinyxml로 save load 한다
// 1967번 트리의 지름
/*
BFS나 DFS로 루트-1인 두 노드에서 max값 구하기
트리 상태 Node tree[10005]로 표현하기
Node에 parent pWeight children cWeights 넣기
문제 잘못 이해했다.
1에서 시작하는 모든 경로에 대해 DFS 값 저장하기 X
한 노드 기준 자식 노드 최대 합 구하기 O
*/
// 1967번 트리의 지름
/*
트리 상태 Node tree[10005]로 표현하기
Node에 parent pWeight children cWeights 넣기 X
1에서 DFS -> 가장 긴 부분 점
긴 점 DFS -> 다른 부분 점
트리 구조에서 벗어나서 생각해야했다 그래프 이다
dfs돌릴 때 시작점 visited 처리 하기
*/
Address 옵션에 따라서 어떻게 텍스쳐 남는 부분 바를지 처리
depth stencil texture 화면과 동일한 크기 텍스쳐 만들기, 픽셀의 깊이 기록
Z 값 1이 더 뒤에 있다
깊이값을 텍스쳐로 저장해서 그릴 때 사용한다
외곽선, Rim Light
데이터 넘길 때 상수버퍼 크기 부족해서 못쓴다
→ 텍스쳐로 바꿔서 데이터 넘긴다
프레임마다 본에 어떤 mat4가 있는지 정보
이전 프레임과 현재 프레임 섞는다
바뀔 때 다른 애니메이션 섞는다
상하체 분리
바뀔 때 다른 애니메이션 보간
몇 번만에 그리는지
여러 개 줄일 때 줄인다
연산 트리로 만들어서 후위탐색 X
스택 쓰기
각 파츠는 매번 그려야 한다 하지만 하나 모델로 묶을 수 있다
gpu에 데이터 넘기기
View로 넘기기 입력, 출력, 결과
텍스쳐로 데이터 주고받기
스레드를 나누어서 해당하는 그룹을 만들고 거기서 텍스쳐를 바꾼다
텍스쳐 가공하기
2D에서 3D물체 피킹
2D → 3D
점이 볼륨 안에 있는지 체크