Commit Graph

187 Commits

Author SHA1 Message Date
henrik karlsson
b5164ac775 Fixes to make modules compile with IWYU. We've added to IWYU toolchain so it compiles "orphaned" headers which does not have a owning cpp file. This identified lots of headers that couldn't be compiled by themselves (or if they were to included first)
Change consist of only forward declaration and additional includes

#preflight 63789c1de30d438849c48188
#rb none

[CL 23218412 by henrik karlsson in ue5-main branch]
2022-11-21 03:22:23 -05:00
henrik karlsson
5b96352978 Fixes for c++ headerunits/modules.
* Adding forward declarations
* Adding "inline" in front of const/constexpr variables in headers
* Adding includes
* A few moves of ctor/dtor to cpp file

#preflight 6372b3ac0c74adb48b49f313
#rb none

[CL 23130896 by henrik karlsson in ue5-main branch]
2022-11-14 19:59:41 -05:00
benn gallagher
3750363eb2 Chaos: Fixed global namespace exposure in source files leading to ambiguous symbols in unity builds.
#rb Chris.Caulfield, Kriss.Gossart
#jira UE-168670
#preflight 636270551a32af63a8dcc721
#preflight 636264d11a32af63a8d8caec

[CL 22922321 by benn gallagher in ue5-main branch]
2022-11-02 14:19:06 -04:00
chris caulfield
df4403588a Chaos - add a flag to disable joint mass conditioning
- disable mass conditioning for all joints in TM_PhysGetSetMulti teeter-totter test

#rb benn.gallagher
#jira UE-128000

#ushell-cherrypick of 22694413 by Chris.Caulfield
#preflight 6360639fef6d25c67425b9c6

[CL 22891166 by chris caulfield in ue5-main branch]
2022-11-01 16:40:37 -04:00
henrik karlsson
4a36cfe8ff Moved operator== to be hidden friend instead of put directly in global namespace
Moved GetTypeHash function to be hidden friend instead of put directly in global namespace.

Note that the function/operator needs to be fully inlined in the type or placed in the cpp. If the function is added as friend but then implemented outside the type then hidden friend optimization won't work.

This should improve compile time somewhat according to msvc devs.

#rb Steve.Robb
#preflight 6360b7052b5338aceb26471b

[CL 22889837 by henrik karlsson in ue5-main branch]
2022-11-01 15:50:27 -04:00
henrik karlsson
cd1466475b Fixed up const/constexpr variables in header files to be "inline"
This is required for c++ modules/header units in order to decide if constexpr/const value should be available to outside module

#preflight 635c0b5c1803be35c767e0ea
#rb none

[CL 22835882 by henrik karlsson in ue5-main branch]
2022-10-28 15:38:42 -04:00
henrik karlsson
0da5962f86 Removed lots of includes in UE based on compile profiling
#preflight 6356cb02ae33b04ec1e358ac
#rb none

[CL 22786278 by henrik karlsson in ue5-main branch]
2022-10-26 15:02:30 -04:00
henrik karlsson
b5b86c796c This change is a strategical submit for a coming change that removes lots of includes in headers that are included by many files. This change contains adding of includes in files that previously got those includes transitively from other inclkudes
#preflight 6355d4940313c24974b2107b
#rb none

[CL 22783162 by henrik karlsson in ue5-main branch]
2022-10-26 12:57:32 -04:00
henrik karlsson
b744f1cb09 [PhysicsCore]
* Changed "enum EPhysicalSurface" to "enum EPhysicalSurface : int" to be able to forward declare it (it ends up being the same thing, just explicit)

#rb none
#preflight 633e12ee643eefca3d9b751b

[CL 22388111 by henrik karlsson in ue5-main branch]
2022-10-06 19:52:09 -04:00
marc audy
311f7464bf Updated ../Engine/Source/Runtime/... to inline gen.cpp files
Before:
3648 unity files
Total CPU Time: 47886.140625 s
Total time in Parallel executor: 498.81 seconds

After:
3548 unity files
Total CPU Time: 46643.828125 s
Total time in Parallel executor: 486.06 seconds

#jira
#preflight

[CL 22173263 by marc audy in ue5-main branch]
2022-09-24 13:57:58 -04:00
benn gallagher
291363b414 Chaos terminology pass
#rb Chris.Caulfield, Kriss.Gossart, Cedric.Caillaud, Jaco.VanDyk, Michael.Forot
#jira UE-159295, UE-158667, UE-158656, UE-158652, UE-158651, UE-158640, UE-158526
#preflight 6320a9cd9677b738f497c14f

[CL 22035600 by benn gallagher in ue5-main branch]
2022-09-15 15:09:35 -04:00
bryan sefcik
07894f4a07 Removed redundant private include paths from build.cs files.
Fixed include paths to be relative to the private or public folders.
Hid or removed includes that reached into other private module folders.
Updated PublicInclude paths when necessary.

#jira
#preflight 631a717cec45fbf3d74d4ba7

[CL 21916033 by bryan sefcik in ue5-main branch]
2022-09-09 00:53:22 -04:00
vincent robert
b48f2216b7 Raycast Broad Phase Grid (Bounding Volume) optimization :
Early exit when blocked hit is requested. No need to travel in further cell if hit has been found.
#preflight 6308b2c1d65521a5a5a45820

