Unreal Engine 4.6 Released!

I just updated to 4.5.1. Thought perhaps 4.6 hadn’t been released for mac yet. Clicked on Add Engine which has now prompted me to install 4.6.0.
So 4.6.0 is a new release and not an update right. If installed does mean I will have two copies of UE?
How do I uninstall 4.5.1 when the time comes?

New versions always secondary-install like that. It’s good to do , since it means if something breaks in the transition to 4.6 from 4.5.1 you can fall back to older versions.

When the time comes, just select “remove engine” under 4.5.1’s drop-down in the launcher (or something similar to that text, I can’t recall exactly) to delete all of the engine files for that version.

Again, I wouldn’t do it right away though. Since I started with UE4.2 every major new release has broken something in my project and I’ve had to go back to the old one for reference until I can nail down the cause and make the appropriate changes. Just part of the process with software like .

Thanks RythmScript, perfect advice!!!

I think a better way when migrating content from one project to anther would good. your content browser can get out of hand if you don’t set aside some time to relocate thing around, even downloading content from the marketplace is a bit of a pain.

[=Alessiot89;188584]
please, re-add the zipped download of third-party dependency. It was quicker to download, especially if you have more than one PC.

+10, zipped download is more convenience.

[]
Blueprint variables now have to be marked public/editable to be accessible from other blueprints.
[/]

Is there any reason for change? Because it is a pretty bad change.

We already had problem with C++ variables, and BP change only makes things worse rather than fixing it.

Consider case for example, which has been happening to us on multiple large productions:

https://dl.dropboxusercontent.com/u/2300830/e4rt43etg.jpg

is a BP placed in a level. Everything except for the green marked properties should not be visible, but it is, because all those properties came in from the C++ base class. The green properties internally control everything, so the end user is only expected to change those green properties. They are faced however with a long list of very confusing properties, most of which they cannot change or it will break things/not work.

We have had it happen before that people start editing stuff they are not suppose to, because it is not clear what they should and should not change. And that was a problem already with C++ based classes, but now that BP enforces you to do the same thing problem just got worse.

Speaking of which, what we also don’t have is the ability to make grayed out properties in BP, and information boxes. I want to be able to display info (text/values) in the properties to the end user. For example if I have a text field, I want to be able to display somewhere “text field length is currently 65 characters” to ensure there is feedback to the end user as to how he is doing char limit wise (or for whatever other reason).

[=Alessiot89;188584]
please, re-add the zipped download of third-party dependency. It was quicker to download, especially if you have more than one PC.
[/]

I’d like too.
With files you have a lot of advantages:

  • You can use a download manager to limit your trafic bandwidth / pause and resume later.
  • You can use a separate machine to download it.
  • You can store it for reinstalling UE later.
  • You can download Android and HTML5 support without having them installed yet.
  • You can download Mac support from a non-Mac machine.
    etc. etc.

Is anybody else having issues with the new network demo recording? It crashes upon putting in the playback command line for me. I’m just playing in the third person template.

[=onlycalvin;188067]
how to use WebBrowser in Blueprint?
[/]

[=Matthew Griffin;188434]
I’m afraid we don’t support it in blueprints yet. Just to clarify its usage too, since it is a developer module, it’s intended to be used in the editor and other programs rather than games. That makes it something we will largely be using internally but you could still make use of it.

The small controls help pop up in the bottom left of editor viewports uses it to display a html file and there is an example of its use as a web browser in the slateviewer example. The main class of interest is SWebBrowser.
[/]

@onlycalvin

Though look at

It recently went BSD licensed and is the same chromium browser, time for use in-game, not withheld by the developer-folder eula restriction.

[=;188956]
We already had problem with C++ variables, and BP change only makes things worse rather than fixing it.

[/]

It sounds like you are using the wrong settings when specifying your UPROPERTY.

UPROPERTY(EditAnywhere, BlueprintReadWrite …) is going to let anyone access property anywhere.

But you can specify EditDefaultsOnly and then it can only be modified in the blueprint defaults and there are a number of different permutations. Seedocs.unrealengine.com/latest/INT/Programming/UnrealArchitecture/Reference/Properties/Specifiers/index.html for more degtails.

[=prcn3dlight;188042]
Is there Any tutorial about how to integrate SQLite ?
I tried to include the header files “SQLiteDatabaseConnection.h” to use the db connection class, But the error occurred and “SQLiteSupportPrivatePCH.h” cannot be found. I downloaded 4.6 by Launcher and did not build it from the source.

Here’s a little writeup I put together on the Answerhub, short answer is you’ll need a source build for now in order to integrate a few fixes I made after 4.6 was branched :

[=twiddle;189160]
Here’s a little writeup I put together on the Answerhub, short answer is you’ll need a source build for now in order to integrate a few fixes I made after 4.6 was branched :

Thank you so much!!!

I’ve had the demo record crash as well. I was beginning to think that I was the only one who had . Perhaps it only works in a compiled game and not in the editor yet.

BTW, did anybody else notice that the sign used to demonstrate the new emissive lights changes in 4.6 is the sign from the old Samaritan demo? Could it be that the Samaritan demo is coming to UE4?

[]
did the experimental cylinder projection make it into the release? How do I get working?
[/]

I dug up some basic information on it:

[]

  • put to 1 to enable the , 0 to deactivate, in between numbers are used as transition
    r.Upscale.Cylinder

  • useful to render with super sampling (>100, e.g. 150)
    r.ScreenPercentage

  • useful to see the (or ScreenPercentage) in editor:
    r.ScreenPercentage.Editor
    [/]

