Commit Graph

29 Commits

Author SHA1 Message Date
Jack Porter
0bccf65c4a Fix potential crash in FLandscapeBrushComponent::LeaveBrush reported by licensee (UE-14279)
[CL 2526581 by Jack Porter in Main branch]
2015-04-27 03:39:05 -04:00
Mikolaj Sieluzycki
a96989f147 Add includes to files to remove the need of including Engine.h.
[CL 2508000 by Mikolaj Sieluzycki in Main branch]
2015-04-10 03:30:54 -04:00
Dmitriy Dyomin
6c7e46897c Fixed: Unable to sculpt/paint on mirrored landscape UE-13273
[CL 2502401 by Dmitriy Dyomin in Main branch]
2015-04-06 01:48:22 -04:00
Mike Fricker
114458bf0f Clang warning fixes: Fixed missing 'override' specifiers
- Also removed some unreferenced functions that adding 'override' revealed

PR #1002 -- Thank you, Omar007!

[CL 2498415 by Mike Fricker in Main branch]
2015-04-01 07:20:55 -04:00
Gareth Martin
295f6220d1 Fix world-space pattern brush options
[CL 2449888 by Gareth Martin in Main branch]
2015-02-18 06:00:35 -05:00
Gareth Martin
55653ea8ec Feature request: Landscape "pattern" brush now has world-space settings
Also added FVector2D::GetRotated(degrees) and GConfig->Get/SetVector2D(...) as they were missing.

[CL 2418501 by Gareth Martin in Main branch]
2015-01-26 06:47:34 -05:00
Gareth Martin
5c80d0e8df Fix stupid mistake
[CL 2412260 by Gareth Martin in Main branch]
2015-01-20 11:07:22 -05:00
Gareth Martin
505b7af648 Fix Landscape copy/paste gizmo bounds being calculated incorrectly. This was causing it to randomly disappear.
Fix Landscape copy/paste gizmo not being selected automatically when entering the copy/paste tool, or importing data into the gizmo, or switching to the gizmo brush, or opening the landscape editor when the copy/paste tool or the gizmo brush was the active tool/brush. This was causing it to unexpectedly not be movable/rotatable/resizable in those situations.
Fix Landscape copy/paste gizmo not being selectable with a single click. Coupled with the previous bug, this was causing a lot of confusion!
A bit of cleanup of the gizmo code:
- the landscape edmode is no-longer responsible for rendering a (0% opacity) box around the gizmo to make it selectable, instead the gizmo itself is now selectable.
- the gizmo frustrum transform is now calculated significantly more sanely!

