Commit Graph

262 Commits

Author SHA1 Message Date
steven barnett
944979e508 Add metric density to unit conversions. Use g/cm3 for physical material density.
#rb cedric.caillaud

[CL 26727986 by steven barnett in ue5-main branch]
2023-07-31 20:36:48 -04:00
zak middleton
d51c438871 #ue5 - Change TQuat::FindBetween_Helper() when dealing with anti-parallel (opposite direction) vectors. This restores the old behavior to prefer rotation around the Z-axis when dealing with vectors with X or Y dominant components, which causes rotations in gameplay to avoid adding roll when the quat is used for interpolation. Added more validation tests to compare old and new methods.
#rb David.Paquette

[CL 25881692 by zak middleton in ue5-main branch]
2023-06-08 16:28:33 -04:00
tom waterson
b2a34a684b Add torque units and extend force units
#rb justin.hare
#preflight 647862b85d23eca37d782f2c

[CL 25723425 by tom waterson in ue5-main branch]
2023-06-01 07:44:12 -04:00
cedric caillaud
893a5ea0f1 Chaos : add strength to chaos physics material and wire it to the high level engine physics material
#rb steven.barnett, chris caulfield
#preflight 644ae1f3401d328ad9d171b1

[CL 25238017 by cedric caillaud in ue5-main branch]
2023-04-28 15:34:17 -04:00
Zak Middleton
8fb2dd249e #ue5 - Fix TQuat<T>::FindBetweenNormals() and TQuat<T>::FindBetweenVectors() choosing poor basis vectors when input vectors are anti-parallel (opposite directions). Added more test coverage in engine startup tests.
Modified from PR #10029
#jira UE-174630
#preflight 642f242a4c3ccbbdf18eace1
#rb Jodon.Karlik

[CL 24966167 by Zak Middleton in ue5-main branch]
2023-04-07 12:42:54 -04:00
Charles deRousiers
1c6fe73ece Add exposure as new light unit.
#rb chris.kulla
#jira none
#preflight 63f7e43e1206d91a2b6c4121

[CL 24519541 by Charles deRousiers in ue5-main branch]
2023-03-06 04:43:25 -05:00
charles bloom
5597ce2d36 fix several issues with MatrixInverse
de-copy-paste the scalar implementation of MatrixInverse that was in 3 places
remove scalar implementations from VectorMatrixInverse
make sure Determinant is only computed once, not twice
do the validity check on Determinant on the actual value that will be used for inverse
make MatrixInverse return bool directly

#preflight https://horde.devtools.epicgames.com/job/63f7a821ae54ee4ce96eecb3
#rb fabian.giesen

[CL 24393758 by charles bloom in ue5-main branch]
2023-02-23 19:34:43 -05:00
henrik karlsson
df94888a1e Removed some includes to ExpressionParserTypes.inl
#preflight 63e42d2e9664966e1cf7ffd6
#rb none

[CL 24093378 by henrik karlsson in ue5-main branch]
2023-02-09 01:46:11 -05:00
Brian Bekich
2cd4a1c575 Changed engine/game network version to be custom versions
Changed replay header version to be a custom version
Changed local file replay streamer version to be a custom version

#jira UE-149900
#preflight 639a40e12540a78d27a7c884

[CL 23836403 by Brian Bekich in ue5-main branch]
2023-01-24 15:04:19 -05:00
Zak Middleton
1aaaeb65e2 #ue5 - Remove extra NaN checks in VectorMatrixMultiply() and VectorMatrixInverse(), as they are already covered by DiagnosticCheckNaN in Matrix operators in a way that affects fewer build configurations by default.
#jira UE-174642
#preflight 63c9d5e8977c626356c9bdd2

[CL 23791601 by Zak Middleton in ue5-main branch]
2023-01-20 11:53:11 -05:00
Jurre deBaare
31f1b097fd Animation Compression
- Added new compression and 'compiling' API/path
  * Relies on newer DDC API
  * Only fetches compressible data when data is not found in DDC
  * Fetching data happens off the GT now (including Additive animation)
- Deprecated and replace AnimSequence API around compression
** AnimStreamable still relies on old, synchronous, compression path **

IAnimationDataModel
- Removed bone track data being stored as FBoneAnimationTrack
- Bone animation can now only be referenced by Name (not track index anymore)
- Deprecated any API relying on FBoneAnimationTrack
- Added API to retrieve FTransform(s) for given frame(s) with provided bone name
- Added API to lock model against modifications during evaluation (required for non-racing off-GT evaluation)

Animation Sequence
- Frame-rate is now stored on a per-platform basis, allowing for future replacement of frame-stripping (editing property is disabled for now)
- Now allows for storing _transient_ per-platform compressed animation data (required for multi-platform cook)

PerPlatformProperties
- Added per-platform FFrameRate implementation

#preflight 63999f102540a78d2778adb7
#rb Thomas.Sarkanen, Nicholas.Frechette, Devin.Doucette
#fyi Zousar.Shaker

[CL 23510521 by Jurre deBaare in ue5-main branch]
2022-12-14 05:56:08 -05:00
Zak Middleton
7928dfb5e1 #ue5 - Add SlerpQuats(), FindQuatBetweenVectors(), FindQuatBetweenNormals() to Blueprints. Add SlerpVectorToDirection() and SlerpNormals() to both C++ and Blueprints.
#jira UE-167467
#rb Justin.Hare
#preflight 63926c235c5308d18ceafd04

[CL 23465068 by Zak Middleton in ue5-main branch]
2022-12-09 12:21:56 -05:00
steve robb
8b340797ba Removed PPF_ExportCpp, which is a vestige of the blueprint C++ compiler.
#rb robert.manuszewski
#jira UE-129532
#preflight 637f939bcc307d6fa55e42c1

[CL 23263272 by steve robb in ue5-main branch]
2022-11-24 20:01:58 -05:00
andrew davidson
99834ab694 Engine module public header truncation warning fixes
#jira UE-160823
#rb dave.jones2, zak.middleton
#preflight 6335d07e466fb43669bc682f

[CL 22263161 by andrew davidson in ue5-main branch]
2022-09-30 00:47:16 -04:00
bryan sefcik
9905eb52bb Pass 2 on running IWYU on Core.
Things to note regarding this pass:
* No includes are currently being removed from public headers.
* Any private file that has a #if is currently not being updated.
#preflight 62c703bbd13fac04f11da948

[CL 20985655 by bryan sefcik in ue5-main branch]
2022-07-07 12:30:11 -04:00
bryan sefcik
62489fe2b3 Ran a pass of IWYU on Core.
Things to note regarding this pass:
* No includes are currently being removed from public headers.
* Any private file that has a #if is currently not being updated.

#rb Devin Doucette and Marc Audy
#preflight 62c62086756222ced497ff95
#preflight 62c626d12f2d04691814d331
#preflight 62c630107e606620fdd64e31
#preflight 62c635c6756222ced49a13cf

[CL 20979027 by bryan sefcik in ue5-main branch]
2022-07-06 21:44:18 -04:00
andrew rodham
fd93fd2553 Added micro and nano-seconds to unit conversion utilities
#rb Patrick.Boutot
#preflight 62bb5222727d9bb33bae688b

#ROBOMERGE-AUTHOR: andrew.rodham
#ROBOMERGE-SOURCE: CL 20875478 via CL 20875508 via CL 20875518
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)

[CL 20878382 by andrew rodham in ue5-main branch]
2022-06-29 13:39:40 -04:00
JeanFrancois Dube
e3c08e960c Data Layer: fix old data layer assets debug color when loading.
#rb richard.malo
#preflight 629fe378f73a9b013ddf953a
#rnx

[CL 20554448 by JeanFrancois Dube in ue5-main branch]
2022-06-08 07:11:02 -04:00
Jason Adcock
dccca1fb87 Fix Fortnite Networking Versioning between FN and UE branches
#jira UE-147571, UE-149373, UE-146854
#rb ryan.gerleve
#preflight

[CL 20053774 by Jason Adcock in ue5-main branch]
2022-05-04 20:56:28 -04:00
Zak Middleton
bd47021f04 #ue5 - Added VectorMod360(), for specific use by Rotator normalization where speed is more important than the stability of stock fmod() under extreme ranges. 30% - 75% faster depending on the intrinsics available to the alternate VectorMod().
Given that the second argument is always 360, we can remove some tests for bad ranges of input and use simple truncation/multiplication to compute the result, while retaining good accuracy within reasonable FRotator input value ranges.

#jira UE-129730
#preflight 62699851f97c319beba69337
#rb Dmytro.Vovk

[CL 19947858 by Zak Middleton in ue5-main branch]
2022-04-27 17:44:04 -04:00
Zak Middleton
f2e6ac0f2d #ue5 - Make UnrealMathFPU usable again when vector intrinsics are disabled or when explicitly swapped in within VectorRegister.h. Fixed some related deprecated UE constants usage. Fixed NaN handling for comparisons in UnrealMathFPU to pass the UnrealMathTest startup tests.
#jira UE-129730
#rb none
#preflight 62687fe6430b9997eb013593

[CL 19941685 by Zak Middleton in ue5-main branch]
2022-04-27 12:27:40 -04:00
Steve Robb
f4d1564ffe New BitCast<>() function which works like C++20's std::bit_cast<>().
Deprecation of FPlatformMath::IsNegative*() functions.
New FPlatformMath::IsNegativeOrNegativeZero().
Fix up of existing usage to either use < 0 or IsNegativeOrNegativeZero where appropriate.
Fixes for aliasing problems in various FMath functions, including IsNegative*().

Resubmission of CL# 19833778 with fixes for problematic Mac and Android toolchains, causing spurious errors while building PCHs.

#rb devin.doucette, charles.bloom, will.damon, chris.babcock
#jira UE-148435
#preflight 6260764d91376845adf9893f

[CL 19840896 by Steve Robb in ue5-main branch]
2022-04-20 19:05:47 -04:00
Steve Robb
5c1f45e9a8 Undo //UE5/Main/Engine/... changelist 19833778 due to Mac and Android compilation failure.
#rb none
#jira none
#preflight none
#fyi will.damon

[CL 19835840 by Steve Robb in ue5-main branch]
2022-04-20 15:09:51 -04:00
Steve Robb
a9e89c3ed6 New BitCast<>() function which works like C++20's std::bit_cast<>().
Deprecation of FPlatformMath::IsNegative*() functions.
New FPlatformMath::IsNegativeOrNegativeZero().
Fix up of existing usage to either use < 0 or IsNegativeOrNegativeZero where appropriate.
Fixes for aliasing problems in various FMath functions, including IsNegative*().

#rb devin.doucette, charles.bloom
#jira UE-148435
#preflight 625ece48f16e0d2accab15d9

[CL 19833778 by Steve Robb in ue5-main branch]
2022-04-20 13:38:10 -04:00
sebastian nordgren
b6b10ed4e1 KiB/MiB/GiB/TiB are now accepted spellings for the units in the details view.
#review-19625751 @lauren.barnes
#preflight 624d5688683a7dd323bde009

[CL 19644364 by sebastian nordgren in ue5-main branch]
2022-04-06 05:05:32 -04:00