일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 오블완
- operator new
- 영화
- 참조자
- 반복자
- 언리얼
- 비교 함수 객체
- effective stl
- 티스토리챌린지
- more effective c++
- c++
- implicit conversion
- 메타테이블
- reference
- Vector
- 게임
- Smart Pointer
- lua
- 다형성
- 암시적 변환
- 스마트 포인터
- 예외
- 상속
- Effective c++
- 루아
- exception
- UE4
- virtual function
- 영화 리뷰
- resource management class
- Today
- Total
목록게임 (4)
스토리텔링 개발자
읽던 소설에서 이런 뉘앙스의 대사를 읽었다. "설레? 더 이상 설레지 않으면 버려." 과연. 더 이상 설레지 않았다. 그렇게 다시 시작한지 벌써 한 달. 그렇지만 이렇게 잔디로 보니 처량하기 그지 없다. 그런데 그 소설의 끝은 어땠더라. 그이는 다른 이에게 '너의 책 읽는 모습이 좋다'며 '더 이상 설레지 않는다고 미래에도 설레지 않을까?' 물으며 더 이상 설레지 않는 책일지라도 버리는 것을 유예 시켰다.
개요 IK는 일반적으로 특정 지형이나 물체에 반응하는 애니메이션에 사용합니다. 예컨대 캐릭터의 발이 계단 아래에 파묻히지 않도록 하려면 써야겠죠. 그렇다면 FK는 뭘까요? IK와는 어떤 차이가 있을까요? 아래에서 좀 더 자세히 알아보도록 하겠습니다. FK / IK 순운동학 (Forward Kinematics, FK) 조인트나 본에 회전을 직접 적용하는 방식을 순운동학(Forward Kinematics, FK)라고 합니다. 특정 조인트에 특정 회전값을 정확하게 정의내리는 방식 이라고 하면 조금 어렵게 들리는데요. 간단하게 말하자면 일반적인 애니메이션에 적용되는 방식을 말합니다. 위의 그림을 참고하면 좀 더 명확하죠. 왼쪽 본과 오른쪽 본의 각도를 직접 지정해 주었지요. 이렇게 직접적인 방식으로 정확히 회전..
직렬화 프로그램은 메모리에 올라가게 됩니다. 그러니 프로그램 내의 객체들도 메모리에 올라가 있을 것입니다. 그렇다면 그 객체들은 메모리에 어떤 형태로 올라가 있을까요? . . . 답은 알 수 없다 입니다. 컴퓨터가 메모리를 관리하면서 배정하므로 하나의 객체라도 연속적으로 모여있다고 단정지을 순 없습니다. 즉, 운 좋게 한 곳에 모두 모여 있는 경우도 있을테지만, 반대로 여기 저기 심하게 파편화 되어 있을 수도 있다는 것이죠. 이 객체의 데이터를 전송 / 저장하려 한다고 가정해 보죠. 그러기 위해선 우선 메모리의 어디에 어떻게 위치할지 모를 객체의 데이터들을 모아야 할 것입니다. 사실 직렬화란 그것이 전부입니다. 데이터를 모으고 전송하기 위해 패키징하는 작업을 뜻합니다. 현재 객체의 상태를 온전히 동일한 ..
델리게이트란? 자주 쓰는 프로그래밍적 기법 중에는 콜백이라는 것이 있죠. 어떤 함수를 직접 호출하는 게 아니라, 로직에 따라 원하는 타이밍에 호출할 수 있게 하는 기법입니다. 사실 C++는 언어적으로 깔끔하게 콜백을 지원하지 않습니다. 물론 '함수 포인터'를 사용한다면 콜백을 처리할 수 있습니다. 하지만 이는 함수의 포인터를 직접적으로 다루므로 댕글링 포인터 등의 문제에서 자유롭지 못합니다. 즉, 안전성이 많이 떨어집니다. 그래서 보통 C++ 베이스의 엔진들은 '델리게이트'라는 개념을 따로 구현하고 있습니다. 이는 콜백을 간단하고 안정적인 방법으로 사용할 수 있게 해줍니다. 아마 C# 등의 언어를 이미 접했다면 델리게이트의 개념에 익숙하시겠죠. 델리게이트(delegate)는 위임이라는 뜻을 가지고 있습니..