Rider for Unreal Engine Public Preview Starts Now!

Hi all,

Today we are launching the Rider for Unreal Engine Public Preview! This marks another important step toward making Rider a standalone, all-in-one, cross-platform Game Dev IDE!
Rider for Unreal Engine Preview
In this post I will describe the tool and how you can try it, but first, let me briefly go through the family of C* tools we have and comment on why Rider is right for developing with the Unreal Engine.

We now offer the following tools for C++ and Game Development:

  1. CLion — a cross-platform C/C++ IDE, which is used for Native development and targets Finance, AI projects, and Embedded development. It works well for remote setups or when you debug on chips or remote Linuxes. There’s been a CMake-based workaround for using it for the Unreal Engine, but we’ve never considered it a full solution.
  2. ReSharper C++ — a Visual Studio extension for C++ developers. It targets all C++ projects written in Visual Studio and makes it a much smarter and more productive environment. Visual Studio itself (often with ReSharper C++ or Visual Assist) is the tool most widely used for Unreal Engine projects (confirmed by our Game Development Conference survey, which we regularly run at the booth). That’s why ReSharper C++ was the first place where specific Unreal Engine support appeared in JetBrains.
  3. Rider — a cross-platform, fast and powerful C# IDE, which has quickly become a great fit for Unity. Talking to our users who do Game Dev, we’ve noticed that many game studios develop both Unity and Unreal Engine games. They would probably be happy to stay with one tool for all their projects.

This made us think… Rider is a cross-platform IDE based on the IntelliJ Platform, with its language engine borrowed from ReSharper. If we were to add ReSharper C++’s language engine to Rider, implement a debugger, and finally optimize it all for the Unreal Engine, wouldn’t that be a perfect fit for UE4 game development? We thought it would! And we decided to make it so.

Today we are happy to present to you Rider for Unreal Engine Public Preview. This is a special edition of Rider available as an Early Preview, currently for Windows only. If you are ready to jump in, click the button and proceed with the form:

JOIN THE EARLY PREVIEW

Below you may find some details on the functionality and a brief FAQ section:

Rider for Unreal Engine: What it can do for you

In brief, Rider for Unreal Engine aggregates all the C++ and Unreal Engine features that come from ReSharper C++. On top of that, it is knowledgeable about Blueprints, HLSL, understands C# Build and Target files. Last but not least, it is quite fast.

Our own Matt Ellis is happy to give you a detailed overview of the tool in this video:

As the video shows, Rider for Unreal Engine, while still in Public Preview for now, already brings a lot of value to Unreal Engine game developers.

A full-featured IDE with native C++ support

ReSharper C++ implements a full-featured C++ parser which boasts a deep understanding of the notoriously tricky C++ language. Its many useful features are now available in Rider for Unreal Engine.
Alt-Enter menu
Here’s what you can do:

  • Rename and Change Signature and feel confident that all the usages are correctly updated.
  • Complete statements not yet available in the current scope and get the missing #include added for you.
  • Select the semantically correct blocks of code and rearrange them without having to copy and paste.
  • Check the results of 250+ code inspections running in your code just as you type. This is likely to save you from quite a few critical errors and hours spent in panic mode.
  • And use lots of other game-changing features described in the ReSharper C++ online documentation.

For more details, check out this part of Matt’s video that’s dedicated to the basic C++ features.

If you’re used to working in Visual Studio, you may be wondering about the other essential features that good IDEs are expected to provide. Rider is a full-featured IDE based on the IntelliJ Platform, which means it includes VCS integration, database tooling, extensive plugin support, and widely used plugins for emulating Vim and integrating with different cloud vendors.

Performance as the top priority

Making an IDE from the ground up, without any limitations imposed by Visual Studio (as is the case with ReSharper), means that the sky’s our only limit in terms of performance. And we’re doing our best to soar as high as possible!

Initial project indexing is designed to be fast, with incremental updates as you keep working on your game. We realize you want to start with your own game files first (not the Engine code) in many cases. So we index them and enable all the IDE features first, continuing with Engine source code indexing in the background.

If you stumble across any lags while you use the Preview, do let us know!

Knowledgeable about Blueprints

JetBrains is all about coding – and of course providing you with smart support for your coding. Though Blueprints (BP) offer a slightly different experience compared to what we usually provide with our tools, Blueprint (BP) files promote these overall goals. BP files are written in binary form and are usually edited visually. Still, they contain a whole set of useful information for the developers of the C++ part of the game, which we decided Rider needed to be aware of:

  • There may be derived BP classes, which is good to see when you invoke Find Usages on a C++ class or when you simply read through C++ code in the editor.
  • There are values of overridden properties and it’s useful to see the changes to them that happened just recently in the Unreal Editor.
  • You may want to navigate to BP objects from your C++ code.

