Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 리디렉터 크래쉬
- LittleNightMare
- unreal engine skill
- Ai
- Unreal Engine Error
- skill system
- deltaTime
- 랜덤 맵 생성
- UE5
- unreal engine redirection crash
- 리디렉션 크래쉬
- unity
- register component
- splinemeshcomponent scale
- change textblock color
- UE4
- redirector crash
- Random Map Generator
- Unreal Engine 4
- UE
- Unreal Engine 5
- 언리얼
- unreal engine
- redirection crash
- tscriptinterface
- ue4 error
- staticmesh mobility
- UnrealEngine
- ue4 Crash
- 13iew
Archives
- Today
- Total
Class GameDev* SheepAdult
[Unreal Engine 5] FORCEINLINE 본문
FORCEINLINE은 함수를 강제적으로 inline화 시킨다. inline화란 컴파일 단계에서 컴파일러가 함수 호출 지점에 함수 내용을 갖다 붙이는 것을 말한다. 왜냐하면, 간단한 함수의 경우(한 줄짜리 getter, setter 등) 함수를 호출하는 데 발생하는 오버헤드가 함수 자리에 함수 내용이 작성되어 있는 것보다 효율성이 좋지 않을 수 있기 때문이다. 다시 말해, 함수를 호출하는 지점에서 함수로 이동하는 것보다, 그 자리에 함수 내용 코드를 써넣는 것이 효율성이 더 좋을 수 있다는 얘기이다.
이러한 경우 보통 inline을 사용한다. 하지만 inline의 경우, 컴파일러가 함수 내용이 복잡하다고 판단하면 inline처리 하지 않기도 하고, inline이 명시되어 있지 않더라도 inline화 하기도 한다. 그러나 FORCEINLINE은 강제적으로 inline화 한다는 점에서 inline과는 조금 다르며, 이러한 점 때문에 사용에 조금 조심할 필요는 있다. 참고로 class 내부에 함수를 정의하는 작업, 쉽게 말해 언리얼의 경우, 헤더파일에 함수를 정의하는 작업은 암시적으로 함수를 inline화 하는 작업이기 때문에 이점도 명시를 해야 한다.