Troubleshooting
This section covers common issues and their solutions.
Common Issues
Problem | Possible Cause | Solution |
---|---|---|
Compile errors on import | Missing dependencies | Ensure TextMeshPro, Input System, and 2D Sprite packages are installed |
Steamworks errors | Steamworks integration | If using Steamworks, ensure the Steamworks.NET package is installed |
Missing style tags | Style sheet not updated | Run the setup tool again to update the TextMeshPro Default Style Sheet |
Control schemes not working | Name mismatch | Ensure control scheme names match between Input Action Assets and the Setup window |
Settings not applied | Manager reset after update | Reopen the setup window and reconfigure settings after updating |
Icons not displaying in build | Manager not initialized | Make sure the Input Icons Manager is properly initialized in your first scene |
Steamworks / Steamworks.NET Issues
If you get compile errors related to Steamworks: Type or namespace name ‘Steamworks’ could not be found
This means you have STEAMWORKS_NET
in your Scripting Define Symbols but don’t have the Steamworks.NET package installed.
Solutions:
- Install Steamworks.NET
- Ensure “com.rlabrecque.steamworks.net” is added to the Assembly Definition References
- If using a different Steam framework, you may need custom code
Missing Assembly References
If you see errors like: The type or namespace name ‘…’ does not exist in the namespace ‘…’
This is likely due to Assembly Definitions issues:
- Delete the content of the “Scripts” folder in “InputIcons/Scripts”
- Reimport the asset or the Scripts folder
TextMeshPro Style Tags Troubleshooting
If your style tags aren’t working:
- Check Sprite Assets: Verify that sprite assets exist in “Assets/TextMesh Pro/Resources/Sprite Assets/” with names matching your Icon Sets
- Check Style Sheet: Look for your actions in the Default Style Sheet at “Assets/TextMesh Pro/Resources/Style Sheets/”
- Persistence Issues: If styles disappear after restarting Unity, make a small manual change to the style sheet and undo it to force a save
Rebinding Issues
If rebinding doesn’t update gameplay:
- When using a generated C# class from an Input Action Asset, you must manually sync changes
- Add these lines in your Awake method (where “inputActions” is your generated class instance): ``` InputIconsManagerSO.RegisterInputActionAssetForRebinding(inputActions.asset); InputIconsManagerSO.UpdateRegisteredInputActionAssetsForRebinding(inputActions.asset);
Controls Issues
If controls behave strangely:
Check for multiple active Player Input components in your scene Steam can interfere with controls if the Unity Player runs via Steam Try recreating your Input Action Asset if you’ve upgraded from an older Input System version
Build Issues
If icons work in the editor but not in builds:
Make sure the Input Icons Manager is properly initialized in your first scene Check that all necessary sprites are included in your build Verify that your TextMeshPro resources are properly included in the build