NVIDIAGameWorks / RTXGI-DDGI

RTX Global Illumination (RTXGI)
https://developer.nvidia.com/rtxgi
Other
681 stars 55 forks source link

RTXGI NvRTX 4.26.0 patch error #33

Closed DigitoneP closed 3 years ago

DigitoneP commented 3 years ago

I am not sure if I am doing this right, but when I copied the RTXGI-NvRTX4.26.0.patch into my local NvRtx version of Unreal Engine source code and try to apply the patch, I get this corrupt patch error:

C:\UnrealEn426NvRtx\UnrealEngine>git apply RTXGI-NvRTX4.26.0.patch RTXGI-NvRTX4.26.0.patch:7: trailing whitespace. { RTXGI-NvRTX4.26.0.patch:8: trailing whitespace. "FileVersion": 3, RTXGI-NvRTX4.26.0.patch:9: trailing whitespace. "Version": 1, RTXGI-NvRTX4.26.0.patch:10: trailing whitespace. "VersionName": "1.1.23", RTXGI-NvRTX4.26.0.patch:11: trailing whitespace. "FriendlyName": "NVIDIA RTXGI Plugin", error: corrupt patch at line 6571

Thank you for checking into this. Zoltan

acmarrs-nvidia commented 3 years ago

Hi Zoltan, sorry you are having an issue. Below are a few thoughts:

DigitoneP commented 3 years ago

Adam,

Than you for getting back to me on this. I have copied the patch file by its name and pasted by the same name, RTXGI_NvRTX4.26.0 patch:

I have used the Github Desktop to link with RTXGI from https://github.com/NVIDIAGameWorks/RTXGI . No local changes to it:

Opening the RTXGI_NvRTX4.26.0 with notepad, this is how it looks:

Here is the screenshot of the UnrealEgine directory with 4.26.0 patch moved into with the same name:

I have synced the NvRTX from https://github.com/NvRTX/UnrealEngine#nvidia-dlss-unreal-engine-integration or from https://github.com/NvRTX/UnrealEngine , I think they are the same. I have synced it now again - no changes. It appears to be the latest:

I have installed Subtance and Megascan plug-ins as they show in GitHub Desktop as changes. This are the only modification I have. They are in ...\UnrealEngine\Engine\Plugins\Marketplace\Substance directory and in ...\UnrealEngine\Engine\Plugins\MegascansPlugin\ directories: Theser are my two repositories in GitHub Desktop:

Please let me know if any of these help finding the problem. Zoltan On Dec 18 2020, at 7:11 am, Adam Marrs notifications@github.com wrote:

Hi Zoltan, sorry you are having an issue. Below are a few thoughts: Are you sure you copied the correct patch file? I ask because the trailing white space warnings are expected for the 4.25 plugin patches, but not the 4.26 patches. Make sure you have the latest NvRTX code. You'll want to be synced to this commit: NvRTX/UnrealEngine@930c11b (https://github.com/NvRTX/UnrealEngine/commit/930c11be3557f81c0ae8f749b6462a7d3feab4af)

Make sure you don't have local engine modifications that conflict with files the patch modifies. The error you are getting points to IndirectLightRendering.cpp and the patch won't apply if you have modifications that conflict in that file.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub (https://github.com/NVIDIAGameWorks/RTXGI/issues/33#issuecomment-748141617), or unsubscribe (https://github.com/notifications/unsubscribe-auth/AQ47DPK6Q2ABA5EPQSGWZ4DSVNWJPANCNFSM4VBCLPPQ).

acmarrs-nvidia commented 3 years ago

Hmm, I don't see the attachments / screenshots from your last message.

DigitoneP commented 3 years ago

I am sorry, I think Github cuts off the attachments. I try to recreate the response with text only: I have copied the patch file by its name and pasted by the same name - RTXGI_NvRTX4.26.0 patch:: Directory of C:\UE426NvRtx\RTXGI\ue4-plugin

12/17/2020 06:38 PM

. 12/17/2020 06:38 PM .. 12/17/2020 06:38 PM 295,155 RTXGI-NvRTX4.25.3.patch 12/17/2020 06:38 PM 295,155 RTXGI-NvRTX4.25.4.patch 12/17/2020 06:38 PM 295,579 RTXGI-NvRTX4.26.0.patch 12/17/2020 06:38 PM 295,112 RTXGI-UE4.25.3.patch 12/17/2020 06:38 PM 295,112 RTXGI-UE4.25.4.patch 12/17/2020 06:38 PM 295,552 RTXGI-UE4.26.0.patch 6 File(s) 1,771,665 bytes 2 Dir(s) 146,889,543,680 bytes free

I have used the Github Desktop to link with RTXGI from https://github.com/NVIDIAGameWorks/RTXGI . No local changes to it: GitHub Desktop / RTXGI repository - No local change.

Opening the RTXGI_NvRTX4.26.0 with notepad, this is how it looks: diff --git a/Engine/Plugins/Runtime/Nvidia/RTXGI/RTXGI.uplugin b/Engine/Plugins/Runtime/Nvidia/RTXGI/RTXGI.uplugin new file mode 100644 index 00000000000..f820b0beeb7 --- /dev/null +++ b/Engine/Plugins/Runtime/Nvidia/RTXGI/RTXGI.uplugin @@ -0,0 +1,27 @@ +{

... the very end of this file is strangely cut off. The closing bracket is missing for the class:

if RHI_RAYTRACING

-BEGIN_GLOBAL_SHADER_PARAMETER_STRUCT(FRaytracingLightDataPacked, ) +BEGIN_GLOBAL_SHADER_PARAMETER_STRUCT(FRaytracingLightDataPacked, RENDERER_API) SHADER_PARAMETER(uint32, Count) SHADER_PARAMETER(float, IESLightProfileInvCount) SHADER_PARAMETER(uint32, CellCount) diff --git a/Engine/Source/Runtime/Renderer/Private/SystemTextures.h b/Engine/Source/Runtime/Renderer/Private/SystemTextures.h index 493f6ab7f44..5db78d67277 100644 --- a/Engine/Source/Runtime/Renderer/Private/SystemTextures.h +++ b/Engine/Source/Runtime/Renderer/Private/SystemTextures.h @@ -11,7 +11,7 @@ /**

  • Encapsulates the system textures used for scene rendering. */ -class FSystemTextures : public FRenderResource +class RENDERER_API FSystemTextures : public FRenderResource { public: FSystemTextures()

Can you please very that the RTXGI github repository holds the correct RTXGI-NvRTX4.26.0.patch file? If you think it should not have trailing white space warnings, then this might be an incorrect version on github. I have copied the same file into C:\UE426NvRtx\UnrealEngine without any local change. I have synced the NvRTX from https://github.com/NvRTX/UnrealEngine . It appears to be the latest version: GitHub Desktop menu / Repository / View on GitHub takes me to the following website: https://github.com/NvRTX/UnrealEngine I have installed Subtance and Megascan plug-ins as they show in GitHub Desktop as changes. Thes are the only modifications I have. They are in ...\UnrealEngine\Engine\Plugins\Marketplace\Substance directory and in ...\UnrealEngine\Engine\Plugins\MegascansPlugin\ directories. Zoltan

On Dec 18 2020, at 1:10 pm, Adam Marrs notifications@github.com wrote:

Hmm, I don't see the attachments / screenshots from your last message. — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub (https://github.com/NVIDIAGameWorks/RTXGI/issues/33#issuecomment-748320963), or unsubscribe (https://github.com/notifications/unsubscribe-auth/AQ47DPJYE5XM3VWXQGTJ7MDSVPANBANCNFSM4VBCLPPQ).

acmarrs-nvidia commented 3 years ago

Can you please very that the RTXGI github repository holds the correct RTXGI-NvRTX4.26.0.patch file?

Verified, it is the correct file (bit for bit). A second person has successfully applied the patch to NvRTX 4.26 to double check.

... the very end of this file is strangely cut off. The closing bracket is missing for the class:

This is a patch file, so that's not a problem

A few more thoughts:

DigitoneP commented 3 years ago

Than you for verifying. This is how I placed the patch file. It is at the same location as the README.md and GenerateProjectFiles.bat: Directory of C:\UE426NvRtx\UnrealEngine

12/18/2020 03:41 AM

. 12/18/2020 03:41 AM .. 12/17/2020 01:03 PM 575 .editorconfig 12/17/2020 01:03 PM 523 .gitattributes 12/17/2020 01:03 PM 6,560 .gitignore 12/17/2020 01:33 PM 72 .tgitconfig 12/17/2020 01:38 PM .vs 12/17/2020 01:31 PM 456 cpp.hint 12/17/2020 02:31 PM Engine 12/17/2020 01:34 PM FeaturePacks 12/17/2020 01:04 PM 660 GenerateProjectFiles.bat 12/17/2020 01:04 PM 238 GenerateProjectFiles.command 12/17/2020 01:04 PM 766 GenerateProjectFiles.sh 12/17/2020 01:04 PM 196 LICENSE.md 12/17/2020 01:04 PM 30,446 README.md 12/17/2020 06:38 PM 295,579 RTXGI-NvRTX4.26.0.patch 12/17/2020 01:04 PM Samples 12/17/2020 01:04 PM 1,306 Setup.bat 12/17/2020 01:04 PM 205 Setup.command 12/17/2020 01:04 PM 1,742 Setup.sh 12/17/2020 01:33 PM Templates 12/17/2020 01:38 PM 1,139,918 UE4.sln 12/17/2020 01:04 PM 278 UE4Games.uprojectdirs 16 File(s) 1,479,520 bytes 7 Dir(s) 147,171,479,552 bytes free

Does the size 295,579 look good to you? I just want to make sure that we talk about the same patch, the RTXGI-NvRTX4.26.0.patch for the NvRtx version of Unreal, not the RTXGI-UE4.26.0.patch for the original Unreal.

I ran the git apply -check and get the same error but no warming: C:\UE426NvRtx\UnrealEngine>git apply --check RTXGI-NvRTX4.26.0.patch error: corrupt patch at line 6571

Should we try to resolve this corruption error before concerning of the Substance and Megascan plugin? Another question. The GitHub Desktop shows a warning for UnrealEngine repository: "You don't have write access to UnrealEngine. Want to create a fork?" Obviously I do not have and do not need write permission for the NvRTX / UnrealEngone repository. All my changes should be local without committing to any change into the repository. I was able to copy in the plugins directory without any problem. Can it be that the RTXGI-NvRTX4.26.0.patch is having problem with making local changes to some of the UnrealEngine files locally? Do I need to fork it for local changes? Zoltan On Dec 18 2020, at 2:09 pm, Adam Marrs notifications@github.com wrote:

Can you please very that the RTXGI github repository holds the correct RTXGI-NvRTX4.26.0.patch file? Verified, it is the correct file (bit for bit). A second person has successfully applied the patch to NvRTX 4.26 to double check.

... the very end of this file is strangely cut off. The closing bracket is missing for the class: This is a patch file, so that's not a problem

A few more thoughts: Make sure the patch file is copied to the root of the engine source (so, the same place as README.md and GenerateProjectFiles.bat) Do you receive any warnings or errors when running git apply --check RTXGI-NvRTX4.26.0.patch ?

While the two plugins you mentioned shouldn't be a problem, I would try applying the RTXGI patch with a completely fresh checkout of NvRTX without anything else installed.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub (https://github.com/NVIDIAGameWorks/RTXGI/issues/33#issuecomment-748343711), or unsubscribe (https://github.com/notifications/unsubscribe-auth/AQ47DPIB2B75ISVJD3ES54DSVPHKLANCNFSM4VBCLPPQ).

acmarrs-nvidia commented 3 years ago

Ah, I see what is happening.

The patch file I have locally is not 295,579 bytes, it is 288,980 bytes (i.e. smaller). In the browser, if you navigate to the patch file, view raw, and download it you will get the same 288,890 byte patch file I have and am using. This file will work without problems when you apply it.

The file that is delivered to you when you sync through your Git Desktop client is 295,579 bytes. This file is larger because GitHub has modified the file's line endings. This modification is what is causing the patch file to fail when you run the command to apply it.

As a workaround for now, download the raw file from the browser (ensuring to keep the file extension .patch), and apply that patch file. In the meantime, I'll fix the root cause of this.

DigitoneP commented 3 years ago

Awesome. It worked. Thank you so much! When I saved the page as a text file I got the desired size 288,980. The git apply --check RTXGI-NvRTX4.26.0.patch and the git apply RTXGI-NvRTX4.26.0.patch commands ran without error and without warnings.

After running the patch the build failed with some kind of memory and paging error. I got this with the previous release as well, but a reboot and build again fixed this problem.

I was able to see and activate Plugins->Lighting->NVIDIA RTXGI Plugin, turn on Raytracing and now I can see DDGIVolume as well and I also have the DLSS option. Cool. I was trying it with the Meerkat sample scene and I got a decent frame rate improvement.

Zoltan

On Dec 18 2020, at 3:20 pm, Adam Marrs notifications@github.com wrote:

Ah, I see what is happening. The patch file I have locally is not 295,579 bytes, it is 288,980 bytes (i.e. smaller). In the browser, if you navigate to the patch file, view raw (https://raw.githubusercontent.com/NVIDIAGameWorks/RTXGI/main/ue4-plugin/RTXGI-NvRTX4.26.0.patch?token=AB3MUVGOABTQYEQ44D3FZ6C74ZYSM), and download it you will get the same 288,890 byte patch file I have and am using. This file will work without problems when you apply it. The file that is delivered to you when you sync through your Git Desktop client is 295,579 bytes. This file is larger because GitHub has modified the file's line endings. This modification is what is causing the patch file to fail when you run the command to apply it. As a workaround for now, download the raw file from the browser (https://raw.githubusercontent.com/NVIDIAGameWorks/RTXGI/main/ue4-plugin/RTXGI-NvRTX4.26.0.patch?token=AB3MUVGOABTQYEQ44D3FZ6C74ZYSM) (ensuring to keep the file extension .patch), and apply that patch file. In the meantime, I'll fix the root cause of this. — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub (https://github.com/NVIDIAGameWorks/RTXGI/issues/33#issuecomment-748369339), or unsubscribe (https://github.com/notifications/unsubscribe-auth/AQ47DPOGA2AX5VKY6PK65UTSVPPU7ANCNFSM4VBCLPPQ).

acmarrs-nvidia commented 3 years ago

Excellent, glad to hear things are working for you now!

I've pushed updates that include a fix for the line endings problem. You should be able to sync the patch file instead of downloading it from the browser now. See this commit*.

*updated based on feedback from @urvenicebitxh

urvenicebitxh commented 3 years ago

I have downloaded the latest commit but I am getting the "error: corrupt patch at line 6571" when checking to apply the NvRTX4.26.0 patch, have not tried applying yet Any ideas?

acmarrs-nvidia commented 3 years ago

Hi @urvenicebitxh - ah, thanks for catching this error!

Part of the change to fix the line endings for NvRTX 4.26.0 got squashed by the copyright updates. I've updated the NvRTX 4.26.0 patch file (again) to have all the changes and can't reproduce the error now. The patch file should be 295,580 bytes in size.

Let me know if this doesn't solve the problem for you. Sorry about that.

B-vR commented 3 years ago

Hi,

I've downloaded the new file. With the 295,580 bytes in size but I still get the can't apply patch errors.

Please see attached https://drive.google.com/file/d/1Y6OS5jj4JMBxEzMnwHfMfhsBOliOEqFz/view?usp=sharing

Thank you,

Andrei

acmarrs-nvidia commented 3 years ago

Hi @B-vR - this appears to be a different problem, so I've moved this to a new GitHub Issue (#35)

acmarrs-nvidia commented 3 years ago

The line endings problem that this issue covers is now documented in the UE4 Getting Started Guide.

Closing the issue.

NazzarenoGiannelli commented 3 years ago

It doesn't matter what I do, the patch doesn't want to apply correctly for me. I followed the wiki, tried with the dlss-rtxgi engine version downloaded as a zip or cloned from git with Windows-style checkout. Fort the patch itself I tried downloading it as a zip, cloning it with Windows-style checkout, or cloning it with Checkout as-is. None of those combinations worked. Best case scenario (see below), the --check is passed, but when I actually apply the patch I get trailing whitespace errors...and from there it doesn't matter what I try, I always get patch does not apply errors. I have a November build running properly, so I can keep using it, but it's weird I cannot update to the latest version.

S:\Repos\UE_RTXGI>git apply --check RTXGI-NvRTX4.26.0.patch

S:\Repos\UE_RTXGI>git apply RTXGI-NvRTX4.26.0.patch
RTXGI-NvRTX4.26.0.patch:7: trailing whitespace. { RTXGI-NvRTX4.26.0.patch:8: trailing whitespace. "FileVersion": 3, RTXGI-NvRTX4.26.0.patch:9: trailing whitespace. "Version": 1, RTXGI-NvRTX4.26.0.patch:10: trailing whitespace. "VersionName": "1.1.23", RTXGI-NvRTX4.26.0.patch:11: trailing whitespace. "FriendlyName": "NVIDIA RTXGI Plugin",
warning: squelched 6259 whitespace errors warning: 6264 lines add whitespace errors.

acmarrs-nvidia commented 3 years ago

HI @NazzarenoGiannelli - I'm sorry you are having issues with the release. The trailing whitespace errors can safely be ignored. If the --check cmd passes and only trailing whitespace errors occur during the following apply command, the plugin is installed and should work properly.

Are you saying the --check command passes (no output), but the following apply command outputs "patch does not apply" errors?

NazzarenoGiannelli commented 3 years ago

Hi - Yes, the check is successfull with no outputs and after actually applying the patch I get the whitespace errors. If I can ignore them I will definitely try to build the engine regardless of those errors. Thanks