Algorithm
- Leetcode Study Plan
- Day 22. BFS, DFS, Tree
- 풀이 코드 : Modisc/Algorithm: Algorithm Study (github.com)
Unreal Engine 5.1
- Glossary
- Scope Resolution Operator
=> (::) Looks inside a class.
- UPROPERTY
- UPROPERTY의 인자로 EditAnywhere 말고 다른 요소도 들어갈 수 있다.
ex) UPROPERTY(EditAnywhere, Category = "Moving Platform")
언리얼 에디터에 표시될 변수가 Moving Platform 이라는 카테고리 아래에 나타나게 된다.
Category값을 설정하지 않으면 해당 변수가 선언된 C++ 클래스 이름으로 설정되는 것 같음.
=> Anywhere 이라는 속성은 에디터 내에 어디서든 편집이 가능하다는 의미.
- UPROPERTY의 인자로 VisibleAnywhere 가 들어갈 수도 있다.
=> 의미 그대로 어디서든 볼 수만 있다는 의미이다.
- Using DeltaTime
- Using DeltaTime Unreal can tell us how long each frame took to execute
=> 프레임이 실행되는데 걸린 시간을 알려준다.
- When we multiply something by DeltaTime it makes our game "frame rate independent"
=> 무언가에 델타 시간을 곱하면 본질적으로 게임 프레임 속도를 독립적으로 만들 수 있다.
- The game behaves the same on fast and slow computers
=> 게임이 빠르거나 느린 컴퓨터에서 동일하게 동작한다.
ex) 매초 무언가를 한 단위씩 이동하려는 경우가 있다고 가정하자.
Frames per second가 10인 컴퓨터와 100인 컴퓨터가 있을 때
Duration of frame 은 0.1s와 0.01s이다.(DeltaTime)
Distance per second는 똑같은 1이 된다.
- DeltaTime은 항상 일정한 값이 아니다.
=> 이전 프레임이 완료되는데 걸린 시간을 의미하는 것이 DeltaTime이므로 컴퓨터 프레임 드랍 현상이 일어난다면 그만큼 DeltaTime 값이 커질 수 있다.
- FVector::GetSafeNormal() 과 FVector::GetUnsafeNormal
- GetSafeNormal()은 길이에 따라 정규화하는 것이 안전한지 확인한다.
=> 벡터 길이가 너무 작아서 안전하게 정규화 할 수 없는 경우 0 벡터를 반환한다.
- GetUnsafeNormal()은 길이가 0인지 확인하지 않고 정규화된 버전의 벡터를 계산한다.
'TIL' 카테고리의 다른 글
[TIL] 20230308 성장일지 (0) | 2023.03.08 |
---|---|
[TIL] 20230307 성장일지 (0) | 2023.03.07 |
[TIL] 20230302 성장일지 (0) | 2023.03.02 |
[TIL] 20230301 성장일지 (0) | 2023.03.01 |
[TIL] 20230228 성장일지 (0) | 2023.02.28 |
댓글