Rider reads BP files from your project and the Unreal Editor, along with plugins from both, and extracts all the information from the above:
Blueprints derived

For more details, check out this part of Matt’s video that’s dedicated to Blueprints support.

Understands the UE4 reflection system

If you are a happy ReSharper C++ user, you may have seen this in action already. To our language engine, the UE4 reflection mechanism is much more than just macros with plain text parameters.

  • We can parse and handle these macros correctly before you even run an UnrealHeaderTool – just because we know these macros are special and important.
  • Reflection specifiers are more than text, so code completion and documentation tooltips work for them, too:
    Reflection macros documentation
  • Missing or incorrectly set UE4 reflection macros will be caught by the built-in code analysis:
    Macro inspection

For more details, tune in to this part of Matt’s video.

Gets the semantics of Remote Procedure Calls

If you don’t tune your parser specifically, it will likely be confused by the UE4 Remote Procedure Call (RPC) functions and won’t match them by names. That’s why Rider (as well as ReSharper C++) identifies UE4 RPCs by the Client, Server, or NetMulticast keywords in the UFUNCTION declaration statement. It also understands whether a Validation function should be generated (by the WithValidation keyword in the UFUNCTION declaration statement). In practice, this gives you:

  • An updated Generate action that will generate both the _Validate and _Implementation functions when necessary, or just the one that is currently missing.
  • Suggestions for both functions in navigation:
    RPC functions
  • And the ability to update all of them when you Rename or Change Signature.

Want to see it in action? Matt gives a demonstration of it in his video.

Enforces the UE4 naming rules

Another thing Rider borrowed from ReSharper C++ is support for UE4 naming convention rules. This is available for every action, from Introduce Variable to generating getters and setters. Meanwhile, the Inconsistent UE4 naming inspection check detects any names that don’t match the rules and suggests a quick-fix (which triggers a Rename refactoring).

Understands HLSL and C#, JSON, and uproject/uplugin dialects

Do you often need more than C++ and BP for your Unreal Engine projects? We imagine you surely do!

You might have seen the presentation of the initial HLSL shader files language support in ReSharper C++ 2020.1. You’ll be glad to know the same support has come to Rider for Unreal Engine! Our tools provide you with the following benefits for working with HLSL files:

  • Navigation to HLSL files.
  • Syntax highlighting and highlighting for syntax errors.
  • Semantic code analysis checks.
  • A few useful inspections with quick-fixes.
  • Refactorings, which are experimental, but Rename, Inline Variable, Introduce Variable, and Change Signature already work for many cases.

For more, check out this relevant portion of the video demonstration.

Rider for Unreal Engine wouldn’t be Rider without support for C# Build and Target files, as well as completion and validation for module names in the .uproject and .uplugin files.

Includes its own debugger

This was the toughest challenge, and indeed it prevented us from starting the Preview earlier. No one is allowed to use the Microsoft debugger outside of MS tools, so we had to implement our own debugger based on LLDB. And we’ve already tested it on some real-world projects – thanks to CLion users, who got this particular debugger delivered for their Windows projects a few releases ago.

With Rider for Unreal Engine, you can set line breakpoints, watchpoints, conditional breakpoints, and others. You can also use evaluate expressions or set values during debugging sessions. It has support for NatVis files and automatically finds and loads the UE4.natvis, providing user-friendly views of Unreal Engine data types.

See the debugger in action in Matt’s video. Please note it is still at a very early stage and we plan to improve it significantly during the Public Preview times.

RiderSourceCodeAccess

To be able to select Rider for Unreal Engine as your IDE of choice in Unreal Editor, make sure you download RiderSourceCodeAccess plugin from the marketplace. (Check out this short instruction on GitHub on how to use it). And version 4.25 makes things even easier. Unreal Editor will automatically recognize Rider, and it will list all compatible versions in the drop-down list of source code editors in Unreal’s preferences.

Rider for Unreal Engine: FAQ

Is Rider for Unreal Engine Public Preview free?

facebook_1200x1200
Yes, it is. But you have to register to get a license from us for your JetBrains Account. This license will only be valid for Rider for Unreal Engine Public Preview. It won’t work for a regular Rider release.