[]
What are the limitations of using shared samples? I heard the format must be the same for all textures, but do all the textures need to be the same size?

There are no limitations on the textures used with shared samplers. it just causes the wrap mode on the UTexture used to be ignored, instead it that TextureSample is forced to use the wrap mode that comes from the shared sampler.

[=getnamo;188715]
After taking a look at the engine source for 4.6 input mapping, I noticed FSlateApplication::Get().ProcessKeyDownEvent(KeyEvent); and FSlateApplication::Get().ProcessAnalogInputEvent(AnalogInputEvent); are exposed, so using something like


bool EmitKeyDownEventForKey(FKey key, int32 user, bool repeat)
{
	FKeyEvent KeyEvent(key, FSlateApplication::Get().GetModifierKeys(), user, repeat, 0, 0);
	return FSlateApplication::Get().ProcessKeyDownEvent(KeyEvent);
}

Would approximate FSlateApplication::OnControllerButtonPressed(FKey, int32, bool);

Except that using KeyEvent() causes FKeyEvent::ToText(void)const implementation to be required in your implementation file, e.g.


FText FKeyEvent::ToText() const
{
	return NSLOCTEXT("Joystick Plugin Events", "Key", "Text");
}

which you cannot add because doing so causes error C4273: ‘FKeyEvent::ToText’ : inconsistent dll linkage.

Any guidance on adding custom input mapping in 4.6 epic? or has been broken without an engine patch?

Edit:
I guess you can suppress the warning with #pragma warning( disable:4273 ) but feels hacky, still would like to know the proper way to achieve
[/]

The following code suggested here is absolutely how you would generate input and is the correct way to do it now.


bool EmitKeyDownEventForKey(FKey key, int32 user, bool repeat)
{
	FKeyEvent KeyEvent(key, FSlateApplication::Get().GetModifierKeys(), user, repeat, 0, 0);
	return FSlateApplication::Get().ProcessKeyDownEvent(KeyEvent);
}

I’m unclear why you implemented FKeyEvent::ToText()?
certainly is the cause of the inconsistent dll linkage error.
Is there another warning or error that has lead you to implementing function?

Ensuring we sort out is a high priority to us, I appreciate the report and information.

It appears that BlueprintImplementableEvents are not showing up in Blueprints since 4.6

Help on would be nice, thanks!

[=;188956]
Is there any reason for change? Because it is a pretty bad change.

We already had problem with C++ variables, and BP change only makes things worse rather than fixing it.

Consider case for example, which has been happening to us on multiple large productions:

https://dl.dropboxusercontent.com/u/2300830/e4rt43etg.jpg

is a BP placed in a level. Everything except for the green marked properties should not be visible, but it is, because all those properties came in from the C++ base class. The green properties internally control everything, so the end user is only expected to change those green properties. They are faced however with a long list of very confusing properties, most of which they cannot change or it will break things/not work.

We have had it happen before that people start editing stuff they are not suppose to, because it is not clear what they should and should not change. And that was a problem already with C++ based classes, but now that BP enforces you to do the same thing problem just got worse.

Speaking of which, what we also don’t have is the ability to make grayed out properties in BP, and information boxes. I want to be able to display info (text/values) in the properties to the end user. For example if I have a text field, I want to be able to display somewhere “text field length is currently 65 characters” to ensure there is feedback to the end user as to how he is doing char limit wise (or for whatever other reason).
[/]

Seconded. Just because I want something to be accessible from other blueprints doesn’t mean I want it to be accessible to the level designer or cluttering up my actor properties. Why’d someone think was a good idea?

[= Gagnon;189705]
The following code suggested here is absolutely how you would generate input and is the correct way to do it now.


bool EmitKeyDownEventForKey(FKey key, int32 user, bool repeat)
{
	FKeyEvent KeyEvent(key, FSlateApplication::Get().GetModifierKeys(), user, repeat, 0, 0);
	return FSlateApplication::Get().ProcessKeyDownEvent(KeyEvent);
}

I’m unclear why you implemented FKeyEvent::ToText()?
certainly is the cause of the inconsistent dll linkage error.
Is there another warning or error that has lead you to implementing function?

Ensuring we sort out is a high priority to us, I appreciate the report and information.
[/]

Hey , I have a question for you. How do you go about providing the actual value for let’s say a given axis? Before I could pass the normalized value from -1 to 1 with FSlateApplication::Get().OnControllerAnalog(…) but I haven’t found where to store that yet. If you could let me know where I can specify the current axis value, that’d be great, thanks.

EDIT: I found it, no worries… FAnalogInputEvent

UPDATE: If anyone wants the modification for analog events, here you go…

[]
bool EmitAnalogEventForKey(FKey key, int32 user, bool repeat, float value)
{
FAnalogInputEvent AnalogEvent(key, FSlateApplication::Get().GetModifierKeys(), user, repeat, 0, 0, value);
return FSlateApplication::Get().ProcessAnalogInputEvent(AnalogEvent);
}
[/]

Yup, I’m suffering from the same …

[]
Error 3 error LNK2001: unresolved external symbol "public: virtual class FText __cdecl FKeyEvent::ToText(void)const " (?ToText@FKeyEvent@@UEBA?AVFText@@XZ) D:\Unreal Engine 4\Projects\Prototype\Intermediate\ProjectFiles\JoystickDevice.cpp.obj Prototype

[/]

I was getting them for FKeyEvent, FInputEvent, and FAnalogInputEvent. I looked at the engine code and clearly if you look at Events.cpp, all of the ToText(…) overrides have been implemented and I noticed it doesn’t fail to compile on Debug, only on Release. If I get a , I’ll try to debug it further. Hope helps.