[CL 21587832 by vincent robert in ue5-main branch]
2022-08-26 07:57:28 -04:00
vincent robert
1d57c8eaec Small optimization: Remove unnecessary work
Not computing the raycast position if not necessary
#preflight 63075de603520e063c28d249

[CL 21561982 by vincent robert in ue5-main branch]
2022-08-25 07:45:08 -04:00
Benn Gallagher
ba51de108e Chaos: Remove ensure in GetWorldVelocityAtPoint that required the object to be kinematic or dynamic. It is valid to request a velocity from a static object without firing an ensure - the velocity will always be zero in that case.
In cases where a user is calculating velocity delta between bodies it's valid to just compare two calls to GetWorldVelocityAtPoint rather than having to handle the if is static case at all callsites. This is also how the interface functioned previously.

#rb trivial
#jira none
#preflight 62f63eb1ad3bd8ad646cace9

[CL 21353495 by Benn Gallagher in ue5-main branch]
2022-08-12 08:17:15 -04:00
Benn Gallagher
1cc0b83d89 Fixed crash attempting to retrieve shapes from a body instance that has no actor instance (e.g. welded bodies).
Fixed incorrect identification of owned instance shapes in GetSquaredDistanceToBody for welded instances
#rb Chris.Caulfield, Vincent.Robert
#jira none
#preflight 62ac974b486b5e268708885b

[CL 21267194 by Benn Gallagher in ue5-main branch]
2022-08-08 07:25:52 -04:00
marc audy
c8b2c0644b Fix engine non-unity issues
#rnx
#jira

#ROBOMERGE-AUTHOR: marc.audy
#ROBOMERGE-SOURCE: CL 21234798 via CL 21234809 via CL 21234813
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)

[CL 21234822 by marc audy in ue5-main branch]
2022-07-24 13:15:58 -04:00
Bryan sefcik
b4a6e947d8 Ran IWYU on Public headers under Engine/Source/Runtime/...
Headers are updated to contain any missing #includes needed to compile and #includes are sorted.  Nothing is removed.

#ushell-cherrypick of 21065896 by bryan.sefcik
#preflight 62d4b1a5a6141b6adfb0c892
#jira

#ROBOMERGE-OWNER: Bryan.sefcik
#ROBOMERGE-AUTHOR: bryan.sefcik
#ROBOMERGE-SOURCE: CL 21150156 via CL 21151754 via CL 21154719
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v972-20964824)
#ROBOMERGE-CONFLICT from-shelf

[CL 21181076 by Bryan sefcik in ue5-main branch]
2022-07-20 11:31:36 -04:00
vincent robert
a5fa3e7800 Fix Height Field Raycast bug on flat HeightField
#preflight 62cede0ad00f3c208e4912bd

[CL 21076195 by vincent robert in ue5-main branch]
2022-07-13 14:13:53 -04:00
Benn Gallagher
5f457aece9 Chaos: Changed null actor release message from Warning to Verbose as it is a valid codepath currently when welding shapes into a body instance of a parent that is set to NoCollision.
#rb trivial
#jira none
#preflight 62c2cdd9a3568e306666b976

[CL 20933534 by Benn Gallagher in ue5-main branch]
2022-07-04 07:30:34 -04:00
steven barnett
58f9a385d7 Add Probe and QueryAndProbe to ECollisionEnabled. Single shpaes or entire objects can now be marked as physics probes, meaning that they will generate constraints, contact data, and hit results, without physically responding.
[REVIEW] chris.caulfield, benn.gallagher

#ROBOMERGE-AUTHOR: steven.barnett
#ROBOMERGE-SOURCE: CL 20780284 via CL 20781025 via CL 20781737
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v970-20704180)

[CL 20784443 by steven barnett in ue5-main branch]
2022-06-22 18:59:24 -04:00
satchit subramanian
c70285bb89 Chaos:
SetGlobalPose now no longer discards the same XR if you're kinematic or sleeping.
#rb Benn.Gallagher

#ROBOMERGE-AUTHOR: satchit.subramanian
#ROBOMERGE-SOURCE: CL 20778060 via CL 20778070 via CL 20778076
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v970-20704180)

[CL 20779880 by satchit subramanian in ue5-main branch]
2022-06-22 15:44:37 -04:00
satchit subramanian
6cf6570bec SetGlobalPose_AssumesLocked doesn't do anything if both X and R haven't changed.
#rb Benn.Gallagher
[FYI] Jeff.Bauer

#ROBOMERGE-AUTHOR: satchit.subramanian
#ROBOMERGE-SOURCE: CL 20705968 via CL 20705989 via CL 20706008
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v968-20684695)

[CL 20709289 by satchit subramanian in ue5-main branch]
2022-06-17 16:42:06 -04:00
Benn Gallagher
8757cb3641 Physics interface cleanup.
* Removed deprecated or dead code paths
* Simplified build system setup for physics support
* Deprecated build system flags and unsupported macros

#jira none
#rb Chris.Caulfield, Kriss.Gossart
#preflight 62963ec0fe779f23c8ea0c5e

[CL 20450744 by Benn Gallagher in ue5-main branch]
2022-06-01 06:59:18 -04:00
vincent robert
0dc8cfa330 broad phase optimization:
Using bounding volume of rotated geometry instead of rotating AABB
#preflight : 627bfff89f7ad2a14b73b2ae

[CL 20148456 by vincent robert in ue5-main branch]
2022-05-11 16:05:33 -04:00