Commit Graph

140 Commits

Author SHA1 Message Date
will damon
bc656d20e0 Initial import of AGXRHI
AGXRHI is starting out as a clone of MetalRHI, but will be refactored and overhauled with several goals in mind:

- Reduce/Eliminate technical debt
- Substantially improve readability and maintainability
- Introduce clear layers for platform independent vs dependent code
- Reduce memory footprint and generally improve memory usage
- Remove legacy concepts (like manual reference counting) and enable better integration with platform tools
- Implement newer and more modern features provided by Metal (such as ray tracing and enhanced command buffer debugging)
- Target/tune the software architecture and API usage for performance on Apple designed GPUs

#rb jack.porter, richard.wallis
#jira none
#fyi lukas.hermanns
#rnx

[CL 16225160 by will damon in ue5-main branch]
2021-05-06 15:47:24 -04:00
aurel cordonnier
50944fd712 Merge UE5/RES @ 16162155 to UE5/Main
This represents UE4/Main @ 16130047 and Dev-PerfTest @ 16126156

[CL 16163576 by aurel cordonnier in ue5-main branch]
2021-04-29 19:32:06 -04:00
Ben Marsh
bc47b15e06 Merge utility library changes from GitSync.
[CL 16135807 by Ben Marsh in ue5-main branch]
2021-04-27 22:41:48 -04:00
jonathan adamczewski
061b3de0fe Definitions.h: Drop some breadcrumbs
As an aid to the unfamiliar searcher (i.e. me), make the name of generated files "Definitions.h" appear as a literal in UBT code. Also, in those generated files, include a reference back to what generates them.

#jira none

[CL 16057466 by jonathan adamczewski in ue5-main branch]
2021-04-19 20:51:35 -04:00
Devin Doucette
81344d6cff UBT: Fixed single-file builds when bAdaptiveUnityCompilesHeaderFiles is true
#rb Tim.Smith
#rnx
#robomerge[STARSHIP] Release-5.0-EarlyAccess

[CL 15698430 by Devin Doucette in ue5-main branch]
2021-03-15 13:49:58 -04:00
Devin Doucette
800b4e9427 UBT: Fixed bAdaptiveUnityCompilesHeaderFiles to use generated files to include headers
#rb Ben.Marsh
#rnx
#robomerge[STARSHIP] Release-5.0-EarlyAccess

[CL 15666062 by Devin Doucette in ue5-main branch]
2021-03-10 11:23:43 -04:00
Devin Doucette
8b1f950403 UBT: Apply optimization, precompiled header, and header build behaviors to the working set even when unity is disabled on the module
#rn Ben.Marsh
#robomerge[STARSHIP] Release-5.0-EarlyAccess
#fyi Brandon.Dawson

[CL 15645534 by Devin Doucette in ue5-main branch]
2021-03-08 16:58:01 -04:00
Devin Doucette
d553d0a4e0 UBT: Changes to adaptive unity to expose more non-unity errors
- Exclude source files from unity if their first include is in the working set.
- Compile header files in the working set in their own dedicated source file if there is not an existing source file that includes it first.

#rb Ben.Marsh
#robomerge[STARSHIP] Release-5.0-EarlyAccess

[CL 15639040 by Devin Doucette in ue5-main branch]
2021-03-08 10:40:17 -04:00
Ben Marsh
6f927647b1 Changing C# code over to using EpicGames.Core over DotNETCommon.
#rb none
#rnx

[CL 14962096 by Ben Marsh in ue5-main branch]
2020-12-21 23:07:37 -04:00
Ben Marsh
68f5abeb09 UBT: Convert UnrealBuildTool to use nullable references.
#rb none
#rnx

[CL 14960546 by Ben Marsh in ue5-main branch]
2020-12-20 18:47:42 -04:00
Ben Marsh
96c997d826 UBT: Move logic for building response files and generating inputs and outputs for MSVC compilation into the VCCompileAction class.
#rb none
#rnx

[CL 14812826 by Ben Marsh in ue5-main branch]
2020-11-25 10:19:33 -04:00
Ben Marsh
57d9b51398 Initial support for C++20 modules.
Requires Visual Studio 2019 15.8 Preview 3, and targets to specify bEnableCppModules = true. Unsupported on other compilers.

Notes:
- Module interfaces need to be placed in .IXX files.
- Module/module dependencies are determined by a post-makefile/pre-build scan of all module interfaces using the compiler, and cause additional prerequisites to be inserted into the dependency graph before execution.
- Available module IFC search paths use normal UE module dependency rules.
- Header units are not currently supported.
- Regular C++ files cannot currently implement functions defined in module interfaces, due to the macros force included by UBT. These macros need to be placed in the global module fragment, but declaring a global module fragment must be done from the translation unit being compiled (making force-included headers invalid).

#rb none

[CL 14354539 by Ben Marsh in ue5-main branch]
2020-09-20 15:04:30 -04:00
Ben Marsh
03675533ea Rename UE4Game -> UnrealGame, UE4Client -> UnrealClient, UE4Server -> UnrealServer.
Mostly a find/replace, though I have looked through the changes and attempted to update references to other things as necessary (eg. renaming IOS plist files for IOS). I'm not set up to test on any platforms other than windows, and was hoping to get your blessing to submit and give QA enough time as possible to uncover issues before the next milestone release.

