aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md99
1 files changed, 82 insertions, 17 deletions
diff --git a/README.md b/README.md
index 411ccef..19e6371 100644
--- a/README.md
+++ b/README.md
@@ -1,17 +1,82 @@
-# NVIDIA GeForce Experience SDK #
-
-* Version: 1.1.173.5d889305
-* GeForce Experience minimum version: 3.8
-* See [Changelog](./CHANGELOG.md)
-
-## At a Glance
-
-The GeForce SDK (GfeSDK) is a means for games to integrate with ShadowPlay Highlights allowing them to capture videos
-and screenshots and present the resulting highlights back to users for viewing and sharing. GfeSDK will add other features
-over time that benefit from games and applications working in concert with GFE functionality.
-
-![Shadowplay Highlights](./doc/html/gfesdk_highlights.png)
-
-## Development Guide
-
-See the documentation [here](./doc/index.html)
+# NVIDIA GeForce Experience SDK #
+
+* See [Changelog](./CHANGELOG.md)
+
+## At a Glance
+
+The GeForce SDK (GfeSDK) is a means for games to integrate with ShadowPlay Highlights allowing them to capture videos
+and screenshots and present the resulting highlights back to users for viewing and sharing. GfeSDK will add other features
+over time that benefit from games and applications working in concert with GFE functionality.
+
+## Shadowplay Highlights
+
+* [Highlights Integration FAQ](./doc/NVIDIA_ShadowPlay_Highlights_FAQ.md)
+
+![Shadowplay Highlights](./doc/img/gfesdk_highlights.png)
+
+## Development Guide
+
+### Software Stack
+
+![Software Stack](./doc/img/gfesdk_block.png)
+
+An application integrates with the GfeSDK via either a game engine plugin (UE4, Unity), C++ interface, or C interface. This integration, via the SDK, calls a compatible GFE 3.0 release.
+
+The developer (or associated publisher) distributes the application (including associated SDK libraries).
+
+NVIDIA distributes a GfeSDK package coupled with GfeSDK-compatible GFE releases. GFE maintains backwards SDK-compatibility; games integrated with older SDKs work with newer GFE releases.
+
+### GfeSDK Package
+
+The distribution will look like the following
+```
+.
++-- README.md
++-- LICENSE
++-- doc
+| +-- index.html # Points to the deeper index.html
+| +-- html
+| | +-- index.html
+| | ...
++-- include
+| +-- gfesdk
+| | +-- bindings
+| | | +-- cpp # C++ bindings that sit on top of C API
+| | +-- isdk.h
+| | +-- highlights
+| | | +-- ihighlights.h
+| | ...
++-- lib
+| +-- win32
+| | +-- GfeSDK.lib # x86 Import library for linking
+| +-- win64
+| | +-- GfeSDK.lib # x64 Import library for linking
++-- redist
+| +-- assets
+| | +-- img
+| | | +-- xxxx.png # Images the game may redistribute
+| +-- win32
+| | +-- GfeSDK.dll # x86 DLL to be shipped with the game
+| +-- win64
+| | +-- GfeSDK.dll # x64 DLL to be shipped with the game
++-- samples
+| +-- DX_APIUsage
+| | +-- DX_APIUsage.sln # Example directX project that demonstrates GfeSDK API calls
+| | ...
+| +-- bin
+| | +-- DX_APIUsage
+| | | +-- win32
+| | | | +-- GfeSDKDemo_DX.exe # Executable DX_APIUsage demo
+| | | | ...
+```
+
+### Compiling And Linking
+
+To compile, add the ./include (not the ./include/gfesdk) directory to the compiler's list of includes. The import libraries
+are found in the ./lib folder and can be used to link the symbols into the game's executable. The proper GfeSDK.dll file
+will need to be distributed with the game in a place that the game can find it.
+
+The C++ bindings are currently distributed in header-only form to avoid ABI incompatibilities between different compiler
+versions. The linking and include steps are the same.
+
+See the technical Doxygen documentation by downloading the packaging and opening doc/index.html (Not viewable by GitHub)