This license is an individual subscription valid for 1 year. We hope this will be enough time to cover the final stages before the official release. There are no restrictions on using it for commercial purposes, but you do so on your own risk.

OK, how can I get a license?

To get a license, you just need to fill out this form. The license will be created for you automatically and added to your JetBrains Account, and you’ll be notified via email. To activate the license:

  1. Use the link in the email to proceed with the account and license activation.
  2. Once you are done, use your JetBrains Account credentials to register inside the product.

I own a license for Rider. Will I get Rider for Unreal Engine when it’s released officially?

Yes! Rider for Unreal Engine will be an official part of our JetBrains Rider IDE, which we see as our main offering for game developers.

Who qualifies for the Preview builds?

Rider for Unreal Engine Public Preview is open for everyone. Fill out the form, get the build and the license, and start using it right away.

Can I develop my regular C++ projects with Rider for Unreal Engine?

Rider for Unreal Engine comes with all the C++ support offered by ReSharper C++. So if you get your VS solution and want to open it in Rider, go ahead! However, please keep in mind that our main focus with this preview is Unreal Engine and Game Development. We’ve dedicated significant efforts to it, and we are expecting feedback specific to the Unreal Engine from our previewers.

Rider is a cross-platform IDE. Is UE4 support available on all 3 platforms as well?

For now, Rider for Unreal Engine only operates on Windows. We plan to extend it to macOS and Linux in the future – hopefully, by the time of the first release.

Do I need a specific project model to start working on my Unreal Engine project?

You can simply open your .sln files in Rider for Unreal Engine. By the time it is released, we hope that Rider will also work with the .uproject natively, so you’ll be able to skip the .sln files generation step.

When will the official release happen?

We still don’t have a strict estimate. We’ve just launched a Public Preview, and we would like to collect and handle as much feedback as possible. When we determine that the product is mature enough and ready for extensive use in production, we’ll merge all the functionality into JetBrains Rider. This could happen before the end of 2020, or it may not, depending on the feedback we get.

Where should I submit my feedback?

This is simple! You actually have several options here:

  • UnrealLink plugin for Rider, RiderLink plugin for Unreal Editor are there to help with the Blueprints integration and in general with the communication between Rider and Unreal Editor. Any specific issues should be submitted to GitHub.
  • For issues specific to C++ and Unreal Engine code, please log them in the ReSharper C++ issue tracker.
  • Rider-specific issues should be directed to the Rider tracker. But if you send a ticket to the wrong spot, don’t worry. We’ll move it to the right place.
  • Send a message to our support engineers and the Rider for Unreal Engine developers at rider-cpp-support@jetbrains.com.
  • Ping us on Twitter (@JetBrainsRider). We would greatly appreciate it if you could use the #RiderForUnrealEngine tag while tweeting.

It’s time to try Rider for Unreal Engine! Click the button and proceed with the form:

JOIN THE EARLY PREVIEW

Your Rider team
JetBrains
The Drive to Develop

This entry was posted in How-To's and tagged , , , , , . Bookmark the permalink.

