SnapdragonGameStudios/adreno-neural-fusion

C

4

1 commits

updated Sep 22, 2026

See the code

See what people are saying

SourceMessageScoreDate

Super Resolution and Frame Generation on Snapdragon Mobile Platforms

https://github.com/SnapdragonGameStudios/adreno-neural-fusio...

0

Sep 24, 2026

README

Adreno™ Neural Fusion (ANF)

Mobile games are asked to do more with every generation. Players expect sharp images and smooth motion without giving up battery life, while developers have to fit the experience inside a mobile power budget.

Adreno™ Neural Fusion is Qualcomm's neural rendering SDK for mobile games. It gives game teams more room to improve visual quality and displayed frame rate while keeping power use under control. The application chooses its image dimensions, rendering order, and fallback behavior. ANF reports hardware support and Vulkan requirements at runtime so the renderer can configure the correct path for each device.

Adreno™ Neural Fusion rendered sanctuary scene

Contents

Resources

ResourceUse it for
SDK integration guideNative Android Vulkan setup, rendering requirements, technique creation, dispatch, synchronization, validation, and release checks
Debug overlay guideValidating SR color, depth, motion vectors, jitter, warp prediction, and reprojection
Snapdragon™ ProfilerProfiling and analyzing ANF-enabled applications on Snapdragon™ devices
ANF Vulkan sampleA native Vulkan integration built on the Snapdragon™ Game Studios sample framework
ANF plugin for Unreal EngineIntegrating ANF into an Unreal Engine project
ANF plugin for UnityIntegrating ANF into a Unity project

Techniques

Super Resolution

SR reconstructs the scene at the output size selected by the application. The renderer supplies jittered scene color and depth, motion vectors without projection jitter, and the current jitter offset. Compose UI and other screen-space elements after SR so they remain sharp and stay out of temporal history.

See Super Resolution resource flow for the rendering contract and required inputs.

Frame Generation

FG uses consecutive rendered scene frames, depth, and motion vectors to create an intermediate scene frame. Render or composite UI separately for rendered and generated frames.

See Frame Generation resource flow for input, output, and composition requirements.

Requirements

The native SDK integration requires:

  • An Android application built for arm64-v8a.
  • Snapdragon™ 8 Elite Gen 6 and Higher (with broader support planned farther down our platform roadmap).
  • A Vulkan renderer.
  • A fallback path when the requested technique is unavailable.

The SDK integration guide covers initialization, runtime support checks, and the complete rendering contract.

Package contents

PathContents
lib/arm64-v8a/libanf.soAndroid ARM64 ANF runtime library
public/anf.hPublic API entry points and function table
public/anf_types.hCommon ANF types, structures, flags, and enums
public/anf_types_vk.hVulkan-specific ANF types
public/anf_sr.hSR creation and dispatch structures
public/anf_fg.hFG creation and dispatch structures
DEBUG-OVERLAY.mdSR debug overlay documentation
INTEGRATION-GUIDE.mdNative Vulkan integration and rendering contract
LICENSE-BSD-3-Clause.txtBSD 3-Clause terms for the public headers
LICENSE.txtQTI No-Login Binary License terms for libanf.so

Getting started

ANF can be integrated directly into a native Vulkan renderer or through the Unreal Engine and Unity plugins. For an engine integration, follow the instructions in the plugin repositories listed under Resources. The steps below cover the native Vulkan SDK.

  1. Read the SDK integration guide and open the ANF Vulkan sample.
  2. Package libanf.so for arm64-v8a, include LICENSE.txt with any redistribution of the binary, and add the public headers to the native build.
  3. Query technique requirements before creating the Vulkan instance and device.
  4. Create Vulkan with the required extensions and queue capabilities, register the Vulkan handles with ANF, and verify technique support on the selected physical device.
  5. Create the technique and its resources from the requirements returned by ANF.
  6. Dispatch SR or FG from the renderer at the point defined by the technique's rendering contract.
  7. During SR bring-up, use the debug overlay to validate the inputs before tuning image quality.

The integration guide is the technical reference for API use, resource requirements, and synchronization. The sample provides a working implementation to compare against.

Debugging SR integration

The ANF debug overlay visualizes the inputs and temporal behavior used by SR. It can display input color, depth, motion vectors, jitter coverage, warp prediction, and reprojection error directly in the SR output.

Use the debug overlay guide for setup, mode selection, expected results, and artifact diagnosis.

Contributing

Use CONTRIBUTING.md for issue reports, pull requests, sign-off requirements, and documentation conventions. Participation in this repository is governed by the code of conduct.

License

The public header files in public/ are available under the BSD 3-Clause License.

The precompiled SDK binary at lib/arm64-v8a/libanf.so is distributed under the QTI No-Login Binary License.

Contributors

