게임 클라 개발

  • 홈
  • 태그
  • 방명록

IL2CPP 1

게임엔진/유니티 IL2CPP가 Virtual Call과 Boxing을 처리하는 방법

이 글의 정보들은 2016년에 작성된 글을 기반으로 함. 따라서 2023년 현재 바뀐 부분이 있을 수 있음. Devirtualization 당연한 얘기지만, Virtual Call은 Direct Call보다 더 느리다. 따라서 일부 컴파일러는 Virtual Call을 Direct Call로 바꾸는 Devirtualization 기법을 사용하기도 한다. 단, 해당 코드가 컴파일 타임에 어떤 메서드를 실행시킬지를 판단할 수 있어야 한다. 이는 IL2CPP도 마찬가지이다. 다만 IL2CPP는 최적화에 보수적이기 때문에... var dog = new Dog(); //Dog는 Animal 클래스를 상속함. dog.Speak(); 위와 같은 상황에서도 Virtual Call을 호출하는 C++코드를 만들어낸다. (2..

2023.11.19
이전
1
다음

카테고리

분류 전체보기
AI코딩
Game AI
언어
C#
C++
이론
기초
일반
설계
그래픽스
디자인패턴
네트워크
수학
이론
구현
게임엔진
일반
유니티
ECS(Unity)
알고리즘
일반
1주일 1문제
개발일지
ECS개발일지
작성예정
Side Project 1
짬통
게임리뷰

최근 글

인기 글

방문자

오늘 어제 전체

태그

#추가 예정 #AI #dots #동기화 #C# #clr #타입 #behavior tree #CPP #클린코드 #IL2CPP #그래픽스 #아키텍쳐 #디자인패턴 #ECS #C++ #GameAI #스레딩 #메모리 #1.1
© 게임 클라 개발 Powered by Tistory

티스토리툴바