Unreal Engine 4.4 Preview Notes

4.4 Preview Release Notes

The upcoming 4.4 release includes a number of quality improvements for Persona usability, friction mode support, snapping actors to surfaces, constraining 3D physics objects into a 2D plane, and multi-line editable text functionality!

We would like to extend our gratitude to all of the amazing developers who contributed code to the upcoming 4.4 release.

Silkin (alexSilkin), Riedel (joeriedel), Joel Riendeau (joelriendeau), Kevin Rushin (Malfate), Kamradt (MarcKamradt), Palko (MartinPalko), Delva (Zoubi), Pablo Zurita (pzurita), (EverNewJoy), Robbie Newman (), Khalikov (nbjk667), Wallis (-wallis), Roy (Shammah), Scott Michaud (ScottMichaud), Sebastien Rombauts (), Whittle (stephenwhittle), Steve Anichini (solid-angle), thk123, Hearn (wshearn).

**Major New Features
**
Persona
Improved! Animation Editing Workflow

  • FBX import errors now provide detailed inline descriptions.

  • All AnimGraph nodes that reference assets now support double-clicking to open the asset for editing.
  • You can now preview animation sequences by hovering over the asset in the Asset Browser.

  • Shift+Click can now be used to expand/collapse hierarchies in the Skeleton Tree.
  • The zoom feature in the Animation Editor now zooms in based on current mouse position.
  • Improved and simplified the layouts for all modes in Persona.

  • Each mode in Persona now has a toolbar containing commonly used operations.

**


**

  • Added the ability to “Save all Animation Assets” to the File menu in Persona.

  • You can now select a bone in the viewport when it’s hidden (mesh must have a physics asset).

  • The Display Info in the Persona viewport has now been simplified to only show essential information.

  • An error message now displays when an invalid name is used for a Montage slot.

  • Easily jump to documentation for each animation editor type using the new help links.

  • Mesh Detail View displays LOD settings in the order including materials per LOD.

  • Retargeting option is now only shown in the Skeleton Tab.

  • Animations now have thumbnails in the Content Browser.

Blueprints
New: Blueprint Nodes

“Set members (in structure)” blueprint node:


“Set Timer Delegate” blueprint node:

Materials
New: Clear Coat Shading Model

Recently a new shading model has been added called Clear Coat!
This can be used for multilayer materials where a translucent layer of film is over the surface of a standard material, either a metal or nonmetal. Specifically it was designed to model this second class of smooth colored films over a non-colored metal.
Some examples included acrylic or lacquer clear coats, and colored films over metals such as soda cans and car paint.
Two new parameters are exposed:
Clear Coat
**
-Amount of clear coat layer, 0 acts like the standard shading model, 1 is the full clear coat model. This is useful for masking.
**
Clear Coat Roughness

-Roughness for the clear coat layer. Our approximation is accurate for small values. Very rough clear coat layers are supported but won’t be very accurate to their real world counterparts.
On the left is the Monte Carlo reference, and on the right is our real time UE4 approximation:

(note the flecks were done in the material editor and are not part of the shading model)*

Editor
New: Friction Combine Mode

The engine now supports different friction modes!

By default we take the average friction coefficient when two bodies hit.However, this can be problematic for cases like ice where negative and positive coefficients are needed to average out to 0.

Different modes are useful for different types of effects. In the case of ice you would likely want either Multiply or Min with the ice material’s friction set to 0.

The friction mode can be set project wide or overwritten per physical material.

New: Snap Actors to Surfaces

There is a new button on the transform toolbar which allows you to project actors into the world as you drag them. This can be really useful for placing objects onto complex geometry.

The snapping works in one of two ways, either by projecting through the drag plane (if you are dragging in a constrained plane), or by projecting the actors into the world in screen space (when dragging in all 3 axes).

Before a drag in X-Y plane:

**
After a drag **(Rotate to Surface Normal: Off):

**
After a drag **(Rotate to Surface Normal: On):
*


*

Physics
**New: Simple 2D Physics Constraints **

