ReSharper C++ already helps you craft the best games with Unreal Engine 4, and we are working hard to expand our coverage of your everyday needs. In this EAP build, we are ready to introduce initial support for one more aspect of game development – the High Level Shading Language. HLSL is a language for creating C-like programmable shaders. With vertex and pixel shaders, you can manage how the vertices and pixels are processed. This allows you to control all the programmable stages of the graphics pipeline.
ReSharper C++ 2020.1 provides only initial support for HLSL. First of all, this means that the parser and resolver now understand HLSL code. But this build includes a lot more than parsing and resolving:
- Syntax highlighting and tooltips
- Search and navigation
- Code assistance
- Working with virtual file paths
This is just the very beginning of our work on HLSL support, but we hope it can already help you be more productive with HLSL. We would greatly appreciate it if you gave it a try and shared your feedback!
Syntax highlighting and tooltips
ReSharper C++ highlights HLSL code according to your default color scheme (Tools | Options | Environment | Fonts and Colors). It also has tooltips for code elements with type information and documentation, as well as parameter and type hints:
Search and navigation
You can search for and quickly navigate to structs, functions, or parameters in your entire solution, referenced files, and standard libraries.
ReSharper C++ saves you time by providing smart suggestions in completion lists, as well as by highlighting the signature compatible with the entered parameters, auto-inserting matching delimiters, and more. Note that at the moment, there still are a few limitations here. For example, it will not suggest keywords and built-in functions, but this work is in progress, so stay tuned!
Virtual file paths
The Unreal Engine USF files are based on HLSL and contain the multi-platform shader code. These files usually include virtual file paths, and now ReSharper C++ can work with them and support all the usual actions. Note that virtual paths are not currently supported for Plugin files.
The work on HLSL support is still in progress, so this feature list is not final, and it is possible that there are some issues. That’s why we really need you to test it on real projects. Check out the new EAP build and share your feedback with us in the issue tracker or in the comments below. Thank you!
Your ReSharper C++ team
The Drive to Develop