{"id":19248558,"url":"https://github.com/nvidiagameworks/geforcenow-sdk","last_synced_at":"2025-04-04T19:15:22.691Z","repository":{"id":38348246,"uuid":"188256557","full_name":"NVIDIAGameWorks/GeForceNOW-SDK","owner":"NVIDIAGameWorks","description":"This is the home of the SDK for GeForce NOW","archived":false,"fork":false,"pushed_at":"2024-12-17T04:15:46.000Z","size":149573,"stargazers_count":103,"open_issues_count":1,"forks_count":69,"subscribers_count":26,"default_branch":"master","last_synced_at":"2025-03-28T18:16:32.502Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NVIDIAGameWorks.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-05-23T15:03:55.000Z","updated_at":"2025-02-17T09:49:29.000Z","dependencies_parsed_at":"2024-12-22T04:11:10.014Z","dependency_job_id":null,"html_url":"https://github.com/NVIDIAGameWorks/GeForceNOW-SDK","commit_stats":null,"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NVIDIAGameWorks%2FGeForceNOW-SDK","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NVIDIAGameWorks%2FGeForceNOW-SDK/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NVIDIAGameWorks%2FGeForceNOW-SDK/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NVIDIAGameWorks%2FGeForceNOW-SDK/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NVIDIAGameWorks","download_url":"https://codeload.github.com/NVIDIAGameWorks/GeForceNOW-SDK/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247234923,"owners_count":20905854,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-09T18:08:48.385Z","updated_at":"2025-04-04T19:15:22.669Z","avatar_url":"https://github.com/NVIDIAGameWorks.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# NVIDIA GeForce NOW SDK Release 2.5\n\n## At a Glance\n\nThe GeForce NOW SDK (GFN SDK) is a means for game developers and publishers to directly integrate with GeForce NOW, NVIDIA's Cloud Gaming Service, which allows users to experience GeForce gaming anywhere and enables publishers and game developers to take advantage of high-performance rendering through NVIDIA's top-notch DirectX and Vulkan drivers on both Windows and Linux platforms.\n\nThe GFN SDK provides an ever-growing set of APIs that allows GFN partners to allow their games and applications to have a more seamless integration with GeForce NOW features. These features include abilities for games and applications to:\n* Run on a wide range of devices without needing to port to each device and operating system.\n* Know when they are running inside the secure GeForce NOW environment to allow the bypass of certain system checks such as Display Driver versioning or application binary verification.\n* Obtain information about the user's client system, including touch support, to tailor the user's experience to their environment.\n* Allow GFN sessions to start from a host application or [GFN Client Deep Link](./doc/SDK-GFN-DEEP-LINKING.pdf), providing streaming of games and applications without needing to build a cloud gaming environment.\n* Allow customers to get into games and applications faster with GFN's Pre-Warm features.\n\n\nThe GFN SDK is ever-evolving to provide easy integration of GeForce NOW features into publisher applications and games, as well as more efficient way to integrate games into the GeForce NOW ecosystem.\n\nPlease refer to the [SDK GFN Primer](./doc/SDK-GFN-PRIMER.pdf) for a more detailed overview of the features, and to get up and running quickly with the APIs, refer to the [SDK Quick Start Guide](./doc/SDK-GFN-QUICK-START-GUIDE.pdf) for common integration scenarios, and code snippets to use for APIs.\n\n### What's New in This Release\n\n* Added `gfnCloudCheck` API support for Linux.\n* Various bug fixes and improvements.\n\n## GeForce NOW Developer Portal\n\n* Please [contact us](mailto:gdp-queries@nvidia.com) to register your organization or game with the GeForce NOW Developer Portal.\n\n## Development Guide\n\n### Software Stack\n\n![Software Stack](./doc/img/software_stack.png)\n\nEach feature has different integration points. Some features define REST Web APIs, while others integrate into the game or publisher application with native C interfaces. Refer to documentation for each feature in the doc folder.\n\nSome features require a compatible version of GeForce NOW to be installed on the client system. The integrated GFN SDK components are designed to take care of downloading and installing GeForce NOW client when needed.\n\n### GeForce NOW SDK Package\n\nThe distribution is laid out as below:\n```\n.\n├─── CMakeLists.txt\n├─── CMakePresets.json\n├─── LICENSE\n├─── LICENSE.samplelauncher.thirdparty\n├─── LICENSE.thirdparty\n├─── README.md\n|\n├─── doc\n|   │   SDK-GFN-ACCOUNT-LINKING-SSO-GUIDE.pdf\n|   │   SDK-GFN-CLOUD-API.pdf\n|   │   SDK-GFN-DEEP-LINKING.pdf\n|   │   SDK-GFN-IP-API-GUIDE.pdf\n|   │   SDK-GFN-MOBILE-TOUCH-INTEGRATION-GUIDE.pdf\n|   │   SDK-GFN-PRIMER.pdf\n|   │   SDK-GFN-QUICK-START-GUIDE.pdf\n|   │   SDK-GFN-UNREALENGINE-INTEGRATION-GUIDE.pdf\n|   └───SDK-GFN-RUNTIME\n|       └───index.html\n|\n├───include\n│       GfnRuntimeSdk_CAPI.h\n│       GfnRuntimeSdk_Wrapper.c\n│       GfnRuntimeSdk_Wrapper.h\n│       GfnSdk.h\n│       GfnSdk_SecureLoadLibrary.c\n│       GfnSdk_SecureLoadLibrary.h\n│\n├───linux\n│   └───x64\n│           GfnRuntimeSdk.so\n├───win\n│   ├───x64\n│   │       GfnRuntimeSdk.dll\n│   │\n│   └───x86\n│           GfnRuntimeSdk.dll\n│\n└───samples\n    |   README.md\n    ├───CGameAPISample\n    ├───CloudCheckAPI\n    ├───Common\n    ├───CubeSample\n    ├───OpenClientBrowser\n    ├───PartnerDataAPI\n    ├───PreWarmSample\n    ├───SampleLauncher\n    └───SDKDllDirectRefSample\n\n```\n\n## SDK Build Overview\n\nThe components that are needed to use the GeForce NOW SDK in your application\ncome pre-built, and do not require any additional build steps to use in your\nproject(s). Refer to the SDK Primer and Quick Start guides located in the ./doc\nfolder for more info on integrating the SDK and calling the APIs in your \napplications.\n\nIf you wish to build the samples included in this SDK distribution to use as\nexamples on how to call the GeForce NOW SDK's APIs on either Windows or Linux,\nyou will first need cmake 3.27 or greater installed to configure the makefiles.\nIf cmake 3.27 or greater is not installed, refer to https://cmake.org for \ninstallation information for your Operating System.\n\nThe Operating Systems supported by the GeForce NOW SDK APIs and samples are:\n* Windows x64\n* Windows x86\n* Linux x64, specifically, Ubuntu 22 or greater\n\n### Building On Windows\n\nThere are two methods to build for Windows:\n* Command Line\n* Visual Studio's cmake support \n\n#### Command Line Method\n\nTo build from the command line the simplest way, you will need a build \nsystem manager such as ninja-builder (https://ninja-build.org/) installed and \navailable via your PATH environment variable. If you do not have it installed,\nfollow the instructions on the website.\n\nYou will also need Visual Studio installed, along with the Visual Studio\nDeveloper Comand Prompt tools installed. Finally, you will need to have \nVisual Studios command line build tools available as part of your PATH. \n\nOnce these tools are configured, open a command prompt to the root of the\nGeForce NOW SDK distribution package, and use cmake to configure the makefiles\nvia one of the presets:\n\n* -x64-windows-debug\n* -x64-windows-release\n* -x86-windows-debug\n* -x86-windows-release\n\nExample:\n```\ncmake --preset x64-windows-release\n```\n\nThis will allow cmake to configure the makefiles and use ninja to find the \ncompiler tools to build the samples. Once done, there will be an \"_out\" folder\nat the root of the distribution, with a subfolder named as the present used.\nExample:\n\n./_out/x64-windows-debug/\n\nYou can change directory to this subfolder and to the subfolder for the sample\nyou wish to run, and execute the sample's executable binary from there.\n\n#### Visual Studio CMake Method\n\nIf you wish to configure the project and build from Visual Studio, then you\nwill need to have Visual Studio's cmake support tools installed. If you are\nnot familiar with this feature, please see this link:\nhttps://learn.microsoft.com/en-us/cpp/build/cmake-projects-in-visual-studio\n\nPlease make sure to have the support for cmake 3.19 or greater installed.\n\nOnce cmake 3.19 or greater support is available in your version of Visual\nStudio, then follow these steps:\n1. Open Visual Studio.\n2. Select the \"Open Folder\" option.\n3. Point Visual Studio to the root folder of the GeForce NOW SDK distribution.\n(This is the folder that containts CMakeLists.txt and this README text file.)\n\nOnce opened, Visual Studio's cmake support will automatically configure the \nbuild based on the makefiles in the distribution, allowing you to build all or\nindividual samples.\n\n### Building for Linux\n\nIn addition to cmake 3.27 or greater, you will also need to have\nninja-build (https://ninja-build.org/) installed. If you do not have it\ninstalled, follow the instructions on the website.\n\nOnce installed, open a command prompt to the root of the GeForce NOW SDK\ndistribution package, and use cmake to configure the makefiles for Linux for\none of the Linux presets:\n\n* -x64-linux-debug\n* -x64-linux-release\n\nExample:\n```\ncmake --preset x64-linux-release\n```\nThis will configure the makefiles for the specified preset, and create the\n\"_out\" folder at the root of the distribution folder structure, with a\nsubfolder with the same  name as the preset used. To build the samples, run cmake\nagain with the same preset with the --build flag.\n```\ncmake --build --preset x64-linux-release\n```\nThis will produce the build in a subfolder corresponding to the name of the\nsample under \"/samples\" in the current directory. You can then run the sample\nfrom the subfolder. Example:\n\n./_out/x64-linux-release/samples/SampleLauncher/SampleLauncher\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnvidiagameworks%2Fgeforcenow-sdk","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnvidiagameworks%2Fgeforcenow-sdk","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnvidiagameworks%2Fgeforcenow-sdk/lists"}