Unreal Engine Livestream - Building Better Blueprints - October 4th - Live from Epic HQ

so exciting!

No updates on this yet. I promise we’re still pulling for it though.

I am still excited about this! Will it ever happen? I am asking because Zak is one of the best people to do it. It’s like Feng Zhu in art. Really! :wink:
He usually heading straight to the point. He describing a practical examples. He have notes ((in his notebook) so you can see that he is prepared.) And he is very practical.

Please, please, please!!! :smiley: His videos and preparation gave me more experience than a book or your documentation… :wink: And I’ve been developer for 13 year. You should disable his holidays and order him another crunchtime because this video. What can be more satisfying than serve people? :p:p:p:D

@N_ck-cz Yes! We’re going to be doing it this week. :slight_smile:

Thanks. Christmas is earlier!

I’ll ask my question during the live stream but just in case;
As a designer who is learning Blueprints for protoyping and trying to improve my programming skills, does Zak have any tips on how he goes about planning his blueprints before touching the computer? Sort of like sketching or writing pseudo-code?

Excited, wish there was a way to go meta with the blueprint system from within a game. How would one go about adding a live coding feature within a game?

Any comments on meta programming through the complex forest that is the Unreal Engine API would be helpful.

Example: If we wanted to collect meta data from the user’s editor session and feed that into a learning database (done), then how would could we send that input back into new sessions of unreal engine editor?

We are wanting to recreate that DOTA learning system, but for observing game developers and acting as a sort of Jarvis system. The Tensorflow plugin by Getnamo rocks, but we simply lack the CS background for undertaking this, so can anyone help a bunch of scientists Macgrubber something like this?

Our idea is to observe collaboration sessions between users, where user’s each posses editor abilities and can build together in one space. Originally we thought to include the VREditor Actor simply into the Cardinal Menu Project, but that didn’t quite work out.

Where would you folks start, as a question of best practices for this sort of work/coding?

You could play with this making a live coding function, but simply allowing text input and then taking that text and using it as another node’s input. You use this all the time when you make interfaces…you just have to take that concept further. It should be possible to build a type of modular interface that takes blueprint nodes and uses them to create widget’s that essentially function as the same thing, then make the changes propagate from the widget to the real blueprint node.

Making a shared editor though, that’s a doozy… Since Unreal still executes every blueprint sequentially, just like a line of code, you can run into trouble when you have to worry about replication. You’d be better off brainstorming on exactly WHAT concepts you want to have at play or play with, and go from there. The original Garry’s Mod is a perfect example. If you haven’t heard of it, I would check it out.

Zak - for real? I thought this stream was just a Myth. we’ll see if you’re real or not, Stream… we’ll see!

ha ha—it seems surreal that an internet event is canceled due to weather.

It is a reminder for all of us (well, at least me) that even on the internet, it all happens at a real location with real people!

Whoever handles the Twitter feed didn’t get the memo, it looks like they posted the announcement an hour after you posted the cancellation. Head’s will roll, Amanda’s gonna kick butt.

https://twitter.com/UnrealEngine/status/1047871557211750400

Hey Everyone!

Super sorry we ran out of time on today’s livestream. I really tried to get everything fit in, but it just couldn’t happen.

But… GOOD NEWS, EVERYONE!*

After the stream I went back to my desk and re-recorded the WHOLE thing as an impromptu training video. This way you don’t have to jump back and forth or wait. You can watch it all right now (or as soon as YouTube is done processing it).

This is on my private YT channel, since it’s kind of a non-pro video. It’s not studio quality, it’s just me with a headset.

Ask questions here and I’ll answer as best I can. Maybe those of you who know the answer already can help me out!

Love to everyone! I hope this is helpful!

*Most of you probably hear Prof. Farnsworth when you read that… I hear Prof. Putricide. Make of that what you will.

Zak, you are the best! Thank you very much!

Thanks, I enjoyed part one and am looking forward to more!

Thanks also for pointing out the ā€œtrickā€ of disabling all BP’s ticking by default, (because even if you are not using an Event Tick, they still ā€œTickā€)!

In a small project it’s obviously easy to fix this by unticking the ā€œStart with Tick Enabledā€ option in each new blueprint (class); but could someone please clarify which command you need to use and what INI file you can do this in? This seems the most sensible way to go i.e. turning it off for everything unless you explicitly turn it on.

[I made a quick attempt, ahem! I added ā€œbCanBlueprintsTickByDefault=Falseā€ into ā€œEngineSettings.iniā€ but that didn’t seem to do anything. I’ve also tried turning it off in ā€œProject Settingsā€ -> ā€œGeneral Settingsā€ -> ā€œCan Blueprints Tick by Defaultā€, but opening a new Blueprint Class still seems to show that Tick is enabled by default.]

With regard to tips and tricks like the above - are these collated anywhere? In my case I’d never have found this out if I hadn’t watched this particular video.

Regarding various ways of implementing hover and interaction without Tick.

I had recently gone about this using a combination spring-arm/collision sphere parented by the player camera working with a similar BPI implementation, which has worked out well and kept me out of Tick instead using the ā€œon hit & begin/end overlapā€ events of my collision component.

​I don’t have to use any timers which seems beneficial.​​​​​​

I’m just wondering if there are glaring performance or other problems that jump out to veterans with my proposed method? Perhaps spring arms are more intensive than a trace draw?

I’m definitely not a veteran and I have no idea if any of the following is correct, but I’d imagine that using a collision sphere isn’t much different from using a sphere trace in tick. The collision of your sphere has to be checked somehow, after all. Spring arms use collision and all kinds of fancy extra features as well, so they’re probably even more expensive.

Based on what I’ve been told in the past, line traces are generally the cheapest method of probing the environment by far.

I guess the question seems kind of silly, of course a trace is going to be super low resource intensive, my thinking was that Epic probably optimized the heck out of the components like collision spheres and spring-arms, and using them would piggy back off their components rather than trace every frame or .2 seconds or do some math.

@franktech I’ve only done three iterations or so, but my setup working from something like the 3rd person pawn example is like…
Capsule
-Mesh
–CameraSpringArm
—PawnCamera
----DetectionSpringArm (arm length = max detection distance)
-----DetectionCollisionSphere (collision channel tuned for my interactable actors)
In that last collision sphere I use the On Component Begin/End Overlap events, check if my other actor has a tag I want (even though it won’t collide with non-interactables thanks to collision channels, I double check), check if this actor is already the subject of our focus, and if so I keep/toggle on my post process effect or change crosshair colors or do whatever magic. If the player is still and mouse not moving, and an object were to pass by, the ā€œdetection springarmā€ shortens (it’s collision is with visible objects), the ā€œdetection collision sphereā€ gets overlapped if the object is in it’s collision channel and highlights or doesn’t accordingly.

I’m still learning, maybe it’s totally goofy, I was just wondering and this is about best practices, and I’m all about avoiding the Noid-err I mean Tick. FunFact You can disable scene components individual Ticks too