Working with trueSKY from GitHub

1: Access to Repository

  1. Make sure you have created a Simul account. If not, register an account now.

  2. On your Account Page, there is a GitHub Username section. Input your GitHub Username and select Request Access. This needs to be the same username connected to your Unreal Engine account at https://www.unrealengine.com/account/connected

  3. You will receive an email from github.com with an invitation to join the Simul UnrealEngine group. Click the link in the email and accept the invitation.

  4. You should now have access to our Unreal Repo at https://github.com/simul/UnrealEngine.

  5. Fork or clone our Unreal Repository. If you are not sure how to do this, GitHub has helpful information. Alternatively, if you are using a different Unreal codebase, pull changes from the Simul fork, and merge.

2: Setup for Unreal 4.27 and prior

  1. Follow the Unreal ReadME (in the root UnrealEngine directory), making sure you:
    • Run Setup.bat to download all complementary Unreal dependencies.

    • Run GenerateProjectFiles.bat from the Unreal root directory; this will generate projects and the solution file (Unreal.sln).

  2. The trueSKY binary libraries are not kept in the repository. This is because multiple trueSKY versions can work with the same Unreal version. So, to get the binary libraries, you can either:
    • Run the batch file located in Engine/Plugins/TrueSkyPlugin/GetBinaries.bat, passing in the required trueSKY version as a parameter, for example as: GetBinaries.bat 4.2.

    • Or, go to our downloads page and get the appropriate TrueSkyUnrealBinaries installer. Make sure to choose the correct Unreal Engine install directory.

  3. In both cases this will auto-extract (upon your permission) trueSKY binaries (DLLs/LIBs) into [Unreal]/Engine/Binaries/ThirdParty/Simul. Binaries are then put into their platform-respective paths, while the trueSKY shader files will go into your TrueSkyPlugin directory under the shaderbin subfolder (these are also separated based on platform).

  4. Use UE.sln to open the project in Visual Studio.The Unreal project contains the “TrueSkyPlugin” folder in Engine/Unreal/Plugins (whether you installed via the installer or downloaded the source from GitHub). There are two trueSKY modules in the Unreal project – TrueSkyPlugin and TrueSkyEditorPlugin. TrueSkyEditorPlugin is only built alongside an editor build of Unreal.

  5. Build the Unreal project in the “Development Editor” configuration. Once this has compiled trueSKY will be present in your Unreal build.

Full Integration with Custom Unreal Source Code

The following files in the UE source have been modified in the Simul fork of the Unreal repository. If you are merging trueSKY into a custom fork, you must ensure that the trueSKY modifications are carried over. In general, a good way to go about merging these changes is by using Beyond Compare or Perforce Merge to easily do a diff across repos or, even simpler, between separate folders on your local machine.

Core Engine Files:

  • Engine/Source/Runtime/Renderer/Private/DeferredShadingRenderer.cpp

  • Engine/Source/Runtime/Renderer/Public/RendererInterface.h or Engine/Source/Runtime/RenderCore/Public/RendererInterface.h

  • Engine/Source/Runtime/Renderer/Private/RendererModule.h

  • Engine/Source/Runtime/Renderer/Private/SceneRendering.cpp

  • Engine/Source/Runtime/Renderer/Private/RendererScene.cpp

  • Engine/Source/Runtime/Renderer/Private/TranslucentRendering.cpp

Deployment File (Windows):

  • Engine/Source/Programs/AutomationTool/Win/WinPlatform.Automation.cs

Deployment Files (XBox One):

  • Engine/Source/Programs/UnrealBuildTool/XboxOne/XboxOneDeploy.cs

  • Engine/Source/Programs/AutomationTool/XboxOne/XboxOnePlatform.Automation.cs

Deployment Files (Playstation 4):

  • Engine/Source/Programs/AutomationTool/PS4/PS4Platform.Automation.cs

  • Engine/Source/Programs/UnrealBuildTool/PS4/UEDeployPS4.cs