오늘의 키워드
- Forward Kinemetics
- 컴퓨터 그래픽스에서 여러개의 관절로 이뤄진 다관절체인 Skeleton을 움직일 때 사용
- Inverse Kinematics와 달리 관절의 Angle을 이용해 End-Effector의 Position과 Orientation을 계산함
- Approach가 명확히 정의되어 있어 계산도 비교적 간단하다
코딩 테스트
- 치킨 배달( https://www.acmicpc.net/problem/15686)
- 조합을 이용해 푸는 문제
- 근접하게 아이디어를 냈지만 조합을 이용해 무식하게 풀려니 안풀릴것 같아서 다른 방법을 생각하다 풀지 못했다
- 하지만 조합 공식인 $_nC_r = /frac{n!}{r!(n-r)!}$를 이용해 계산해보면 시간도 메모리도 충분했다
- 그래서 치킨집의 조합을 구한 뒤 거리의 최소값을 구하면 되는 문제였다
- 인구이동( https://www.acmicpc.net/problem/16234)
- map안에 각각의 배열에 인구수를 비교해 그 차이가 l<=X<=r이면 인구가 이동을 해야된다
- 인구가 이동 할지 안할지 DFS에서 판단하여 이동해야되는 나라의 좌표를 V에 저장한 뒤 V가 1보다 크다면 이동해야되는 나라들의 인구수의 총 합에 이동해야되는 나라의 수를 나눠 이동해야되는 나라에 사람을 보낸다
- 그 후 이중 for문을 탈출하면 cnt를 ++해 이동한 날의 수를 카운트해준다
- 이를 계속 반복하다보면 이중 for문을 도는 동안 V의 size가 1만 나올때가 생기는데 이때 Break를 통해 while문을 탈출해주면 된다
- 느낀점
- 두 문제다 쉽지 않았지만 해설을 보고 최대한 이해를 했다
- 그렇기 때문에 몇일 뒤 다시 풀어보고 내껄로 확실하게 만들어야겠다
DirectX
- 카메라 이동
- 지금까지 만들었던 툴을 이용해 카메라를 만들어 이동과 회전을 해봤다
- 카메라가 이동을 하게되면 물체가 카메라가 이동하는 방향과 반대 방향으로 이동하는 것처럼 보였다
- 이를 통해 Unreal등 엔진에서 카메라가 어떻게 구현이 되어있는지 알 수 있게되어 엔진을 다룰때 카메라에 대해 좀더 쉽게 다룰 수 있을 것 같다
- Texture
- Texture를 도형에 입히기 위해서는 Shader에 UV를 이용해 UV 매핑을 하여 도형의 크게 맞게 Texuter를 늘리거나 줄여 입힌다는 것을 실습을 통해 자세하게 알게 되었다
- Unreal등 엔진에서는 Shader가 생각보다 쉽게 되어있지만 이해하기 어려웠지만 이러한 실습을 통해 어떤 식으로 되는지 조금은 이해할 수 있었다
- 또한 화면 좌표계와 UV 좌표를 매핑하는 것에 대해서 조금 더 자세히 알 수 있었고 그래픽스 파이프라인에 대해 좀더 자세하게 공부해야겠단 생각이 들었다
- 지금은 간단간단하게 어디서 어떠한 역할을 하는지 머리로 대충 이해만 하고있어 누군가 물어본다면 답을 잘 못할것 같기 때문에 날을 잡아서 이 개념을 완전히 집고 넘어가야겠단 생각이 들었다
Unreal C++
- 오늘 들었던 강의 3개는 모두 Unreal c++ 프로젝트를 어떻게 만드는지에 대한 간단한 강의였다
- 그래서 크게 기억에 남는 부분은 없었지만 그래도 빌드 구성에 대해 살펴보면서 어떠한 구성이 언제 사용되는지 알 수 있었다
'TIL' 카테고리의 다른 글
25.02.04 TIL (0) | 2025.02.03 |
---|---|
25.01.21 TIL (0) | 2025.01.21 |
2025.01.09 TIL (0) | 2025.01.10 |
2025.01.08 TIL (1) | 2025.01.10 |
2025.01.07 TIL (0) | 2025.01.10 |