> For the complete documentation index, see [llms.txt](https://stylizededge-devs.gitbook.io/aqs-doc/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://stylizededge-devs.gitbook.io/aqs-doc/advanced/hardware-detection.md).

# Hardware Detection

On first launch (and any time there's no saved preset choice), AQS detects the device's capability and assigns a tier, used to filter which presets the player can even see.

## Two Detection Methods

**Hardware heuristic (default, zero setup)** — reads GPU name, VRAM, system RAM, and CPU core count via platform APIs, then maps that to a tier using simple thresholds (PC/Console uses VRAM as the primary signal; mobile uses RAM, since GPU naming is far less consistent across Android devices).

**Benchmark scene (optional, more accurate)** — create an `AQS Benchmark Config` asset pointing at a level built to stress whatever your game cares about most, with a duration and warmup time. The profiler loads it, measures real frame times, and scores the result against thresholds you define on the config asset.

## The 5 Device Tiers

| Tier     | Typical target       |
| -------- | -------------------- |
| Low      | Budget mobile        |
| Mid      | Mid-range mobile     |
| High     | Flagship mobile      |
| Flagship | PC low-mid / console |
| Ultra    | High-end PC          |

## Result Persistence

Whichever method you use, the result is saved to `GameUserSettings.ini` and never re-runs automatically — a player won't sit through a benchmark every single launch. Expose a "Re-detect" button in your settings menu calling `RunBenchmark()` on the subsystem if you want players to manually re-run it (useful after a hardware upgrade).

## Showing Hardware Info in Your Menu

`GetHardwareInfo()` on the subsystem returns a struct with GPU name, VRAM, system RAM, CPU name/cores, and the detected tier — bind these directly to Text Blocks for an AC Origins / MW2019-style hardware readout panel.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://stylizededge-devs.gitbook.io/aqs-doc/advanced/hardware-detection.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