[CL 2412231 by Gareth Martin in Main branch]
2015-01-20 10:47:28 -05:00
Gareth Martin
d9e53f7b12 Optimized landscape editing significantly by removing the TMap of brush points and replacing it with a 2D array of data (FLandscapeBrushData class)
Most code accessing brush/landscape data by calculating indexes (e.g. Data + (Y-Y1)*XSize + (X-X1)) replaced with scanline[X] style for speed
LandscapeInfo->SelectedRegion is now only queried if it contains anything, to avoid hashing the key unneccessarily (the hash function was showing on profiles :( )
Smoothing tool's SmoothFilterKernel*Scale* replaced by the more intuitive Size
Component brush fixed to be properly centered on the cursor at odd sizes and work correctly with the add component tool when cursor is over the landscape (but part of the brush is off the landscape) and size is >1
Copy tool fixed to copy the selected area and not a circle when using ctrl+c
Also a few style cleanups. for (auto it = xyz.CreateIterator...) replaced with ranged for, enums replaced with enum classes, 0.f -> 0.0f, NULL->nullptr, etc.

[CL 2392355 by Gareth Martin in Main branch]
2014-12-18 06:52:06 -05:00
Gareth Martin
5343bde5d6 Fix "CurrentTool && CurrentTool" in landscape editor code
[CL 2383389 by Gareth Martin in Main branch]
2014-12-10 09:29:05 -05:00
Ben Marsh
149375b14b Update copyright notices to 2015.
[CL 2379638 by Ben Marsh in Main branch]
2014-12-07 19:09:38 -05:00
Matthew Griffin
f1c4513760 Renaming FVector ClampSize and SafeNormal functions for clarity
Used DEPRECATED Macro to keep old names around in case I've missed anything

[CL 2370785 by Matthew Griffin in Main branch]
2014-11-26 10:01:12 -05:00
Mikolaj Sieluzycki
51f5333986 Prepare cpp files for header cleanup.
#codereview Robert.Manuszewski

[CL 2356864 by Mikolaj Sieluzycki in Main branch]
2014-11-12 04:58:53 -05:00
Jaroslaw Palczynski
1b50963ccd Landscape module from Engine split out.
[CL 2331341 by Jaroslaw Palczynski in Main branch]
2014-10-16 05:16:44 -04:00
Gareth Martin
ecdd80244f Improve landscape sculpting tool, it's now continuous and framerate-independent
Refactored landscape tool strokes somewhat, removing unnecessary virtual functions (most of the stroke classes were single-level hierarchies, making virtuals pointless), empty functions and unnecessary dynamic allocation (using refactored TOptional)

[CL 2293878 by Gareth Martin in Main branch]
2014-09-11 12:44:16 -04:00
Lina Halper
e513ea2300 Named FMatrix/FTransform unsafe Inverse to InverseFast, and InverseSafe,InverseSlow to Inverse as people often use Inverse as default function.
- Inverse was one of the main reasons of crashes via lots of functions. Seems making default Inverse to be safer version seems better.

[CL 2255081 by Lina Halper in Main branch]
2014-08-13 15:29:41 -04:00
Michael Trepka
5bd6255fde More Clang compile warning fixes
[CL 2237347 by Michael Trepka in Main branch]
2014-07-30 14:51:27 -04:00
Robert Manuszewski
f0a48eb095 Helper functions for TMaps and TSets in FReferenceCollector
[CL 2228355 by Robert Manuszewski in Main branch]
2014-07-23 08:26:24 -04:00
Gareth Martin
88b1adac4f Add manual rotation option to landscape editor alpha brush
Fix bug in alpha brush that could read off the +X/+Y edges of the supplied texture

[CL 2228303 by Gareth Martin in Main branch]
2014-07-23 08:25:02 -04:00
Gareth Martin
e20a958f1d Remove FLandscapeToolSet
Rename ALandscapeProxy::DataLayer to VisibilityLayer
Fix visibility tool not showing the visibility layer as its target

[CL 2222321 by Gareth Martin in Main branch]
2014-07-17 12:20:34 -04:00
Andrew Rodham
ba3528c9d4 Made it possible for asset editors to maintain their own FEditorModeTools lists
Breaking changes include:
    * Rename of GEditorModeTools -> GLevelEditorModeTools to signify that it applies only to the level editor modes
    * Addition of FEditorModeRegistry, responsible for managing and creating new editor modes. Modes are no longer registered with an instance of the mode, instead with a mode factory that is able to create a new mode of that type.
    * Editor modes now operate on FEditorViewportClients rather than FLevelEditorViewportClients
    * Added ability to specify an FEditorModeTools when creating an FEditorViewport

Moved component vizualiser manager handling outside of individual editor modes, and into FLevelEditorViewportClient. This should make it easier to transplant in future.

This work addresses TTP#334640 - EDITOR: Investigate making editor modes a per-'editor' concept

Reviewed by Michael Noland, Matt Kuhlenschmidt

[CL 2109245 by Andrew Rodham in Main branch]
2014-06-18 10:16:16 -04:00
Jaroslaw Palczynski
ebce413232 UE4 Refactoring. Changed OVERRIDE and FINAL macros to keywords override and final.
[CL 2104397 by Jaroslaw Palczynski in Main branch]
2014-06-13 06:14:46 -04:00
Gareth Martin
cc096d560f Remove landscape/foliage headers from Engine.h and include only where needed
[CL 2081860 by Gareth Martin in Main branch]
2014-05-22 07:52:43 -04:00
Mikolaj Sieluzycki
45c031d576 #ttp 331438 UE4: PlatformMath refactor
#proj core
#branch UE4
#summary Rename Trunc, Round, Floor, Ceil to TruncToInt, RoundToInt, FloorToInt, CeilToInt. Added *ToFloat versions. Repeated for FGenericPlatformMath and all derived classes for all platforms wherever applicable. Corrected comment in Fractional and added Frac() which does HLSL-style fractional (x - floor(x)). Checked for compilation on all projects (with cooking levels wherever applicable). Didn't change Fractional to Frac, this will be done in second commit.
#codereview robert.manuszewski

[CL 2064306 by Mikolaj Sieluzycki in Main branch]
2014-05-06 06:26:25 -04:00
Mikolaj Sieluzycki
bbcea54981 #ttp 303393 UObject improvement: Remove header groups
#proj core
#branch UE4
#summary Removed header groups, removed some redundant includes and replaced with forward declarations. Fixed compilation errors.

[CL 2055361 by Mikolaj Sieluzycki in Main branch]
2014-04-24 08:49:31 -04:00