The engine now supports easily constraining 3D physics objects into a 2D plane. This should help with 3D side scrollers.

The setting can be applied per object, or project wide by changing the project physics settings.

Ragdolls will by default only constrain the root body. This allows limbs of the ragdoll to move in 3D, while still keeping the entire asset in a 2D plane.

Slate
New Slate Widgets: Multi-line Editable Text

The multi-line editable text functionality in Slate (SMultiLineEditableText and SMultiLineEditableTextBox) should have feature parity with the single-line editable text, and is now considered available for use.

Additionally, the submit changelist description in the editor is now using a multi-line editable text box.

Please note that while these are available for use, they are not yet as battle hardened as the single-line versions, and are still under development so may yet require API changes.

Preview Notes
Editor and Tools

  • New: Added ENGINE_API to FComponentInstanceDataBase so it could be used in other modules.
  • New: Added the ability to flag custom events as CallInEditor and extended the main editor actor details view.
  • New: Added support for “lightweight highlighters”.
  • New: Added ability to snap actors to surfaces in the world whilst dragging in the viewport.
  • New: Added function to detect connected mice on Win64/Win32.
  • New: Actors now default to being aligned to Z-up if they are placed on the background.
  • New: Dynamic parameters now copy their parameter names from pre-existing dynamic parameters.
  • New: Content Browser now resets the search filter when syncing an asset to the content browser.
  • New: Delete and rename Blackboard keys now work again from right-click menu.
  • New: Can now control tiling via the Texture Tiles property as well as the Tiling Distance.
  • New: The cancel button now appears on the feedback dialog while autosaving.
  • Moved the blend separate ARB fns to optional. Added extension check for the GL_ARB_draw_buffers_blend string.
  • Moved static mesh stat info text into Slate UI.
  • Modified struct customization for FMatrix and FTransform to work in the same way as the component transform details customization.
  • Removed the spurious ‘set brush’ transactions when placing geometry.
  • Removed Paper2D texture:// usage and dependency on Editor Style.
  • Removed transactions from importing normal maps.
  • Refactored StringClassReference to be a subclass of StringAssetReference.

Behaviour Tree

  • New: Added Behavior Tree execution order index widgets.
  • New: Added Behavior Tree node tooltips.
  • New: Added new tooltip text using tooltip metadata from C++ node classes & BlueprintDescription text for BP node classes.
  • New: Added new widget overlay system for graph panels, designed to allow more flexibility than the current brush-only implementation.
  • New: Behaviour Trees are now correctly focused on double-click Correctly called through to parent implementation of FocusWindow().

Blueprints

  • New: Added BP-callable accessors for spline mesh component values.
  • Removed macro libraries from the variable type dropdown in the Blueprint editor.

Core

  • Helper functions have been added to FreferenceCollector to be able to automatically add references to TArrays, TMaps and TSets of UObjects.

Rendering

  • New: Added flag to TextRenderComponent that allows text to render unmodified when using debug visualization modes.
  • New: Added compression and sampler types for distance field fonts.
  • New: Changed default rotation for SpawnDecalAtLocation to point downwards.
  • Removed scaling when calculating tangents for instanced mesh particles.
  • Removed LocalToWorld scaling when calculating tangents for skinned meshes.

Cascade

  • New: Particle effect meshes now adhere to the view mode correctly.

Platforms
Android

  • New: Added call to adb which sends an input to unlock the screen before launching the game.
  • Added ‘Android Back’ for specific back button support in Android.

Nice to see a new shading model :slight_smile:

[=;108987]
Amazing! Can’t wait to test it :slight_smile:
[/]

Hi ,

Unfortunately this was a bit of a mishap on our part, that is scheduled for a later engine build. Sorry about the confusion there!

[= ;108992]
Hi ,

Unfortunately this was a bit of a mishap on our part, that is scheduled for a later engine build. Sorry about the confusion there!
[/]

So that full hot reload working on classes too its not in 4.4?, any news when will it be availible, it would be very useful for me and other coders.

Will this include updated Oculus Rift DK2 support?

