Back to Unreal Engine

DryreL Software Unreal Engine

Capability Detect Extended

System capability detection for Unreal Engine 5

Detect what the player's machine can do, and scale your game to fit it. Available now on GitHub.

Available on GitHub

  • 17Blueprint functions
  • 3GPU vendors recognised
  • MITFree on GitHub

Overview

What it does

A plugin that reads the CPU, cache, memory, graphics hardware and benchmark scores of the machine your game runs on, so you can scale features to fit. Maintained by DryreL for new Unreal Engine versions.

  • Unreal Engine 5
  • C++
  • Blueprint
  • MIT license

Gallery

See it in action

Capability Detect plugin splash screen, upgraded by DryreL
The plugin splash screen.
Searching for Capability Detect functions in the Unreal Blueprint action menu
Every function shows up in the Blueprint action menu.
All Capability Detect Blueprint nodes laid out in the Unreal Engine Blueprint editor
All the detect nodes in a Blueprint graph.

How it works

From zero to working

  1. DetectCall the detect functions at startup or on a loading screen.
  2. ComparePerformance indexes use 100 as an average good CPU or GPU: lower is slower, higher is faster.
  3. ScalePick quality, effects and resolution to match the machine in front of you.

Features

Built to just work

  • CPU detectionQuery the processor's capabilities from C++ or Blueprint.
  • Cache and memoryRead cache and memory information of the machine.
  • RHI wrapperAsk the render hardware interface what the GPU supports.
  • SynthBenchmarkWraps Unreal's synthetic benchmark so you can pick quality settings from real scores.
  • Blueprint readyEvery detect function is available as a Blueprint node.
  • Kept currentOriginally released by Intel. DryreL maintains it so it keeps working with new Unreal Engine versions; no new features are planned.

Reference

Blueprint functions

GroupFunctionReturns
CPUIsIntelCPUTrue on an Intel CPU
CPUGetNumLogicalCores / GetNumPhysicalCoresCore counts
CPUGetCoreFrequency / GetMaxBaseFrequencyCurrent and maximum frequency
CPUGetCorePercMaxFrequencyPercent of maximum frequency in use
CPUGetFullProcessorName / GetProcessorNameLong and short processor name
MemoryGetUsablePhysMemoryGBUsable physical memory in GB
MemoryGetComittedMemoryMB / GetAvailableMemoryMBCommitted and available memory in MB
GPUIsRHIIntel / IsRHINVIDIA / IsRHIAMDTrue for that GPU vendor
GPURHIVendorNameVendor name of the GPU
BenchmarkComputeCPUPerfIndex / ComputeGPUPerfIndex100 = average good, below is slower, above is faster

Good to know: The first call of each benchmark function runs the benchmark and is cached afterwards. Call both during startup or a loading screen.

Get started

Install and use

Install

1. Clone or download the repository.
2. Open Plugins/CapabilityDetect/Source/ThirdParty/CapabilityDetectLibrary/CapabilityDetectLibrary.sln
   and build it as Release x64.
3. Right-click the .uproject, choose "Generate Visual Studio project files", then build
   as Development Editor x64.
4. In the editor open Edit, Plugins and confirm Capability Detect is enabled.

Requirements

Before you start

  • Unreal Engine 5
  • Visual Studio C++ 2022 or JetBrains Rider (to compile the third-party library and the project)
  • Windows