Skip to content

Commit 3e78b8f

Browse files
committed
Streamline SDK 2.8.0 Release
1 parent d76b1e1 commit 3e78b8f

69 files changed

Lines changed: 2569 additions & 1339 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

CMakeLists.txt

Lines changed: 31 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,40 @@
2020
# SOFTWARE.
2121
#
2222

23+
# We've got platform arch in some of our paths. CMAKE_GENERATOR_PLATFORM/CMAKE_VS_PLATFORM_NAME contain a useful
24+
# value when using Visual Studio generator (cmake -G), but not when using e.g. ninja
25+
if(STREAMLINE_TARGET_ARCH)
26+
set(STREAMLINE_TARGET_ARCH "${STREAMLINE_TARGET_ARCH}")
27+
elseif(CMAKE_GENERATOR_PLATFORM)
28+
set(STREAMLINE_TARGET_ARCH "${CMAKE_GENERATOR_PLATFORM}")
29+
else()
30+
set(STREAMLINE_TARGET_ARCH "x64")
31+
message(WARNING "STREAMLINE_TARGET_ARCH defaulting to ${STREAMLINE_TARGET_ARCH}")
32+
endif()
33+
2334
# Variables
2435
set(STREAMLINE_SDK_ROOT "${CMAKE_CURRENT_SOURCE_DIR}" CACHE STRING "SL SDK Root Directory")
36+
set(STREAMLINE_SDK_BIN "${STREAMLINE_SDK_ROOT}/bin/${STREAMLINE_TARGET_ARCH}")
37+
set(STREAMLINE_SDK_LIB "${STREAMLINE_SDK_ROOT}/lib/${STREAMLINE_TARGET_ARCH}")
2538
find_path(STREAMLINE_INCLUDE_DIR sl.h HINTS "${STREAMLINE_SDK_ROOT}/include" NO_CACHE)
26-
find_path(STREAMLINE_PLUGIN_DLL_DIR sl.interposer.dll HINTS "${STREAMLINE_SDK_ROOT}/bin/${CMAKE_VS_PLATFORM_NAME}" "${STREAMLINE_SDK_ROOT}/bin/${CMAKE_VS_PLATFORM_NAME}/development" NO_CACHE)
27-
find_path(STREAMLINE_PLUGIN_JSON_DIR sl.interposer.json HINTS "${STREAMLINE_SDK_ROOT}/scripts" "${STREAMLINE_SDK_ROOT}/bin/${CMAKE_VS_PLATFORM_NAME}" NO_CACHE)
28-
find_path(STREAMLINE_SUPPORT_DLL_DIR nvngx_dlss.dll HINTS "${STREAMLINE_SDK_ROOT}/bin/${CMAKE_VS_PLATFORM_NAME}" NO_CACHE)
29-
find_library(STREAMLINE_INTERPOSER_LIB sl.interposer HINTS "${STREAMLINE_SDK_ROOT}/lib/${CMAKE_VS_PLATFORM_NAME}" NO_CACHE)
30-
find_file(STREAMLINE_INTERPOSER_DLL sl.interposer.dll HINTS "${STREAMLINE_SDK_ROOT}/bin/${CMAKE_VS_PLATFORM_NAME}" "${STREAMLINE_SDK_ROOT}/bin/${CMAKE_VS_PLATFORM_NAME}/development" NO_CACHE)
39+
find_path(STREAMLINE_PLUGIN_DLL_DIR sl.interposer.dll HINTS
40+
"${STREAMLINE_SDK_BIN}"
41+
"${STREAMLINE_SDK_BIN}/development"
42+
NO_CACHE)
43+
find_path(STREAMLINE_PLUGIN_JSON_DIR sl.interposer.json HINTS
44+
"${STREAMLINE_SDK_ROOT}/scripts"
45+
"${STREAMLINE_SDK_BIN}"
46+
NO_CACHE)
47+
find_path(STREAMLINE_SUPPORT_DLL_DIR nvngx_dlss.dll HINTS
48+
"${STREAMLINE_SDK_BIN}"
49+
NO_CACHE)
50+
find_library(STREAMLINE_INTERPOSER_LIB sl.interposer HINTS
51+
"${STREAMLINE_SDK_LIB}"
52+
NO_CACHE)
53+
find_file(STREAMLINE_INTERPOSER_DLL sl.interposer.dll HINTS
54+
"${STREAMLINE_SDK_BIN}"
55+
"${STREAMLINE_SDK_BIN}/development"
56+
NO_CACHE)
3157
set(STREAMLINE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}" CACHE STRING "Streamline Install Dir")
3258

