The setting "Regenerate project properties on configuration change" is related to Rider's ability to work with the Unreal Engine project model. When "Use Unreal Engine project model" is enabled, Rider calls the Unreal Build Tool (UBT) to generate Rider-specific project files. These files are generated as .json files under {Game}/Intermediate/ProjectFiles/.Rider and describe the project model that Rider uses for its internal purposes.
On Windows, Rider can work with .sln and .vcxproj files, allowing users to open {UEGame.sln} instead of .uproject. In this scenario, these settings are editable. When opening a .sln solution, users can disable "Use Unreal Engine project model," so Rider will rely only on .vcxproj files generated by the "Generate Visual Studio project files" action.
However, on MacOS and Linux, Unreal Engine projects can only be opened via .uproject files. When a project is opened this way, switching configurations or editing .build.cs, .target.cs, or .uproject files requires project files regeneration because:
Depending on the target, the set of included/excluded Unreal Engine modules changes, necessitating re-analysis.
Compilation properties for always-included modules differ across targets, requiring re-analysis.
Changes in .build.cs, .target.cs, or .uproject files are significant enough to require project files regeneration.
The "Regenerate project properties on configuration change" setting is grayed out when the project is opened via .uproject (the only way on MacOS) because Rider needs to know how to work with the newly set configuration/target. Therefore, Rider requires regenerating project properties, and users are not supposed to turn this setting off on MacOS.
Hope it brings the light to the situation! If anything is unclear or should you have any other questions or difficulties, please tell me. Have a nice day!
Thank you for your question!
The setting "Regenerate project properties on configuration change" is related to Rider's ability to work with the Unreal Engine project model. When "Use Unreal Engine project model" is enabled, Rider calls the Unreal Build Tool (UBT) to generate Rider-specific project files. These files are generated as
.jsonfiles under{Game}/Intermediate/ProjectFiles/.Riderand describe the project model that Rider uses for its internal purposes.On Windows, Rider can work with
.slnand.vcxprojfiles, allowing users to open{UEGame.sln}instead of.uproject. In this scenario, these settings are editable. When opening a.slnsolution, users can disable "Use Unreal Engine project model," so Rider will rely only on.vcxprojfiles generated by the "Generate Visual Studio project files" action.However, on MacOS and Linux, Unreal Engine projects can only be opened via
.uprojectfiles. When a project is opened this way, switching configurations or editing.build.cs,.target.cs, or.uprojectfiles requires project files regeneration because:.build.cs,.target.cs, or.uprojectfiles are significant enough to require project files regeneration.The "Regenerate project properties on configuration change" setting is grayed out when the project is opened via
.uproject(the only way on MacOS) because Rider needs to know how to work with the newly set configuration/target. Therefore, Rider requires regenerating project properties, and users are not supposed to turn this setting off on MacOS.Hope it brings the light to the situation! If anything is unclear or should you have any other questions or difficulties, please tell me.
Have a nice day!