My team makes Multiplaying TPS Game.
We use Unreal 4.7 Preview 3 (Because 4.6 has more crash problems… T.T)
We use only “Blueprint” (Not C++ Codes)
We organized the architecture with blueprint like below.
-
Parent Class is “BP_BaseCharacter”. It has common variables and functions with Replication. This class is inherited from “Character”
-
“BP_BaseCharacter” has a Interface.
-
Sub-Classes (inherited from BP_BaseCharacter) are “BP_Character_Swordman”, “BP_Character_Sniper”, “BP_Character_Assault”, “BP_Character_Engineer”.
Crash is occurred when garbage collection working (60Seconds or run the GarbageCollection force)
There are a varity of types crash log. (But all logs are occurred on Garbage Collection)
Crash 1)
[2015.02.03-09.10.34:957][116]LogThreadingWindows:Error: Runnable thread TaskGraphThread 0 crashed.
[2015.02.03-09.10.34:957][116]LogWindows: === Critical error: ===
Fatal error!
Crash in runnable thread TaskGraphThread 0
[2015.02.03-09.10.35:034][116]LogExit: Executing StaticShutdownAfterError
[2015.02.03-09.10.35:034][116]LogWindows:Error: Error reentered: Runnable thread TaskGraphThread 0 crashed.
[2015.02.03-09.10.35:034][116]LogWindows:Error: HandleError re-entered.
[2015.02.03-09.10.35:034][116]LogWindows: FPlatformMisc::RequestExit(1)
Crash 2)
[2015.02.03-09.10.49:591][225]LogUObjectBase:Error: ‘this’ pointer is misaligned.
[2015.02.03-09.10.49:592][225]LogWindows:Error: Windows GetLastError: 핸들이 잘못되었습니다. (6)
[2015.02.03-09.10.49:592][225]LogUObjectBase:Error: Object flags are invalid or either Class or Outer is misaligned
[2015.02.03-09.10.49:611][225]LogWindows:Error: Error reentered: Invalid object in GC: 0x0000003300000000, ReferencingObject: BP_Character_Swordman_C /Game/Blueprints/Characters/Swordman/BP_Character_Swordman.Default__BP_Character_Swordman_C, ReferencingProperty: ObjectProperty /Game/Blueprints/Characters/Base/BP_BaseCharacter.BP_BaseCharacter_C:ExecuteUbergraph_BP_BaseCharacter.CallFunc_GetPlayerController_ReturnValue
[2015.02.03-09.10.49:611][225]LogThreadingWindows:Error: Runnable thread TaskGraphThread 0 crashed.
[2015.02.03-09.10.49:611][225]LogWindows: === Critical error: ===
Fatal error: [File:D:\BuildFarm\buildmachine_++depot+UE4-Releases+4.7\Engine\Source\Runtime\CoreUObject\Private\UObject\GarbageCollection.cpp] [Line: 273]
Invalid object in GC: 0x0000003300000000, ReferencingObject: BP_Character_Swordman_C /Game/Blueprints/Characters/Swordman/BP_Character_Swordman.Default__BP_Character_Swordman_C, ReferencingProperty: ObjectProperty /Game/Blueprints/Characters/Base/BP_BaseCharacter.BP_BaseCharacter_C:ExecuteUbergraph_BP_BaseCharacter.CallFunc_GetPlayerController_ReturnValue
Crash in runnable thread TaskGraphThread 0
[2015.02.03-09.10.49:683][225]LogExit: Executing StaticShutdownAfterError
[2015.02.03-09.10.49:683][225]LogWindows:Error: Error reentered: Runnable thread TaskGraphThread 0 crashed.
[2015.02.03-09.10.49:683][225]LogWindows:Error: HandleError re-entered.
[2015.02.03-09.10.49:683][225]LogWindows: FPlatformMisc::RequestExit(1)
[2015.02.03-09.10.49:683][225]Log file closed, 02/03/15 18:10:49
(Sorry. Log is written by Korean)
Crash 3) : Dump File (It is common Error Code for all crashes)
“0xC0000005”
덤프 요약
덤프 파일: Dump2112116784.dmp : C:\Users\AnyMk2\AppData\Local\Microsoft\Windows\WER\ReportQueue\AppCrash_UE4-CND_4Hunter_dc192fe07da7ab3e57a36c842e2473adbd5577b_00000000_cab_2fb18280\Dump2112116784.dmp
마지막으로 쓴 시간: 2015-02-03 오후 4:38:09
프로세스 이름: CND_4Hunter.exe : D:\AnyRaiN_Work\CatDog_4Hunter\trunk\Bin\4HunterBin\WindowsNoEditor\CND_4Hunter\Binaries\Win64\CND_4Hunter.exe
프로세스 아키텍처: x64
예외 코드: 0xC0000005
예외 정보: 스레드가 적절한 액세스 권한이 없는 가상 주소에서 읽거나 해당 가상 주소에 쓰려고 했습니다.
힙 정보: 없음
시스템 정보
OS 버전: 6.3.9600
CLR 버전:
Our Team tests many cases about this crash.
As a result, We find out the fact like below
-
BP_BaseCharacter has something wrong.
-
The Interface, inherited to BP_BaseCharacter, is also wrong. When we removed this interface (+ohter codes), Crash is solved, otherwise, when we removed the only codes without deleting interface, Crash also occurred.
-
Even if “BP_BaseCharacter” is not spawned, but just written in codes, “Crash is also occurred!!!”. (More over, That node related with “BP_BaseCharacter” is not run!!! (??? It is very strange problem…)
We want to know that,
“Why garbage collection crash is occurred in “BLUEPRINT””,
and “How to solve this problem with only Blueprint”. We don’t have a lot of time.