SnapdragonGameStudios/adreno-neural-fusion

C

4

1 commits

updated Sep 22, 2026

See the code

See what people are saying

SourceMessageScoreDate

Super Resolution and Frame Generation on Snapdragon Mobile Platforms

https://github.com/SnapdragonGameStudios/adreno-neural-fusio...

0

Sep 24, 2026

README

Adreno™ Neural Fusion (ANF)

Mobile games are asked to do more with every generation. Players expect sharp images and smooth motion without giving up battery life, while developers have to fit the experience inside a mobile power budget.

Adreno™ Neural Fusion is Qualcomm's neural rendering SDK for mobile games. It gives game teams more room to improve visual quality and displayed frame rate while keeping power use under control. The application chooses its image dimensions, rendering order, and fallback behavior. ANF reports hardware support and Vulkan requirements at runtime so the renderer can configure the correct path for each device.

Adreno™ Neural Fusion rendered sanctuary scene

Contents

Resources

ResourceUse it for
SDK integration guideNative Android Vulkan setup, rendering requirements, technique creation, dispatch, synchronization, validation, and release checks
Debug overlay guideValidating SR color, depth, motion vectors, jitter, warp prediction, and reprojection
Snapdragon™ ProfilerProfiling and analyzing ANF-enabled applications on Snapdragon™ devices
ANF Vulkan sampleA native Vulkan integration built on the Snapdragon™ Game Studios sample framework
ANF plugin for Unreal EngineIntegrating ANF into an Unreal Engine project
ANF plugin for UnityIntegrating ANF into a Unity project

Techniques

Super Resolution

SR reconstructs the scene at the output size selected by the application. The renderer supplies jittered scene color and depth, motion vectors without projection jitter, and the current jitter offset. Compose UI and other screen-space elements after SR so they remain sharp and stay out of temporal history.

See Super Resolution resource flow for the rendering contract and required inputs.

Frame Generation

FG uses consecutive rendered scene frames, depth, and motion vectors to create an intermediate scene frame. Render or composite UI separately for rendered and generated frames.

See Frame Generation resource flow for input, output, and composition requirements.

Requirements

The native SDK integration requires:

  • An Android application built for arm64-v8a.
  • Snapdragon™ 8 Elite Gen 6 and Higher (with broader support planned farther down our platform roadmap).
  • A Vulkan renderer.
  • A fallback path when the requested technique is unavailable.

The SDK integration guide covers initialization, runtime support checks, and the complete rendering contract.

Package contents

PathContents
lib/arm64-v8a/libanf.soAndroid ARM64 ANF runtime library
public/anf.hPublic API entry points and function table
public/anf_types.hCommon ANF types, structures, flags, and enums
public/anf_types_vk.hVulkan-specific ANF types
public/anf_sr.hSR creation and dispatch structures
public/anf_fg.hFG creation and dispatch structures
DEBUG-OVERLAY.mdSR debug overlay documentation
INTEGRATION-GUIDE.mdNative Vulkan integration and rendering contract
LICENSE-BSD-3-Clause.txtBSD 3-Clause terms for the public headers
LICENSE.txtQTI No-Login Binary License terms for libanf.so

Getting started

ANF can be integrated directly into a native Vulkan renderer or through the Unreal Engine and Unity plugins. For an engine integration, follow the instructions in the plugin repositories listed under Resources. The steps below cover the native Vulkan SDK.

  1. Read the SDK integration guide and open the ANF Vulkan sample.
  2. Package libanf.so for arm64-v8a, include LICENSE.txt with any redistribution of the binary, and add the public headers to the native build.
  3. Query technique requirements before creating the Vulkan instance and device.
  4. Create Vulkan with the required extensions and queue capabilities, register the Vulkan handles with ANF, and verify technique support on the selected physical device.
  5. Create the technique and its resources from the requirements returned by ANF.
  6. Dispatch SR or FG from the renderer at the point defined by the technique's rendering contract.
  7. During SR bring-up, use the debug overlay to validate the inputs before tuning image quality.

The integration guide is the technical reference for API use, resource requirements, and synchronization. The sample provides a working implementation to compare against.

Debugging SR integration

The ANF debug overlay visualizes the inputs and temporal behavior used by SR. It can display input color, depth, motion vectors, jitter coverage, warp prediction, and reprojection error directly in the SR output.

Use the debug overlay guide for setup, mode selection, expected results, and artifact diagnosis.

Contributing

Use CONTRIBUTING.md for issue reports, pull requests, sign-off requirements, and documentation conventions. Participation in this repository is governed by the code of conduct.

License

The public header files in public/ are available under the BSD 3-Clause License.

The precompiled SDK binary at lib/arm64-v8a/libanf.so is distributed under the QTI No-Login Binary License.

Contributors

Languages

C

100.0%