71 Responses to Rider for Unreal Engine Public Preview Starts Now!

  1. Rokas Kupstys says:

    I hope this will eventually turn into C++ support inside Rider. You know for other projects that mix C++ and C# but are unrelated to unreal.

    • Anastasia Kazakova says:

      You can use it for general Windows C++ projects even now. However, mind that’s not our major focus.

  2. Tom - Henry Coursow says:

    Does I have to get a trail license?
    I own a All Tools License but it says i don’t own a license…

    • Anastasia Kazakova says:

      Yes, you need to register and obtain a special license which is not included into All Products Pack.

  3. Vyacheslav Morov says:

    Is there any chance for macOS EAP version to appear before release?

    • Anastasia Kazakova says:

      Yes, we plan to expand to Linux and macOS before release. The ideal plan is to have the uniform experience with uproject on all 3 platforms. Stay tuned!

  4. David Taralla says:

    Hello,

    Can Rider profile Unreal Engine targets? I couldn’t find anything about this, wondering if it’s still in the works?

    Also, will Rider for Unreal support remote-debugging on XBox and other consoles? :)

    So excited with this announcement!

    • Anastasia Kazakova says:

      All these things are definitely planned. Maybe won’t be on time for the first release, but definitely added some time later. Thanks!

  5. Manikandan says:

    I am using Unreal Engine 4.24.3.

    I have installed Rider for Unreal Engine.

    So as mentioned in the preview video…only from Unreal engine 4.25, The ‘rider’ option will be listed under the ‘source code editors’ list in the unreal engine right ???

    Before Unreal engine 4.25, The rider will remind us to install the plugin when we open the solution. right ??

    Because the above happened to me. I created a new c++ unreal engine project. When I went to source code editors list in the unreal engine, the rider was not listed there.

    Then I opened the sln from my disk where the project is stored using Rider for unreal engine. Then after opening up, I got notified by the rider to install the plugin and to update it.

    So after 4.25, Rider will appear in unreal engine right ???

    • Anastasia Kazakova says:

      yes, RiderSourceCodeAccess plugin is included into the Engine itself since 4.25

      • Manikandan says:

        I also noticed in this blog that you have provided a link to download the plugin from GitHub.

        I downloaded the zip file and tried to use the “install from disk” option.
        But it shows error.

        I restarted my system and downloaded it again but no luck.

        Any idea about that ????

        The error is: Fail to load plugin descriptor from file RiderSourceCodeAccess_4_24_0.zip

        Please provide any workaround or any other way.

        • Anastasia Kazakova says:

          Do you mean RiderSourceCoudeAccess plugin? Are you following this instruction to install it? https://github.com/JetBrains/RiderSourceCodeAccess/blob/master/README.md

          • Manikandan says:

            Thank you Anastasia. The link u provided to download the plugin which takes to GitHub page…it looks like it does not have this instruction.

            If anyone looking for it…

            How to add RiderSourceCodeAccess to your project

            Copy RiderSourceCodeAccess folder:
            Engine from sources: to {UnrealEngineRoot}/Engine/Plugins/Developer or to {UnrealProjectRoot}/Plugins/Developer;
            Engine from Epic store: to {UnrealProjectRoot}/Plugins/Developer;
            Re-generate solution files – uproject file > context menu > Generate Visual Studio project files;
            Build UE project using Rider or Visual Studio;
            Start Unreal Editor;
            Edit > Editor Preferences … > General > Source Code > Source Code Editor;
            Select Rider from drop down list. NB: only Rider with C++ plugins will be available from drop down list.

            • Anastasia Kazakova says:

              Thank you. I provided a link to the plugin distributives, and this is written in the Read.me file in the repository. Anyway, we hope the plugin will be very soon available from the UE marketplace.

            • Manikandan says:

              One more query.

              In the instructions…it says…

              “Copy RiderSourceCodeAccess folder”…meaning the extracted folder from the zip file or the zip file itself ??

  6. Valencio says:

    If I do ctrl+F it doesn’t go to search, but to end of the file. Did I do something wrong with the settings?

  7. Manikandan says:

    Do I have to add this “RiderSourceCodeAccess” folder to every project I create manually for now ???

    Because adding this folder to unreal engine source folder or epic games launcher source folder doesn’t work.

    Only to the project created…it works.

    • Anastasia Kazakova says:

      With UE 4.25 RiderSourceCodeAccess will be included automatically in the UE. And all these problems will go away.

  8. luochuanyuewu says:

    whenever i install RiderLink plugin for Unreal Editor, which cause many shader compiling.

    • Anastasia Kazakova says:

      RiderLink is bundled. Why do you have to install it? Anyway, there are some important fixes to it on the way. Update should be ready this week. Stay tuned!

  9. Dertzack says:

    Hi Rider team!

    I have been using Rider since day one and it’s amazing!

    However, today I tried to compile a new C++ project and got some LNK errors related to the Riderlink plugin as well as some warnings about the TEXT macro definitio conflicting with a windows macro, now I can’t really compile any project with Riderlink on it, any idea as to whit this may be happening? Was the plugin updated?

  10. Krzycho says:

    For me it’s crucial to have support for game consols: PS4, XOne, Switch. Without I can’t switch from VS. Is there any plans for that?

  11. Kirill Sapozhnikov says:

    Hi. That’s just works =) But I have a question – is it possible to add some specific include directories for specific configuration in project?

    • Anastasia Kazakova says:

      Thank you!
      Do you mean not through the project model? Why do you need that? Is it UE4 project?

      • Kirill Sapozhnikov says:

        It’s not a UE4 project. We use a self-written tool for Linux development under VS and it allows VS to build for Linux and resolve Linux-specific symbols. Builds work but the symbol resolving doesn’t. Unfortunately it’s a little bit more complicated than just adding include directories, so the question is off =(

  12. Darby Costello says:

    Hi. I’ve tried installing on a new computer with UE4.25 on, but *without* Visual Studio installed. The Rider code access plugin is installed and enabled and Rider is selected as the IDE. However I can’t create a new C++ project in UE4, nor add a C++ component to a Blueprints project, as UE4 says that Vis Studio compiler is not found. I also can’t generate a solution from the project file, as again, UE4 says it needs VS to do this. Do I have to build a solution in VS (by installing it or on another PC with VS already installed) before I can use Rider with the project? In other words can UE4 not work with the Rider preview unless VS is concurrently installed? Thanks

    • Anastasia Kazakova says:

      You still need VS, at least the build tools. Rider uses .sln files for the project and calls msbuild compiler anyway.

  13. Kirill Sapozhnikov says:

    Looks like I can’t launch simultaneously Rider for C++ and an ordinary Rider. The window with already launched Rider just shakes and than’s all. Is it wanted behaviour?

  14. snipe3000 says:

    Hello,
    I’ve seen many good comparison charts between Jetbrains products and the competition. Is there, or will there be, something similar between Rider for Unreal Engine and Resharper C++ for VS?

    I’m curious to the advantages of using one over the other, or if its virtually the same thing.

    • Anastasia Kazakova says:

      It doesn’t make sense to compare with ReSharper C++. The C++ and Unreal Engine features are mostly the same. ReSharper C++ is used as a back-end and a language engine for Rider for Unreal Engine. The only difference is Blueprints integration, not available in ReSharper C++. Hope that helps

  15. Vladislav Mikhalin says:

    Hi,

    Is it normal that there is no IntelliSense for STL and 3rd-party libraries included through the means of Unreal Build System? Something as simple as vector does not get any autocompletion. Is there any integration with UBS at all?

  16. Stefan H says:

    Installed it and have been using it for a day and it’s so far a really pleasant experience! Do you have any plans to allow customization of the code style? Our internal code style differs slightly and it would be great to get that working with the editor as well.

    • Anastasia Kazakova says:

      Hi, thank you for your feedback. You can update the code style settings in File | Settings | Editor | Code Style | C++

      • Stefan H says:

        Thank you for the quick response! However when I have the checkbox for using “Inconsistent UE4 Naming” checked in File | Settings | Editor | Code Style | C++ it seems like the settings are pulled from somewhere that isn’t configurable. This is a minor issue but overall would be great if it could also be customized somehow =)

  17. Diego says:

    What will be the final price once it’s out of beta? Or will it simply be integrated with the original Rider product and therefore the price will be that of the original Rider?

    • Anastasia Kazakova says:

      Yes, with the release it will be the part of regular Rider. So if you have Rider active license by the time of the release, you’ll get it free.

  18. Dylan says:

    Hi Anastasia!

    This is really exciting! I’d like to clarify on Diego’s question, please. So on the official release, “Rider for Unreal Engine” will be integrated into the regular “Rider” IDE.

    Will there still be a separate “Rider for Unreal Engine” IDE as in the preview, alongside the regular “Rider” IDE with it integrated?
    Or will there only be the version integrated into the regular “Rider” IDE?
    I’m checking so I can get an idea of my purchase options when it releases, as I’m new to Rider :).

  19. Alex says:

    So in UE4 I can write code normally in C ++? Indeed, in Unity3D there is only C#

  20. Stefan Andres says:

    Hello, I am trying to use Rider for 4.25. I have VS 2017 installed as well.
    Opening Projects out of UE4 works fine, but whenever Rider opens with a UE4 project, Rider wants to install the LinkPlugin, but that fails everytime!
    The error in the logs suggest that the plugin installe cant find the unreal engine root folder ???

    br

  21. John Meow says:

    Why is it Rider and not CLion? Will we have two different C++ IDEs?

    • Anastasia Kazakova says:

      We have one general purpose C++ IDE – CLion. And it’s still our main offer for general-purpose cross-platform C++ projects, like projects in embedded, financial sectors, and others, or any other native development. Rider however is already a big thing in the Game Dev world with Unity. And as we see, many studios would love to have one Game Dev IDE for all cases, be it Unity or Unreal Engine. So what we do in Rider, we not just bringing C++ support there, but also lots of specific integrations with Unreal Editor, support for BP, etc.
      Modern development world is now multi-language. It’s more important which technologies you use in the particular area than which one language to select. So why would we distinguish tools by language?

  22. Grape says:

    Does river for unreal support UE4 macros? I can’t go to the definition。

Leave a Reply

Your email address will not be published. Required fields are marked *