Particular things that I know I'm not sure about:
- Android references /UE4Game/ paths everywhere (for paths on device, I think). I have no idea if I've got them all.
- I've renamed the iOS mobileprovisions, but I don't know if they need regenerating for the new app name.
- Likewise, not sure what needs to be updated for icon bundles on iOS.

Things that have not been changed:
- Windows still uses IDI_UE4ICON for its icon
- UE4CommandLine.txt
- There's still a UE4Game module which is used by content-only projects

#rb none

[CL 14301890 by Ben Marsh in ue5-main branch]
2020-09-11 15:54:42 -04:00
brooke hubert
2250c5aed8 Remove legacy mesh paint mode.
#Jira UE-97667
#rb lauren.barnes

[CL 14299289 by brooke hubert in ue5-main branch]
2020-09-11 11:41:59 -04:00
Marc Audy
a7c9001a94 Merging //UE5/Release-Engine-Staging to Main (//UE5/Main) @ 14075166
#rb
#rnx

[CL 14075271 by Marc Audy in ue5-main branch]
2020-08-11 01:36:57 -04:00
Lauren Barnes
6e4ac7fded Removes PIE, SIE, Editor Modes (Foliage, Landscape, Mesh Paint) and their associated radial menu options.
#jira none
#rb Brooke.Hubert

[CL 13877316 by Lauren Barnes in ue5-main branch]
2020-07-16 16:08:23 -04:00
James Hopkin
1edd7720d5 UBT: allow multiple -SingleFile arguments. Now stores SpecifcFilesToCompile list rather than single file reference.
#rb Ben.Marsh

#ROBOMERGE-OWNER: james.hopkin
#ROBOMERGE-AUTHOR: james.hopkin
#ROBOMERGE-SOURCE: CL 12779149 via CL 12779152 via CL 12779160
#ROBOMERGE-BOT: RELEASE (Release-Engine-Staging -> Main) (v681-12776863)

[CL 12782243 by James Hopkin in Main branch]
2020-04-14 13:31:51 -04:00
Ben Marsh
d6d7c939e5 Copying //UE4/Dev-Build to Dev-Main (//UE4/Dev-Main)
#rb none

[CL 12726184 by Ben Marsh in Main branch]
2020-04-10 11:30:32 -04:00
michael sartain
43ef13a97b Fix UnrealBuildTool unused variable warnings
#jira none
#rb Ben.Marsh
[FYI] Andrew.Grant, Brandon.Schaefer

#ROBOMERGE-SOURCE: CL 12224860 in //UE4/Release-4.25/... via CL 12224862
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v663-12210973)

[CL 12224868 by michael sartain in Main branch]
2020-03-16 19:04:42 -04:00
ryan vance
02bb20415f Copy up from DS to Main
#rb CopyUp



#ROBOMERGE-OWNER: ryan.vance
#ROBOMERGE-AUTHOR: ryan.vance
#ROBOMERGE-SOURCE: CL 12149088 via CL 12150247
#ROBOMERGE-BOT: (v659-12123632)

[CL 12150618 by ryan vance in Main branch]
2020-03-12 14:08:52 -04:00
ben marsh
09ca12ccef Refactor UBT to use an interface (IActionGraphBuilder) to construct the action graph. Response files are also constructed through this interface, allowing them to be tracked as dependencies (will be added in subsequent change).
#rb none
#jira

#ROBOMERGE-SOURCE: CL 12038895 in //UE4/Release-4.25/... via CL 12038911
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v657-12064184)

[CL 12076066 by ben marsh in Main branch]
2020-03-09 13:20:14 -04:00
ben marsh
2868a46d82 Remove debug code.
#rb none
#rnx
#jira

#ROBOMERGE-SOURCE: CL 11631935 in //UE4/Release-4.25/... via CL 11631941
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v655-11596533)

[CL 11631949 by ben marsh in Main branch]
2020-02-26 11:06:01 -05:00
ben marsh
a3cada401a Fix incorrect force included files in intellisense data.
#rb none
#jira UE-89364

#ROBOMERGE-SOURCE: CL 11631903 in //UE4/Release-4.25/... via CL 11631909
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v655-11596533)

[CL 11631916 by ben marsh in Main branch]
2020-02-26 11:03:42 -05:00
ben marsh
0f217338cd Allow single file compile to work with generated cpp files.
#rb none
#jira UE-85511

#ROBOMERGE-SOURCE: CL 11592169 in //UE4/Release-4.25/... via CL 11592173
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v654-11333218)

[CL 11592176 by ben marsh in Main branch]
2020-02-24 18:40:49 -05:00
ben marsh
0454bd151f Generate type library headers as a standalone build action, to eliminate contention when generated by multiple compiler instances.
Also add support for using Visual Studio DTE type libraries from AutoSDK, to fix accessor not working in installed builds built from licensee workspaces.

#jira UE-88791, UE-89124, UE-89162
#rb none

#ROBOMERGE-SOURCE: CL 11590477 in //UE4/Release-4.25/... via CL 11590479
#ROBOMERGE-BOT: RELEASE (Release-4.25Plus -> Main) (v654-11333218)

[CL 11590486 by ben marsh in Main branch]
2020-02-24 15:45:01 -05:00