Bummer! Got all excited :frowning:

[=vblanco;109004]
So that full hot reload working on classes too its not in 4.4?, any news when will it be availible, it would be very useful for me and other coders.
[/]

Sorry for the unintentional tease. The feature is currently being improved on in our internal build, and we expect it will be ready for use with the 4.5 release (we can’t say exactly when that will be yet).

I posted in this thread about the improved C++ recompiling within the editor. It didn’t make it in time for 4.4, we had our wire crossed with the release notes. However, you can always grab the ‘master’ branch code from GitHub and try it out! The improved C++ recompile feature is really awesome, and we’re going to make it even better before 4.5 is released!

Just curious - is ingame physics cooking planned for this release? As far as I can tell it’s a potential blocking issue (short of, obviously, roll-your-own) for all voxel/runtime-generated-mesh projects needing collision* and looking to generate a release build or gather non-PIE performance data.

Some links:
Golding’s comment on this.
Roadmap entry listing it as top Physics item, scheduled for July.

Not personally blocked, just wondering since it’s probably the sole thing that could become a blocking issue down the road.

I would like to have a build to mac from windows feature, similar tu Unity.

[=vazquez595654;109005]
Will this include updated Oculus Rift DK2 support?
[/]

I was wondering this too… Would be nice to see the 0.4.0 integration? :slight_smile:

Any suggestions on how to use the CallInEditor?

Hi Guys,
One thing I noticed today after loading up the 4.4 build is the animation sequences now look very similar to the animation blueprint thumbnail. Is there any possibility to change this to make anim blueprints visually different in the content browser? Maybe some sort of different coloring?

For an example, See the Mixamo starter pack’s character. Tell me which item in the anim directory is the animation blueprint without having to carefully look at each file name.

[Deleted post, Call in Editor did make it into 4.4, see reply below]

Oh ok, thanks , at least I know I’m not missing something then.

Hello,
As seem so happy, i think i have to do a grumpy mode : You do updates faster than i can learn them ! And this really a very very bad thing !

Or not …

thanks a lot for all your work. Each day i am more happy to be a member of this community ^^

Go on an give us your best. We’ll do our best to give you back the same ! (If we can ^^)

Pleeeeease try to squeeze Rift DK2 OculusSDK 0.4 support into this update, if possible. :slight_smile: I want to finalize+publish the VR demo I’m making, but the lack of SDK0.4 support is the only thing stopping me. :frowning: I really don’t want to have to port everything to Unity.

[=chance_07;109073]
Oh ok, thanks , at least I know I’m not missing something then.
[/]

Hi Chance,

Sorry my bad, this functionality actually did make it into 4.4. I’ve included some pictures below explaining how to use it. Currently it only works on custom events, not functions, and it ignores the function category, always showing up in a ‘Blutilities’ category. Both of these are likely to change in the future, but it’s still quite useful.


Cheers,
Noland

[= Noland;109104]
Hi Chance,

Sorry my bad, this functionality actually did make it into 4.4. I’ve included some pictures below explaining how to use it. Currently it only works on custom events, not functions, and it ignores the function category, always showing up in a ‘Blutilities’ category. Both of these are likely to change in the future, but it’s still quite useful.


Cheers,
Noland
[/]

Nice to see Blutilities start making an intro. This is going to be really helpful for people who want to create tools to speed up development. Hey , I do have a couple questions about a couple other features. I inquired a little while back about a bug that was pointed out very early on where EditInlineNew was disabled. Did this fix make it in?

Also, I was told a while back that GameInstance was pushed from 4.2 to 4.3/4.4. Is this also maybe going to make an appearance possibly in 4.4? Fingers crossed…

The last thing I wanted to ask was in the Clear Coat shading model, the flecks of metal that are being simulated in the image above, is this actual material going to be included into 4.4 to showcase the feature and possibly going to include the map(s) or math that goes into creating the metal flakes? Maybe some sort of Voronoi method…

Thanks for the update and looking forward to it!

Please LPV, Please LPV, Please LPV! :stuck_out_tongue: