Commit Graph

169 Commits

Author SHA1 Message Date
Zak Middleton
f4a7fc8913 #ue4 - Perf: Add vectorized FRotator::Equals() and IsNearlyZero() implementations.
- 3x faster than scalar implementation.
- Includes unit tests.

[CL 2529282 by Zak Middleton in Main branch]
2015-04-28 17:46:37 -04:00
Zak Middleton
f5d65a42b5 #ue4 - Fix "nearly equal" comparisons not returning true when values are exactly equal and tolerance is zero.
- Comparisons using a tolerance should use "Delta <= Tolerance".

[CL 2528773 by Zak Middleton in Main branch]
2015-04-28 13:52:54 -04:00
Joe Graf
ec257996e9 Rolled back my fix to RandRange until I can test more
[CL 2527537 by Joe Graf in Main branch]
2015-04-27 17:42:14 -04:00
Martin Mittring
af48c28076 fixed pause of MotionBlur for camera motion
[CL 2527480 by Martin Mittring in Main branch]
2015-04-27 17:12:21 -04:00
Joe Graf
5a7f73cada Fixed FMath::RandRange() returning values > Max
[CL 2527258 by Joe Graf in Main branch]
2015-04-27 14:37:40 -04:00
Richard TalbotWatkin
d5dfb01a15 Fix to FInterpCurve serialization, and fixed overly strict check in Eval, EvalDerivative and EvalSecondDerivative.
[CL 2527049 by Richard TalbotWatkin in Main branch]
2015-04-27 12:04:01 -04:00
Zak Middleton
a5e32beb9f #ue4 - Add FQuat::GetNormalized() that returns a normalized copy.
[CL 2524550 by Zak Middleton in Main branch]
2015-04-24 12:52:23 -04:00
Richard TalbotWatkin
a3cfc2f2bb Big revamp to SplineComponent (continuing work-in-progress).
#jira UE-11822 - Add up vector, roll and scale properties to USplineComponent which can be used when calculating rotations/transforms at a point on the spline
#jira UE-13333 - BP spline components do not update when setting points
#jira UE-3637 - SplineComponent: Add a get transform at distance accessor

Summary of changes:
- FInterpCurve now natively understands looping. A input key can be set, at which point the spline will loop back to its start point.  Adjusted FInterpCurve methods to take looped curves into account.
- Fixed bugs in FInterpCurve regarding returning default values (T(ForceInit) instead of T() otherwise FVectors and FQuats are not initialized correctly).
- SplineComponent now holds three separate splines (location, rotation and scale).
- The SplineReparamTable is no longer transient, but is built and saved as part of the asset.
- Changed the SplineComponent API. All methods now take a ESplineCoordinateSpace value which specifies whether the values are intended for use in local or world space. The old methods have been deprecated but not removed (for now).
- bAllowSplineEditingPerInstance is deprecated. A new member (bSplineHasBeenEdited) has superseded it, and is set automatically when editing the spline with the visualizer. Added "Reset to Default" option in the visualizer, which restores the archetype defaults.
- SplineComponentVisualizer determines if spline points have been initialized by the user construction script, and, if so, will disallow editing. This is to conform with the general idea that the UCS always overrides property values.
- Fixed a number of bugs in the visualizer, and added new facilities to allow the scale and rotation to be edited (still work-in-progress).

[CL 2524087 by Richard TalbotWatkin in Main branch]
2015-04-24 06:25:50 -04:00
Lina Halper
95c576c574 #OpenWorld: HLOD
- Improved clustering by using sphere
- Fixed progress window to work during build process
- Optimized for a big map
- Disabled for build all since it is exceptionally slow, it might be painful to add there
- Fixed Merge Actor to work with material flattening

[CL 2521241 by Lina Halper in Main branch]
2015-04-22 12:08:09 -04:00
Mike Fricker
6cfc700f19 Added HSV-based linear color interpolation function (Blueprint and C++)
- Interpolates between colors in HSV space, taking the shortest route between hues.  Also interpolates alpha.
- In C++:  FLinearColor::LerpUsingHSV()
- New Blueprint function:  "Lerp Using HSV (Linear Color)"

#codereview nick.atamas

[CL 2519129 by Mike Fricker in Main branch]
2015-04-21 09:31:43 -04:00
Andrew Rodham
86850fe0f8 Changed editor project unit settings to be more flexible
Users can now choose a set of relevant units to display applicable properties in.
Setting a single unit for a given type will result in only that unit ever being used. When multiple exist, the most appropriate unit will be shown when a property editor is opened, and will remain in this unit until something else is selected.

[CL 2519064 by Andrew Rodham in Main branch]
2015-04-21 08:27:25 -04:00
Zak Middleton
aad22e1398 #ue4 - Added more DiagnosticCheckNaN_All() checks in common FTransform methods.
- Better to catch them early than skip a NaN check for translation just because we didn't use it, only to catch it later.

[CL 2518295 by Zak Middleton in Main branch]
2015-04-20 17:21:48 -04:00
Zak Middleton
fdc0289c8e #ue4 - Optimized FTransform::TransformPosition() and FTransform::TransformPositionNoScale().
- Vectorized versions are now 25% faster than previous implementation.

[CL 2518264 by Zak Middleton in Main branch]
2015-04-20 17:09:17 -04:00
Ryan Gerleve
e9ce2b4d9b Back out changelist 2507356
[CL 2514353 by Ryan Gerleve in Main branch]
2015-04-16 11:45:55 -04:00
Peter Sauerbrei
02c0ed83ea another CIS fix
#ios
#lockdown Zachary.EdgertonJones

[CL 2511742 by Peter Sauerbrei in Main branch]
2015-04-14 11:24:46 -04:00
Peter Sauerbrei
1d32cc356f CIS fix
#ios

[CL 2511700 by Peter Sauerbrei in Main branch]
2015-04-14 10:57:27 -04:00
Keith Judge
363fe1d2f7 Add VectorDivide to UnrealMathDirectX.h
[CL 2511555 by Keith Judge in Main branch]
2015-04-14 08:45:52 -04:00
Ryan Gerleve
6bd32cd9c3 Always make sure FRotator angles are in the range [0,360) before compressing them. Fixes UE-9488.
[CL 2507356 by Ryan Gerleve in Main branch]
2015-04-09 17:10:11 -04:00
Dinesh Kumar
f0a9771d33 Paper2D: 2D Mode
- Combined 2D Rotate / Translate widget
- 2D Layer Snap planes
- Some UI stuff to go with it
#codereview michael.noland

[CL 2500349 by Dinesh Kumar in Main branch]
2015-04-02 16:44:37 -04:00
Andrew Rodham
3ac1e0da19 Added editor project setting to define whether to display units in imperial or metric (or not at all)
Also added a default input unit that is used when no units are specified on a text input.

This addresses UE-11863 and UE-9313

[CL 2499638 by Andrew Rodham in Main branch]
2015-04-02 05:30:34 -04:00
Zak Middleton
d07d18b526 #ue4 - Add FQuatRotationMatrix, for the common case where FQuatRotationTranslationMatrix is overkill.
[CL 2497645 by Zak Middleton in Main branch]
2015-03-31 16:07:24 -04:00
Zak Middleton
ef75c46f40 #ue4 - Perf: Optimize FTransform::TransformVector() and FTransform::TransformVectorNoScale() to remove unnecessary work.
- Vectorized versions are 25% faster than before.
- Remove useless translation since W is zero.
- Remove copy between FVector4 and FVector.

[CL 2496685 by Zak Middleton in Main branch]
2015-03-30 21:33:22 -04:00
Zachary EdgertonJones
788c90cf43 Checking in TPS reports for first pass
[CL 2493970 by Zachary EdgertonJones in Main branch]
2015-03-27 12:10:09 -04:00
Brian Karis
d3b0603276 PR #668: Added color temperature property for lights! (Contributed by JedTheKrampus)
https://github.com/EpicGames/UnrealEngine/pull/668

[CL 2492899 by Brian Karis in Main branch]
2015-03-26 19:26:04 -04:00
Zachary EdgertonJones
f71bb8201d First pass for TPS checkins
[CL 2488456 by Zachary EdgertonJones in Main branch]
2015-03-23 17:34:38 -04:00