I'm having trouble with this. My game crashes when I try using Steam Input. Basically, your controller, your actions (such as "shoot" or "walk forward"), and action sets (control schemes that can change based on game state, such as "in menu," "walking," or "driving") all get assigned unique UINT64 handles. I'm at the stage where I'm using the provided functions to assign handles, and it's crashing my game.
In a native class, I have these variables
And I create an object and try to set up those handles by using this function
The function completes, but the game crashes later, with the error "Unhandled exception ... Access violation reading location ..." Call stack location is FArchiveRealtimeGC::PerformReachabilityAnalysis(), which I understand is part of UE3's garbage collection system.
I'm not sure how to tackle this problem, and I've just been trying stuff. I logged the handles that get assigned, and I tried setting those handles manually:
But the game still crashes after running that function. So I tried removing more from it.
And I can run that function, and the game moves along just fine, except that I don't have any Steam Input action sets I can switch to.
So what might I be able to check to find out why my game is crashing? What else would I need to find out in order to track this down?
In a native class, I have these variables
Code:
// typedef uint64 InputActionSetHandle_t; InputActionSetHandle_t IsometricSetHandle; InputActionSetHandle_t WorldMapSetHandle; InputActionSetHandle_t SquadMenuSetHandle; InputActionSetHandle_t BattleSetupSetHandle; InputActionSetHandle_t InBattleSetHandle; InputActionSetHandle_t MenuSetHandle;
Code:
void URPGTacSteamInput::SetActionSetHandles() { IsometricSetHandle = SteamInput()->GetActionSetHandle( "Isometric" ); WorldMapSetHandle = SteamInput()->GetActionSetHandle( "WorldMap" ); SquadMenuSetHandle = SteamInput()->GetActionSetHandle( "SquadMenu" ); BattleSetupSetHandle = SteamInput()->GetActionSetHandle( "BattleSetup" ); InBattleSetHandle = SteamInput()->GetActionSetHandle( "InBattle" ); MenuSetHandle = SteamInput()->GetActionSetHandle( "Menu" ); }
I'm not sure how to tackle this problem, and I've just been trying stuff. I logged the handles that get assigned, and I tried setting those handles manually:
Code:
void URPGTacSteamInput::SetActionSetHandles() { IsometricSetHandle = 1; WorldMapSetHandle = 2; SquadMenuSetHandle = 3; BattleSetupSetHandle = 4; InBattleSetHandle = 5; MenuSetHandle = 6; }
Code:
void URPGTacSteamInput::SetActionSetHandles() { }
So what might I be able to check to find out why my game is crashing? What else would I need to find out in order to track this down?
Comment