본문 바로가기

전체 글32

[UE4] does not match object's real id of 패키징 에러 패키징을 하다가 발생되는 에러중에 '##### does not match object's real id of #####'이런 문구를 포함한 에러가 발생하는 경우가 있다. 에러 메시지 내용대로 오브젝트의 실제 아이디와 패키징하려는 애셋과 매칭이 안된다는 에러 문구인데, 아래와 같이 '프로젝트 세팅 → 게임 → 애셋 매니저' 메뉴에서 '에디터에서 유형과 이름 추측' 옵션을 켜주면 된다. 2021. 9. 1.
SaveGameToSlot 실패 이 글은 내 모자른 실력으로 정확한 원인이 파악되지 않아 공개로 하기엔 부끄러운 글이지만, 그래도 혹시나 나와 같은 문제로 어려운 분들에게 내가 머리가 아닌 몸으로 찾은 방법이 조금이라도 도움이 되었으면해서 공개로 올린다. 개발중에 에디터와 안드로이드 디바이스에 패키징해서 테스트할때는 아무런 문제없이 작동하던 SaveGameToSlot이 Google AdMob 설정을 해주고 나니 계속 실패가되는 현상이 발생했다. 물론 에디터에서는 여전히 문제가 없었다. 사용 언리얼엔진 버전은 4.25.3 이다. Google AdMob을 설정하기 위해서 Google AdMob에 가입하고 이런저런 설정을 해주고, 테스트를 위해 디바이스를 Test Device에 등록하는 작업들을 해주고 광고가 제대로 나오는 것까지 완성하고 .. 2021. 8. 6.
[UE4] 언리얼 엔진에서 안드로이드 APK 파일 패키징 하기 언리얼 엔진에서 안드로이드 APK파일을 패키징하는 방법에 대해 정리해봤습니다. 1. 아래와 같이 새 프로젝트를 생성합니다. 2. 아무것도 없는 기본 템플릿을 선택합니다. 3. 프로젝트 세팅은 아래와 같이 퀄리티는 '스케일 가능 3D 또는 2D', 하드웨어는 '모바일/태블릿', 시작용 콘텐츠는 '없음'을 선택해줍니다. 4. 에디터에서 게임에 사용할 기본맵을 저장한 뒤, 아래와 같이 프로젝트 세팅에서 '에디터 시작 맵'과 '게임 기본 맵'을 해당 맵으로 설정합니다. 5. 프로젝트 세팅에서 플랫폼 Android SDK 항목을 보면 아래와 같이 SDK, NDK, JDK 관련 설정이 비어있는걸 확인할 수 있습니다. 6. 아래 링크에서 Android Studio 설치 파일을 다운받아서 설치해 줍니다. https:/.. 2021. 8. 5.
java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7 에러 언리얼엔진에서 안드로이드 패키징시 발생하는 에러중 아래와 같은 에러가 있다. java.lang.NoClassDefFoundError: Could not initialize class org.codehaus.groovy.vmplugin.v7.Java7 이 에러는 Gradle과 JDK의 버전이 안맞아서 발생하는 에러로, 현재 사용중인 언리얼엔진 4.25에는 JDK 8u_151 이상이어야 문제없이 패키징이 된다. 2021. 8. 5.
Caused by: com.android.tools.r8.utils.AbortException: Error: null, Cannot fit requested classes in a single dex file (# methods: 103366 > 65536 ; # fields: 67112 > 65536) 언리얼엔진에서 안드로이드 패키징시 아래와 같은 에러가 발생했다. Caused by: com.android.tools.r8.utils.AbortException: Error: null, Cannot fit requested classes in a single dex file (# methods: 103366 > 65536 ; # fields: 67112 > 65536) 싱글 dex 파일의 크기가 65536을 넘을 수 없다는 에러인데, SDK버전이 21이하인 경우 이와 같은 에러가 난다고 한다. 해결방법은 간단하다. 위처럼 프로젝트 세팅 → Android → APK 패키징 항목에서 최소 SDK 버전 설정을 수정해주면 된다. 2021. 8. 5.
AdMob 관련 YouTube 영상 AdMob 광고를 게임에 노출하기 위해 준비해야할 내용들이 정리된 YouTube 영상들을 모아봤다. 1. AdMob 계정에 앱을 추가하는 방법 2. 앱에 사용할 최적의 광고 형식을 선택하는 방법 3. AdMob 전면 광고로 성공을 거두기 위한 권장사항 4. 성공적인 AdMob 보상형 광고를 위한 권장사항 5. AdMob 수익금을 지급받기 위한 단계 6.애드몹 계정에 파이어베이스를 연결하는 방법 2021. 8. 3.
System.ArgumentException: An item with the same key has already been added 분명 패키징이 잘되던 프로젝트가 있다. 그런데 플러그인을 하나 추가하고 관련 설정과 작업을 한 뒤에 패키징을 하려고 하니 아래 에러가 나면서 Launching UAT 단계를 못 넘어간다. System.ArgumentException: An item with the same key has already been added 같은 키를 가지 아이템이 있다고하면서 Unknown_Error라고 뜬다. 여기저기 구글링을 하면서 찾은 내용은들을 정리해 보면 아래와 같다. 1. 그냥 새 프로젝트 만들어서 마이그레이션하니 해결되었다. 2. 프로젝트 폴더의 Intermediate 폴더를 삭제하니 해결되었다. 3. 언리얼 에디터를 껐다 켰더니 해결되었다. 등등인데....나는 위의 방법으로는 해결이 안되었다. 내 문제의 원인.. 2021. 7. 31.
내 티스토리 어디갔니~ 오랜만에 티스토리 들어왔는데.... 다음아이디를 카카오아이디로 통합 어쩌구해서 통합을 했는데.... 이전에 있던 티스토리가 사라졌다...; 아이디가 통합되면서 날라간건지 너무 오래 관리를 안하다보니 자동으로 삭제된건지...;;; 그냥 천천히 다시 시작 해보자. 2021. 7. 31.
__func__ __func__ 는 변수로 자동으로 해당 함수의 이름을 담고 있는 변수다. 디버깅시에 어느 함수가 호출되는지 로그를 남길때 유용하다. __func__의 정의는 다음과 같다. static const char __func__[] = "function-name" 사용 예제는 아래와 같다. int GetSize(char* str) { cout 2021. 7. 31.