Symbol Servers and Other Enhancements for Unreal Engine Development in Rider
The new Rider 2022.2 EAP build brings some useful enhancements for Unreal Engine developers. If you’ve never used Rider for Unreal Engine projects, give it a try and experience first-class support for the Unreal Engine reflection mechanism, integration with Blueprints, and other benefits available on Windows, Linux, and macOS. Learn more on our website.
With the EAP, you can evaluate new features and enhancements for free and share your feedback with us. Please use the Rider issue tracker to report bugs and suggest new features.
Symbol server when debugging on Windows
While Rider works for your Unreal Engine projects on all three major platforms – Windows, Linux, and macOS – this new addition is targeted at Windows developers.
When debugging, sometimes the library symbols are not available on your local machine. In this case, you can use symbol servers. A symbol server is a file server that stores your debug symbols centrally on a server, rather than on each developer’s machine. Then, you can point your debugger to the symbol server to resolve symbol names. Everyone with access can share the same server.
Rider on Windows now supports Microsoft’s approach to symbol servers. You can now point the debugger to the symbol server of your choice in Settings | Build, Execution, Deployment | Debugger | Symbol Servers:
Rider lets you configure symbol servers (or indexed storages) and non-indexed shared folders separately. If you need to add a public Microsoft symbol server, simply click the corresponding link.
When configured for the first time, the download is triggered at the start of the debugger session. When the symbols are downloaded, library symbols will be correctly resolved. For example, frames from Windows system libraries will be shown.
Before the symbol server is configured:
After the symbol server is configured:
The Enable symbol servers support setting allows a debugger in Rider to use any downloaded symbols cache locally. The directory of this cache can be configured in the settings.
One important limitation: currently only .
pdb files are supported, not .
dll files (CPP-29389).
Ability to create a new module in Rider
When creating a new module with game logic, you regularly do many things: add a folder, add a Build.cs file into this folder, create a class that initializes the module, and update the .uproject and Target.cs files. Rider now helps you automate these tasks with the new Add | New Unreal Module… action, available in the solution view via a context menu:
The action opens a dialog where you can enter the new module’s name and type, select the loading phase, and target the files you’d like to be updated with the reference to the new module:
Rider then will generate the module’s source and header files. As well as the Build.cs file.
This works on all platforms – Windows, macOS, and Linux – and for all project models on Windows (.sln and .uproject). Try creating new modules from inside Rider and let us know what you think!
Support for Spec tests
Like ReSharper C++, Rider now supports the Spec tests from the Unreal Engine automation testing framework. If you have a set of tests defined in the
Define method after the DEFINE_SPEC macro or the BEGIN_DEFINE_SPEC/END_DEFINE_SPEC macros, Rider will successfully discover them. In the Unit Test Sessions window, you can review the results of the tests and rerun failed, all, or specific tests.
Your Rider team
The Drive to Develop