[=;180535]
Alternate Frame Rendering is still very problematic, because making algorithms that do smart things requires maintaining GPU state. Tons of UE4 systems do - GPU particles, temporal AA and all its applications (7 features are affected), DFAO, eye adaptation, etc. I expect that we will use more GPU state going forward, not less. is because GPU’s are becoming more powerful and we can move more and more operations there.
Nvidia VR direct appears the be the marketing name for all of their Maxwell improvements. A bunch of them are under the hood, meaning the app doesn’t have to do anything. I don’t know what the plans are to leverage the rest in UE4, Whiting drives VR efforts.
With some major refactoring it might be possible to do each eye on a different GPU, but is not planned AFAIK.
[/]
Thanks for the response . Bummer, it looks like it would probably be more of an as time goes on. NVidia almost touted VR Direct as a standalone or form of SLI and I figured I’d jump on the SLI train (first time since 3DFX Cards :D). My game also relies on VR so I was hoping I could draw from the extra horsepower and/or if VXGI becomes available in the future which could be extremely helpful. I guess never say die but I guess I can at least agree that NVidia’s Marketing on one was effective lol
A function is called “pure” when it always returns the same result for same set of inputs and it has no side like outputting something or modifying an argument.
Function like random() or time() are impure, because each call give you a different result/value.
[/]
Pure in UE4 only implies that it has no side (doesn’t set any values), random() and time() are both pure functions. In Slate all data bound to the UI needs to come from a const function, so the extension to blueprints mimics by requiring the binding also be pure, otherwise very possible to break stuff.
[=;180242]
Am I the only one whose montages are broken when opening a project in 4.6? The time scale is wrong and notifies/branch points are all shifted over slightly.
I think montage clip lengths are now shortened to reflect the animation play rates of the individual clips now, and it causes the montages to display incorrectly…
[/]
Hi RythmScript, there has been some changes to montage editing in 4.6 - and it will auto-scale if anim sequences are shorter than the segments in the montage as otherwise the montage would just keep showing the final frame of the sequence. Is what you are seeing or is it something else?
[=;179680]
Awesome to be getting a preview for already.
Regrettably though, math expression nodes, an incredibly helpful addition which was added in 4.4, then broken in 4.5 (work but you can’t compile projects with them) are still broken in 4.6, which means I have to hunt through my entire project to resolve problems like , and amazing addons like iTween for UE4 that relied on countless math expresion nodes basically have to rebuild everything in a more convoluted way if they want people to be able to build projects with it. Really disappointing considering I heard in answerhub that it was recognized as a problem awhile ago and plans were made to fix it. A blueprint node that straight up breaks your ability to compile your project really shouldn’t be available when you could spend a lot of development time just testing the project in the editor.
EDIT- Another bug found so far
When I try to get the transform or location of a named bone in 4.6 it immediately crashes (just opened a new project in 3rd person blueprint and found it happening when trying to get a bone of the default character mesh in there)
[/]
Hey , can you describe the issues you are referencing with math expression nodes? We did have a few fixes with editing the graphs directly that would cause a crash, some of the fixes made it for 4.6 and some did not, and there is a known with packaging with math expression nodes that has not yet been resolved. Are any of these the blocking?
[=DaEmpty;179881]
The performance improvements are impressive. Thanks for that.
Some issues:
erosion of terrain does not work. I get a crash everytime i try to use it.
the behavior of the branch node in materials changed. The input pin >= is now a > but the label is still >=.
activating the rift mode is a bit unstable
still no gamepad support in umg
[/]
Hey DaEmpty,
I’m looking into the stability you mentioned for the rift. Could you make a post on the AnswerHub (https://answers.unrealengine.com/index.html) to elaborate what you mean and what behavior you’re experiencing with the rift and I will continue to investigate there.
[=Exelcior;180895]
Hi RythmScript, there has been some changes to montage editing in 4.6 - and it will auto-scale if anim sequences are shorter than the segments in the montage as otherwise the montage would just keep showing the final frame of the sequence. Is what you are seeing or is it something else?
Benn.
[/]
Maybe sorta? The problem is, I built my montages, and then later, I went back and retuned some anim stuff by changing the play rates of the component animation files (mostly setting the play rate to 1.3x or 1.5x). worked fine; the way UE used to handle it (at least as of 4.5) was to simply play through those portions of the montage faster. So if I had a notify or Branch Point that occurred 25% of the way through a clip, it would always occur 25% of the way through a clip, whether the clip was played at 0.5x or 3.5x, the Branch Point occurred at a certain point in the underlying animation.
NOW, it seems that changing the play rate of the clip simply adjusts its length in the montage, meaning that at 1.3x the playback rate, the Notifies, Branch Points, and segment start/stops all start occurring 33% later than they’re supposed to. It also makes it much harder for me to retune animations if I want them to play a little faster or slower after seeing them in action a bunch. I CAN work around , it’s just a PITA since there’s no good way to move a whole bunch of notifies and such at once, so I was sort of hoping was a bug rather than a “” and the 4.6 official release would fix it without me having to manually fix every single melee combo montage I’ve created so far
[=NickDarnell;180866]
Pure in UE4 only implies that it has no side (doesn’t set any values), random() and time() are both pure functions. In Slate all data bound to the UI needs to come from a const function, so the extension to blueprints mimics by requiring the binding also be pure, otherwise very possible to break stuff.
[/]
Yeah, I can see how that might cause some problems if you let HUD draw calls change the game state… drives me nuts though, since I currently use the HUD BP to do things like parse a score float into a legible Score string (i.e. turn 12343526.0002 into 12,343,526) with For Loops and some String vars for temporary storage, and now the HUD can no longer perform any of these operations so I have to move them somewhere else.
[=Demolition Man;179790]
Hi again
I may have found another. time the problem is with the apply damage node within blueprint. When I run my game in the editor and step on my landmine which is coded with blueprints, it correctly fires off the radial damage routine. However, my pawn class does not appear to be receiving any sort of damage event message at all. So even thought the landmine should score 750 points of damage the result is nothing since the pawn class never receives the information. was running correctly in 4.5 and I was getting the information via the any damage event in the pawn class.
[/]
[=;181122]
Yeah, I can see how that might cause some problems if you let HUD draw calls change the game state… drives me nuts though, since I currently use the HUD BP to do things like parse a score float into a legible Score string (i.e. turn 12343526.0002 into 12,343,526) with For Loops and some String vars for temporary storage, and now the HUD can no longer perform any of these operations so I have to move them somewhere else.
[/]
You can still do it in the WidgetBlueprint, just do it in the Tick function and store the result in a member that is bound to the UI.
[=NickDarnell;181162]
You can still do it in the WidgetBlueprint, just do it in the Tick function and store the result in a member that is bound to the UI.
[/]
Great work been testing the new version out the past week and a half or so and loving it. Just curious has the build lighting been fixed for the github version?
EDIT: Building lighting does seem to work for github version now
[=NickDarnell;180866]
Pure in UE4 only implies that it has no side (doesn’t set any values), random() and time() are both pure functions. In Slate all data bound to the UI needs to come from a const function, so the extension to blueprints mimics by requiring the binding also be pure, otherwise very possible to break stuff.
[/]
Thanks to Diat Funa and Darnell! does clarify the matter quite a bit. I guess I was just taken aback by the fact that the UMG HUD functions didn’t work in 4.6 when they worked in 4.5. As I mentioned in my post, they started working again once I checked the “Pure” function box option for each of the items in the HUD (i.e. Health display, Armor Display, Shield Display etc.)