3359
# Sort Features

README.md

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,13 @@
1-
# Streamline (SL) - Version 2.7.32
1+
# Streamline (SL) - Version 2.8.0
22

3-
Streamline is an open-sourced cross-IHV solution that simplifies integration of the latest NVIDIA and other independent hardware vendors super resolution technologies into applications and games. This framework allows developers to easily implement one single integration and enable multiple super-resolution technologies and other graphics effects supported by the hardware vendor.
3+
Streamline is an open-sourced cross-IHV solution that simplifies integration of the latest NVIDIA and other independent hardware vendors' super resolution technologies into applications and games. This framework allows developers to easily implement one single integration and enable multiple super-resolution technologies and other graphics effects supported by the hardware vendor.
44

55
This repo contains the SDK for integrating Streamline into your application.
66

77
For a high level overview, see the [NVIDIA Developer Streamline page](https://developer.nvidia.com/rtx/streamline)
88

99
As of SL 2.0.0, it is now possible to recompile all of SL from source, with the exception of the DLSS-G plugin. The DLSS-G plugin is provided as prebuilt DLLs only. We also provide prebuilt DLLs (signed) for all other plugins that have source. Most application developers will never need to rebuild SL themselves, especially for shipping; all of the pieces needed to develop, debug and ship an application that integrates SL and its features are provided in the pre-existing directories `bin/`, `include/`, and `lib/`. Compiling from source is purely optional and likely of interest to a subset of SL application developers. For developers wishing to build SL from source, see the following sections.
1010

11-
As of SL 2.7.32, binary artifacts (DLSS feature DLLs and Streamline DLLs) are not in the GitHub repository. In order to obtain these artifacts, please download the appropriate release zip from the [GitHub releases page](https://github.com/NVIDIA-RTX/Streamline/releases).
12-
1311
------
1412

1513
## Prerequisites
@@ -22,7 +20,8 @@ As of SL 2.7.32, binary artifacts (DLSS feature DLLs and Streamline DLLs) are no
2220

2321
- Win10 20H1 (version 2004 - 10.0.19041) or newer
2422
- Install latest graphics driver (**if using NVIDIA GPU it MUST be 512.15 or newer**)
25-
- Install VS Code or VS2017/VS2019 with [SDK 10.0.19041+](https://go.microsoft.com/fwlink/?linkid=2120843)
23+
- Install VS Code or VS2017/VS2019/VS2022 with [SDK 10.0.19041+](https://go.microsoft.com/fwlink/?linkid=2120843)
24+
- NOTE: VS2017 support is deprecated and will be removed in SL 2.9
2625
- Install "git".
2726
- Clone your fork to a local hard drive, make sure to use a NTFS drive on Windows (SL uses symbolic links)
2827

@@ -129,5 +128,4 @@ A sample Streamline plugin source code is located [here](source/plugins/sl.templ
129128

130129
## Sample App and Source
131130

132-
A sample application using Streamline may be found in [this git repo](https://github.com/NVIDIAGameWorks/Streamline_Sample)
133-
131+
A sample application using Streamline may be found in [this git repo](https://github.com/NVIDIA-RTX/Streamline_Sample)

build.bat

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,5 +103,6 @@ if exist .\_project\vs2022\streamline.sln (
103103
) else if exist .\_project\vs2019\streamline.sln (
104104
msbuild .\_project\vs2019\streamline.sln /m /t:%bld% /property:Configuration=%cfg% /property:Platform=x64
105105
) else (
106+
echo WARNING vs2017 is deprecated and will be removed in SL 2.9
106107
msbuild .\_project\vs2017\streamline.sln /m /t:%bld% /property:Configuration=%cfg% /property:Platform=x64
107108
)

changelog.txt

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,46 @@
1+
======== Release 2.8.0 Entries ========
2+
3+
* Deprecated support for the following `sl::DLSSPreset` values:
4+
- `sl::DLSSPreset::ePresetA`
5+
- `sl::DLSSPreset::ePresetB`
6+
- `sl::DLSSPreset::ePresetC`
7+
- `sl::DLSSPreset::ePresetD`
8+
- `sl::DLSSPreset::ePresetE`
9+
10+
* Deprecated support for building with Visual Studio 2017.
11+
12+
* Fixed a bug in `sl.dlss_g` which allowed applications to pass in an
13+
invalid `sl::DLSSGOptions::numFramesToGenerate` value of zero, resulting
14+
in the presentation of stale frame data when DLSS-FG was enabled.
15+
16+
* Fixed a bug in `sl.common` which could lead to graphical corruption and
17+
instability in when used across different threads.
18+
19+
* Disabled loading of plugins via OTA Updates on non-production builds.
20+
21+
* Improved performance of the following functions:
22+
- `slAllocateResources()`
23+
- `slEvaluateFeature()`
24+
- `slFreeResources()`
25+
- `slGetFeatureFunction()`
26+
- `slIsFeatureLoaded()`
27+
- `slSetConstants()`
28+
- `slSetTag()`
29+
- `slSetTagForFrame()`
30+
31+
* Added debug event markers for the following APIs:
32+
- `slEvaluateFeature()`
33+
- `slSetTag()`
34+
- `slSetTagForFrame()`
35+
36+
* Enabled debug names in all build configurations.
37+
38+
* Updated the FrameView SDK installer bundled with Streamline.
39+
40+
* Added documentation for frame pacing behavior. See section 14.1
41+
"UNDERSTANDING FRAME PACING BEHAVIOR" in `ProgrammingGuideDLSS_G.md` for
42+
more information.
43+
144
======== Release 2.7.32 Entries ========
245

346
* Removed the following directories from the repository. Release packages

docs/APIChangesAndImprovements.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,4 +118,3 @@ Streamline 2.0 **includes all the above mentioned v1.5 changes with the followin
118118

119119
* Removed `slGetHook*` API
120120
* New API `slGetNativeInterface` in combination with `slUpgradeIntercace` is now used to significantly simplify manual hooking.
121-

docs/DLSS Programming Guide.pdf

0 Bytes
Binary file not shown.

docs/DLSS-RR Integration Guide.pdf

0 Bytes
Binary file not shown.

docs/Debugging - JSON Configs (Plugin Configs).md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,4 +161,3 @@ Place the `sl.dlss_g.json` file (located in `./scripts/`) in the game's working
161161
"showDebugText" : true
162162
}
163163
```
164-

docs/Debugging - SL ImGUI (Realtime Data Inspection).md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,4 +72,3 @@ if (ui)
7272
}
7373
#endif
7474
```
75-

docs/ProgrammingGuide.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
Streamline - SL
33
=======================
44

5-
Version 2.7.32
5+
Version 2.8.0
66
=======
77

88
1 SETTING UP
@@ -133,7 +133,7 @@ Here is the typical lifecycle for SL features:
133133
* After device creation, any calls to SL will succeed only if the feature is FULLY functional on that device
134134
* This means that the set of features that return true from `slIsFeatureSupported` AFTER device creation can be smaller (but not larger) than the set that returned true from `slIsFeatureSupported` after slInit, but before device creation
135135
* And thus, at this point, any SL method can be used safely since all required and supported features are initialized
136-
* In addition, at this point it is possible to [explicitly allocate/free resources used by feature(s)](#27-explicit-resource-allocation-and-de-allocation)
136+
* In addition, at this point it is possible to [explicitly allocate/free resources used by feature(s)](#28-explicit-resource-allocation-and-de-allocation)
137137

138138
> **IMPORTANT:**
139139
> `slInit` must NOT be called within DLLMain entry point in your application because that can cause a deadlock.
@@ -1541,4 +1541,3 @@ If an exception is thrown while executing SL code mini-dump will be written to `
15411541
------------------------------------------------
15421542

15431543
For any SL related questions, please email StreamlineSupport@nvidia.com.
1544-

0 commit comments

Comments
 (0)