#blueprint
402296 messages Β· Page 758 of 403
your current way is pretty certain faster than the one that i had in mind as alternative
oh ok
even tho we are probably talking about nanoseconds π
not on the 5 year old mobile of my gf
π
final addition to the code
problem solved, channel can be closed now
i got too much coffee i guess
i may be wrong, but try that on "begin play" instead of the construction script
he does, construct is just a name of the function
from what I understood
ooh sry overread the beginning
Is it the cast that is failing? Maybe print out the display name of the object you're feeding into the cast?
maybe the pawn is not yet possessed on begin play, try to use possessed event
I like Niyo's suggestion π
I like it as well
run the Construct function on that event
yes, you can do it like that
if you want to be more generic you can create a delegate and broadcast it on the OnPossess, and then bind on it from actor component
use OnPosses
posess
possess
damn
πͺ
Im trying to accomplish a werewolf-type transformation, where the player starts out as a human and you can see him changing into a werewolf mesh. The problem is I have no idea what to do, any ideas or pointers in the right direction would be greatly appreciated!
To get you started, look at morph targets (or shape keys, if you use Blender) and how to lerp every PBR input with a single scalar parameter
It's kinda similar to how Epic did the transformation of Owen in the UE3 Samaritan demo.
https://www.youtube.com/watch?v=XgS67BwPfFY
Revealed at the 2011 Game Developers Conference, the real-time demo of "Samaritan" shows what Epic wants to see in the next generation of games.
The features demonstrated in this video are available now in UDK! http://udk.com/
damn that demo looks cool
and its been 10 years
only thing i do i align nodes in a straight line with Q and push them around for ~9 hours per day lol
It's a shame that we never get the executable, but at least the main guy (Owen) did make appearance in the content example project, even if it's just his rocky form. The bad guys also got used on Matinee/Sequencer demos
that demo shows once again that good artists skills are more important than the tech behind
For sure. Good artistery can make bad tech look good. Good tech cant fix bad artistry π
Well, Arkham Knight is one game that managed to get into the same fidelity as the demo, with the same engine nonetheless.
wait that trailer is from that game?
The demo? No, it was Epic's demo project. Arkham Knight won't came out until 4 years later.
yea, im looking at the game right now, the atmosphere seems to be very similar to that tech demo
IIRC at the time (2011) they had to chain together 3 GPUs that were at the top. Probably GTX 670 or something.
"realtime" π
they did a good job at drawing attention away from that
so job done well
Incredible! This is exactly what I need, thank you!
<@&213101288538374145>
is there anyway to activate CCD through blueprints?
If it's exposed you can grab it through your actor's collision component
yeah, there is a checkbox in collision category
the problem is: i made a track with a spline and spline mesh, so the option ccd is not present on the blueprint of the "track generator". I setted up the CCD on the spline mesh component, but it behaves like nothing. my ball keeps on going through the wall if it has high velocity
... what kind of speed are we talking?
it's a pawn system, not character system. I apply an impulse/velocity on the ball
and can you check if it happens for slow speed as well?
maybe it's worth logging the speed just to see what happens
wait i grab a sceen and show you
tbh I would ask in #legacy-physics
right
Anyone can tell me why the top part is not being sent to the box while the bottom part is. There seems to be something wrong with the for each loop but have no idea why.
Quick question - what's happening here in terms of timeline behaviour? Are the nodes after "Set Intensity" getting called repeatedly as the timeline progresses? Should they be attached to "Finished" pin from the timeline instead?
Yeah
Should I instead put those other nodes before the timeline?
Anything hooked to the Update pin will be called continuously
Depends on when do you want to run them
After the Timeline has finished? or before?
well the basic behaviour I've wanted is to have the lights slowly brighten up
that's about the only thing that guided me to set it up this way lol
I remember that on the way down I had to put the set visibility after the timeline so that when the lights are dimming, they turn off after the light goes through the reverse timeline
Those seem like two different cases
When running forward, you want those nodes before the timeline
When running backward, you want them after the Timeline has finished
yes?
yea looks good
sanks
the switch off (bottom) path isn't working though, so gotta hook it back to the update line?
no
that would make it invisible on the first update
whats happening before all of this (whats not in the screenshot)?
no it works fine because that's how it was before I thought about improving this
that can't work fine
Just a branch to see if it's dawn or dusk
sorry forgot to mention there was a condition to check if it reached 0
so when it reached 0 it would then fire it
essentially what Finished is supposed to do I think
yes
yet attached to the finished pin it curiously doesn't fire
I have "use last keyframe" enabled as well
It's generally a bad idea to do an == check with a floating point number. Even if you are setting it to 0.0, it could still somehow end up being calculcated as 0.000000001
good point
use NearlyEqual
^
wait no something is really weird. The timeline seems to persist its last-state. So at some times if I play the game, it flips the whole cycle (light during day, off during night) and then after that it's correct
Hi. How do we loop the camera shake when I am still pressing the run or spring key? It seems that there is no looping within the camera shake class, I could set it to -1 on the oscillation duration but it doesn't stop the camera shake when I release it. Thank you
and What's before the branch?
you have to do it over time
I'd suggest a timeline for it
just the event
@spark steppe don't do it!
what if you use the play from start from the timeline instead of play?
jesus christ
I'll hook it up though I'm having a hard time to repeat the freaky flip behaviour but that would be the solution indeed
REPOST. Wrong pic
Hi. How do we loop the camera shake when I am still pressing the run or spring key? It seems that there is no looping within the camera shake class, I could set it to -1 on the oscillation duration but it doesn't stop the camera shake when I release it. Thank you
you are again working with comparsion instead of your enum
which we set up in a painful process
with blood sweat and tears
I see probably connected to the scale float right?
I knew it! Haha I know, but it's like this only here because I want fine-grain control over this part
otherwise I'm using the enum for everything else!
well you removed the image so now I can't see what you mean
Sorry I reposted it. But I think I got the solution, i set the oscillation duration to -1 to continue playing and on the walking function I added the stop all camera shake π
Hello everyone and so happy I found this page. I'm working on a game and I'm makeing a full body character for the game and doing IK and everything else I'm having issues with picking up guns in the world. I've watched a bunch of tutorials but they are all for just the hand models and with a full body it doesn't reall work well. The only other problem is the arms do not stretch or scale to the controllers when you go farther than the arms length can any point me to a video that would help or I could add when ever info you would need
Do weapons need to be static or skeletal meshes mainly firearms? Any help would be appreciated
I don't think any of these questions pertain to this channel. I certainly don't know the answers. I'd look in #animation and #graphics. failing that, #ue4-general
for picking up guns in the world, I think I need to understand the use case
Well I'm not worried about the animations yet I can do that just can't get it to go from the ground to my hand. I'm designing a campaign game so the player will be able to pick up guns and they go into inventory but right now I'm mainly focusing on just being able to pick them up like pavlov style I'm also doing this in vr I'm sorry I didn't say that.
yeah but like
what do you mean get it to go from the ground to you hand. do you want the character's animation to go down, pick up the gun from the ground, and then use it?
Well I'm vr and full body when you bend over the animation is already done in the IK system. Would a picture or video help explain?
definitely
One second then
https://youtu.be/OarTVMBBrgQ this is my prototype from like 3 weeks ago I've cleaned up all the bugs and it works great now just working on weapons
I'm going to record a new video that shows what is going on more right now while you look at that so I can explain more
in conventional games you could conceivably fake the pickup, but I don't think you'll have the same affordance available in VR
Ok so the video I'm uploading now is shows some weapons on the table I've made alot of trials so the ar on the table is a parent and child class I added a static mesh and was working on picking it up but in static mesh you don't have the ability to drop the clip and reload so I have to use a skeletal mesh. The guns that go flying are the skeletal mesh but the two that go into that hand are static mesh they are in the same blueprint I don't see why the skeletal mesh goes flying away and won't let me pick up but the static mesh has no problem. I've got 5 min left on the upload and I'll send the new link
And also saying thank you so much just for looking into this I've been racking my brain for a week now trying to get it right I was watching one of vr macros videos and he said to come here for help in the comments.
If you need anything to help you understand more just let me know and I will do my best to supply that information
https://youtu.be/Uo5fFkf0Rmk here is a better look into my problems
the ar4 goin at a 90 inst my problem i just put the static mesh in the skeletal mesh so i could see if i was getting anywhere close to picking up the skeleton
this is the ar 4 parent pick up system
this shows the hierarchy sorry i should of showed that
the logic you have requires the gun on the ground to be the same that you hold. you can do that, but I'm not sure if VR requires specific sockets for the hands or whatnot
have you considered asking in #virtual-reality ?
im so sorry i didnt see that channel
ill go there should i just post the videos and this there or will the bot get mad at me for cross post
no worries, that question could still pertain to this channel
it's just a question of expertise
the bots won't but mods will
generally wait a bit before asking the same question in multiple channels
rule of thumb is 1 hour
yea very true and thank you so much and ok ill go work on my project and then come back to this youre awesome man
good luck
Has anyone had any issues with on component begin overlap not working?
Oh and gravity is broken too
I set an actor to not use gravity and it still does
interps usually happen over time
looks correct. you could use a rotator instead and take the Z value
is there a way for me to like drag the lines around? I don't like them all merging together it makes it look bad
the target rotation is the rotation you want? I don't know which rotation you want
You can double click on a line and it'll create a reroute node... You can also create reroutes by right clicking and selecting "Create Reroute Node"
thanks
well you can take the previous frame's rotation as your current rotation and this frame's rotation as the target
but generally you do this at the cost of responsiveness
which is why I said it's better to do in animation
so it's just the cosmetics that are affected, not the controls
if you imagine every call to the tick function as being a sequence that happens over a frame
you can do something at the beginning of the frame
and you can do something at the end of the frame
so for instance if you do all your logic at the beginning of the frame, then that logic isn't used again until the next tick call, next frame. this gives you opportunity to save that data as the data of the PreviousFrame
Isn't that basically what he's doing now? The Finterp node takes the current value as input, then sets the current frame variable (which would be the "previous" frame value)... Next tick it'll be reading the current value variable again which is again, basically like reading the "previous" frame?
you may find that it will still be extreme enough for people to feel it btw
no they're setting the value before doing the logic. that makes it current frame, not previous frame
in this case, after doing the logic, they could do something like TargetRotation = CurrentRotation
just as an example
anyway order of operations matter
I want to spawn grass on a rock randomly generated how should i do this? I need some advicve
Yeah it worked!
but you still want to get rid of the traces, i guess
you can use the actor bounds to limit the area where you trace in
or is your area really 20.000 x 20.000 ?
If i had a material i could only apply the material on the rock and then i could spawn the rock with grass aldready on it. But now i spawn rocks first and then spawn grass using a bad method
neve rheard of that what is that?
more of a #graphics question, but there are foliage "grass" types that you can apply per material.
these spawn automatically
it's actually a box thats around your actor
I guess this would only work on landscapes and thats not my case
also i would reduce the traces on the amount of grass you want to spawn
a box around my rock?
they're based on the material, not on landscapes
the material doesn't care if it's applied to a landscape or not
that sounds like the best approach
wait i dont understnad. So you mean that if i applied the material on the rock it would spawn grass on it?
yes
materials aren't the same as just a flat "texture"
they have shading logic in them that allows for greater flexibility
is it called foliage material? Or what is the name
yeah i agree!
Hello guys! I'm using the default first person shooter template for a project I'm working on. Does anyone know how to make it so the worlds kill plane doesn't delete my character?
I know you can set the kill-z distance in the world settings... Apart from that, I'm not sure there is a way to stop it from destroying the actor at all.
Yeah I've been messing round with that. I'll see if there's a way to do it in the gamemode itself. Thanks anyways for the fast reply!
It's all good, I managed to find a tutorial in the docs about respawning a character. Thanks again anyway π
@orchid spruce you can override a function,but its c++ only π¦
You could also block the character from moving below kill z
Locking them right above, and doing your own handling if so
just set the killz to a big negative number, then make your own overlap box at your kill z
that is how i have seen games do it
funny how killz is read differently from killZ
There's a space between kill and Z, that's why I guess π
Probably because the "Z" is a capital, which means we read it differently
It's like a parent letter
So I used the KillZ Volume in the volumes menu, it seems to do the same thing, it just destroys my actor
Hi guys! Im totaly new to BP. And having so much issues with the target on blueprints, kind of solved most of the issues. But I cant find how to get reference from an Widget. Any ideas?
I tried this but did not work π¦
i have a random character generator and when that character is created he has a struct, which is filled with attributes on creation, how can i create json file with specific fields from that struct?
You usually don't want your widget controlling or doing anything outside of the widget blueprint itself.
Think like widgets are just visual display of the data they have access to.
Instead, feed in values to the widget. References to objects, or what not.
For now, if you just want the first instance of the Widgets array that you have (that's what that cube like icon indicates) you can pull off from the "Found Widgets" and start typing "Get" and you should see (Get a Copy). Use that, and you can then get an individual reference from the array.
Thanks @dawn gazelle for that reply! Iwill try it out π
Nothing available directly in the engine in blueprints. You can code your own functions in C++ or there are JSON plugins on the marketplace. There's a free one that I haven't tried but looks to convert structs into JSON. https://www.unrealengine.com/marketplace/en-US/product/dbjson
ty, will check it out
Hi! I want to create an thirdperson shooter game (Singleplayer) but i donβt know what type of game i should makeβ¦ does anybody have an idea
I have plenty of ideas that I can sell to you for $20 a piece π
I charge $19
dammit
You mean ideas aren't dime a dozen?
Not when they're high in demand.
whoever is selling ideas for a dime a dozen has too many ideas that aren't worth much
ah you're selling premium ideas?
my ideas are high quality. they've been resting in oak casks for years until they're ready
Labelled as "CE's Finest" π
best enjoyed while lightly intoxicated
Try narrowing it down a bit more to what you want to do. Whatcha wanna shoot? Whatcha wanna shoot with? What's gunna shoot out of the thing you wanna shoot with?
or even... do you want to shoot?
Good point.
or start formulating interesting questions
what if you can shoot, but all the targets are wrong targets?
hey there i used to be a developer in other game engines but i recently moved to unreal engine, is there any good blueprint tutorial series on youtube you guys suggest?
if you check the pinned messages there's a bunch
which languages have you worked with?
thank you, i have worked with lua
ok well, I don't know lua, but you may find blueprint a bit more structured since I know lua isn't necessarily OOP based
im planning on learning blueprints first then move onto c++
while you're learning blueprints, if you're not already familiar with OOP principles, I would suggest learning them
as they are both applicable to blueprints and cpp
you'll end up getting much more mileage for your buck
ooh thanks for the tip
you're welcome π π π
Also go to learn.unrealengine.com, there is plenty of free high quality tuts to get you started, including introductions to Blueprints.
how do i get the rotation of a linetrace?
alright thanks!
Is there a way to crate curve tables inside the engine?
Meaning you know the start, then end and you want to know the rotation of that vector in world space?
Calculate the vector End-Start and pass it to MakeRotFromX
Or find look at rot
Also yes
This is literally what FindLookAtRotation does MakeRotFromX(Target - Start);
I expected as much^^
Is there a button to compile all blueprints in project/folder at once?
wouldn't playing in editor compile all blueprints?
I think no, last time i tried it it didn't
I am thinking of Auto Recompile Blueprints in Editor Pref under PIE, but this is only for the current level, though I'm pretty sure its more than that because I launch a separate level from my main menu
hm i created a public function for a blueprint and try to call the function from a reference in another blueprint
but the function doesnt show up
any idea why?
oh nvm
i referenced it as an actor instead of the blueprint type
π€¦ββοΈ
I hope you're dedicated enough to do that. When you get to the point where you are really good with blueprints it's hard to start all the way from the bottom again with c++
it looks like it should, if you disconnect Jump at the end when the input is pressed, does it un-crouch though?
Bp and cpp are the same thing.... tjebonly hurdle is pointers and you can learn it in a day
Eh, not really. When you get to the point where you're really good with BPs, you'd sooner or later craving for performance, and C++ is where it's at.
nvm - found solution, use Get Owner (Target is ActorComponent) then plug into New View..
Also remember that BP and C++ can go hand in hand. You could get the benefit of C++ ticking and the ease of asset loading of BP.
it still un crouches without the jump node, it seems like it gets either eaten or ignored for some reason
I really need some help! Im spawning rocks in my environment through instancing. I want to access the location of each rock so i created a map but i couldn't get that to work. Now im doing the classic array. Im having two arrays, one instance array and one vector array. Whenever i want to spawn a rock it does not show in my array how many rocks there are in the array.
what if you branch before the jump?
rock has 0 elements
You were that eager? For me it was really a lot of "I could do this so much easier right now in blueprints" the whole time learning c++
what condition would I branch with?
that IsCrouching is false
that said I've seen maybe millisecond differences between blueprints and c++ when blueprints are used properly
Check size to fit when setting the array element
Or use Add
Yeah. 60 FPS (16 ms) in modest CPU is one of my top priority, and with BPs, I can't do much with crowded situations.
Though to be fair, BP is good for proto-ing the systems or asset loading, so you have some reference to translate to C++.
I'm with you on that. If it was equally as fast and had the entire API exposed, I would only ever do blueprint. I know my way around cplusplus decent enough but I'm a very visual person and visual scripting just clicks a lot better.
that has the same effect, I want a single input to both uncrouch and jump on the same frame
If i use add it wont work. Whenever i move the main rock actor around the small rocks will find new location and it will into to the recent rocks, i need to start over thats why im using set instead of add
and the IsCrouching bool talks to the anim bp right?
I know asset loading in C++ can be fucking painful, thus sideloading the ticking to C++ and doing asset loads in BP.
Then check Size to Fit
Man I hear your, some people like things crystal clear and I respect that, a few ms differences here and there aren't that important though in my opinion unless it's a super crazy competitive game where one ms difference can change the game at a given time
that seemed to work
the bool isn't connected to anything yet, right now it just says whether you're crouching
Honestly though I can't wait for blueprints in 10 years. I have such high hopes, it will be even more spectacular
Things that are all depends on how complex your stuff is. I took a system from 8 milliseconds per frame to 0.05 by moving it to C++
So this doesn't work?
that has the exact same effect as not having a branch there
I don't even know how justifiable that is because it's not even a noticeable difference xd
But it would have taken much more time to prototype if I had to do it all from code with compile times etc.
I don't think the eye could catch that not even close
That's an over 100x speed up.
8ms to 0.05ms
I don't know how you can brought that up for optimisation context π€
And that's just for one system with a test level. Totally unusable in production without the speedup. That's half your frame budget gone at 60hz.
a difference of 8ms to .05ms is extremely noticeable
It's a lot of math and traces tho. Realtime fog of war calculations. For stuff like hooking up inputs and handling events BP is plenty fast.
I mean, sure, it's still less than 16ms on it's own. Nay, 33ms.
But multiply that by 10.
you guys have eyeball reaction times like jesus
And I was terrible at CSGO, mind you :P
there are 1000 milliseconds in 1 second
if you can notice 0.05 milliseconds
you might be god
It's the matter of scaling up, not necessarily inhuman reaction times.
that's not even the whole picture
if it has to happen every frame on top of everything else 8ms is way too slow
if the argument is you save 1 millisecond here and 2 milliseconds there then I feel like it's situational
well, it doesn't help with or without, so..
but they really don't add up unless there's a lot going on
That's not what the argument is. The argument is, that you have 16ms to work with total. If you blow half of that with 1 system before even bringing combat, ai, pathfinding, UI, and everything else in the mix, you're off to a bad start. It's like shopping for food and you blow half your budget on 1 item. You still have to get other stuff.
Honestly in a test map you should shoot for under half of your alloted budget. Then when stuff gets a lot bigger in production you have breathing room instead of constantly having to refactor.
I'm getting confused, MLE_uh is responding to this while I'm helping with their problem, I thought MLE_uh, you were saying that the branch adds an extra ms delay
Nah one branch ain't gonna do anything. A thousand per frame will tho.
Again, to be fair, BP has advantage of quicker iteration time and easy asset loading, so one can build a proto of the system in BP, and use that as a reference to wrote C++ code, and still use BP for asset loading without using BP tick.
oh no that response was completely unrelated to my problem
Reminds me of that one case of Yandere Simulator 
Oh yeah for sure, that's exactly how I do it. I do everything in Blueprint and then move what needs to be moved into c++.
is someone doing get all actors per tick??
Hopefully not.
what's the optimization spiel about
I don't think timing has anything to do with my issue, the jump node just isn't working in the same input as uncrouching
Show your setup again.
oh yeah no if that's the argument then you guys are right 100% if your budget is 16ms and that's what you're going for
@solemn zephyr Is Un Crouch a stock node or did you make it? Also is jumping blocked by crouching?
sorry late reply actually in a league game
Like if you just call jump when crouching does he jump?
I personally don't think it's that serious though unless you are going for a highly competitive game
un crouch is a stock node for the crouch function in character movement, you could jump while staying crouched before I added the un crouch node
Try un crouch after jumping
might be that it takes a frame to uncrouch
omg is this not bp talk??? take it somewhere else
Yah there's prolly some CMC wonkiness between the 2 states.
excuse you, this is exactly blueprint talk
thank you, yeah its a long journey hopefully i stay motivated, but i have some experience with some other languages so i know what is going on, even if a little its an advantage :D
@solemn zephyr
I tried that, changing the order doesn't fix it
how does that make it more clear haha
My game is a single player game, yet I'm more concerned about getting more performance in modest CPU, as opposed to ignore performance issues altogether.
Maybe jumping cancels crouch already internally.
it has the exact same effect still
maybe use a secondary color π
@solemn zephyr
I considered that but I want to avoid having to wait a frame if possible
I'll try adding a wait node though
Hi there am I allowed to ask for help here
What happens if you jump first?
I'm saying you might not have a choice
Does he jump or uncrouch
changing the order didn't change anything
As long as it's BP related, yes.
Well which one does he do?
Ok ty
the same thing as before, un crouch in one input and only jump if already uncrouched
does it work with just the jump?
So basically
I got this error I am trying to migrate 2 ue files together
that is the error bit
What's the error message?
Seems or work on the other side
jumping works fine when not crouched
ok
go into your animBP
I checked again and it looks like crouching does disable jumping though
and see if making a connection between jump and crouch works
definitely commendable to go the extra step, so then you do most things in c++ then over blueprints? or do you use them both equally?
I don't have any crouch animation yet, the character stays in their neutral pose
you're not using a template?
it just changes the hitbox and prevents walking
Have you tried refreshing the nodes? Just right click on the event and select "Refresh".
I'm using the sidescroller template, that doesn't include crouching
Seems something to do with the custom event output
OMG it worked
does your character have a character movement component?
yes
I dont get it cause I restarted it about 5 times but sure Ty
look for options there
β€οΈ
Yeah, BP nodes can be funky at times
Don't thank me yet. After refreshing them, try hitting the compile button near the top left π
I've checked the character movement comp several times and don't see anything related to jumping while crouched there
it doesn't have any afaik
since you have booleans for both, you can manually check
I personally set things up in BP first to get the system working at all, as intended, then make a C++ code by manually translating the nodes and the flows.
Wait the hoodie It did not work
bool UCharacterMovementComponent::CanAttemptJump() const
{
return IsJumpAllowed() &&
!bWantsToCrouch &&
(IsMovingOnGround() || IsFalling()); // Falling included for double-jump and non-zero jump hold time, but validated by character.
}```
@nova tartan delete those add and remove nodes and make new ones dragging off the inventory data array.
Make new Add nodes.
I don't know how to read, write or implement written code
Shit, should've not typing on the phone
I'm telling you why you can't jump.
it's inside the jump function
With the event selected, can you take a screenshot of the Inputs? Like this:
add this on top
in the blueprint graph, find a variable called set jump allowed
sorry, a function
I made new add nodes but its the same erorr
requesting != doing
pretty sure you can't access those
that's why I said wait a frame
yes that's exactly what I mean CE
I use snipit do you need a plugin for that cause My friend said you did but he never said what
Try removing the Add nodes, and refresh the remaining nodes.
unless you override CanJump
If you're using the CMC you need to learn how it handles moves etc. Stuff doesn't just happen instantly, it uses a move list.
So I removed the add and remove nodes and refreshed them so the error goes then I try to add the add and remove then it says its not compatiable with targetArray
I wouldn't count on 1ms
same
depends on your framerate
it might not be consistent
rather do an approach like
shouldJump boolean
that gets checked next tick and cleared
assuming that tick is running already
is there not just a delay by frames node
Hover your mouse over this. What does it say?
Then hover your mouse over this, what does it say?
not in the base editor. all calculations in editor is done by real time
Can check if canjump == true as safety
get world delta seconds is ~1 frame
So the problem is the input on the event.
would this work?
try it
Drag off from your Inventory Data, and create the "add" node. Then drag the available pin on the add node to the event, but NOT to the "New Item" pin that already exists.
it works in the editor but so did the 1ms delay, .5ms also worked
delta seconds should be safe. you're essentially taking an average frame time when doing that
So like that Datura
Yes, now drag the available pin on the "ADD" node to the event but not to the "New Item" pin. like this.
Well it creates a new pin
Right.
Aaa thats what you mean sorry
The current pin is not correct.
It telling you thatβs not possible means you have an incompatable connection
Ty let me see if works
If you can find this section with the event selected, then you can change the variable type of the "new item" pin.
Aaaa
But this comes up is this accociated with the error
Because you still have the "New Item" pin on there and it is NOT set up correctly.
It's not referencing a valid structure.
Aaaa
Oh. I didnt notice datura showing this. Mb π
When you hovered over the struct on the event, this is what it read... It's not the type of structure you want. What you want is a structure of:
man blueprint is fun
what's the difference between world delta seconds and framerate to seconds?
technically nothing
but I don't know where you have framerate to seconds
world delta seconds gives you the frame time for the last frame
Ok ty
World Delta Seconds puts into account the time dilation.
I saw it said that but don't know what time dilation refers to
Basically the speed multiplier of your game. Lowering time dilation down (< 1.0) can create slow motion.
slow motion
I see, so I'd want to use world delta seconds for the jump delay in case I want to add any slow motion to the game
it's just always going to be a good indicator of the avg frame time at the time you use it
no matter what happens
Hi! Quick question: how can you set the location of a bone relatively? So it doesnt depend on the world axis
it's future proofing yourself
use it for timers
unless I want the timer to slow down with time dilation?
technically the lowest time a delay can do is 1 frame
then you're facing edge cases
actually no
How do i get the width of an actor? If the scale is 1,1,1 and i have a cube how do i get its width?
so "takes into account" means it is affected by it
what about ticks? aren't those a steady 60hz?
unless I'm completely misunderstanding them
ticks are using delta seconds all the same
everything in the game
updates per frame
even timers that are faster
will only update on the next frame
(multiple times, if they manage, but still, they sync with frame time)
Time dilation adjusts WorldDeltaSeconds so stuff just slows down alongside the world.
WorldDeltaSeconds = ActualFrameTime x TimeDilation
(previous frame time)
doesn't everything being tied to frames make it very difficult to include frame rate options in the game?
Ya I've always wondered about that. Is there a infographic around that goes over the frame timing and order?
Don't tie to frames, tie to time.
Don't say "this lasts 5 frames" but instead say "this lasts 0.08s"
you can look at the update function which should be somewhere in engine
then shouldn't I make the jump delay 16ms rather than one frame for consistency across different settings?
delta seconds is fine
it's the closest thing you have to a true frame time
because the engine doesn't know, on its current frame, how long that frame takes
so it takes hte previous
yes but a delay based on frame time will change based on framerate
so if I want the jump delay to be consistent and include higher frame rate settings should I not make it 16ms
You make it whatever time you want.
That's the whole point.
a delay is always based on frames. even when set to 0 ms it will always take 1 frame
Well yeah it'll always round up to frame
It gets evaluated each frame to see if the time has passed
if that's how it's checked why can't I just set it to 1ms
you can
Because what's the fucking difference? You effectively have a minimum delay of 1 frame.
the length of a frame varies based on frame rate
That's like asking why you can't spend 0.001 dollars.
Yes your minimim delay will be 1 frame. Deal with it. Or write a whole new tick function to run at arbitrary timesteps.
the engine limits you to the tick groups that exist
how many frames it takes isn't what I'm talking about, I'm talking about real time, a frame delay will be half the time at 120fps as it would at 60fps
That is true. Now what's the point?
So don't use a 0 time delay?
yep. so it will take half the time at 120 fps
Generally I use those to just deal with race conditions
You don't have to, you can design your stuff correctly to not require a delay. But if it works it works.
if you're aiming to have your game run at 120 fps you have to design for it basically
framerate independence would be nice
Design it right and you can run your game at 1000.
I used to think timers had it
but no
anyway this conversation is moot since it's not something you can easily fix in BP, and it will have little to no bearing on your actual game
yeah this is a bit pointless
Ok so on a other topic, what's the approach to making your pawns completely agnostic to whether they're driven by a PlayerController or AIController? I'm thinking just have Player inputs call into an event layer, and AI also calls into that same event layer.
Anyone here ever done pawns that AI drives around by inputs and not by pathfound movement?
mm no
Basically where ai says "move forward" not "move to that location"
I don't think that thinking works with AI well because AI is generally goal based
or I should say, purpose based
You still have the goal, it just only exists in the ai controller
It's just interfacing with the pawn exactly as a player would.
but IMO what is smartest is having either a component or the player controller dictate inputs that interface with the AI so you can possess each AI and still retain functionality
for what it's worth I have my inputs in the player controller, not inside the pawn
Yeah I might transition to doing that. I know there's a reason why I switched back to on the pawn but don't remember why.
but I would avoid having AI call into player input events
I don't think that will go down well
No I don't mean that. I mean both calling into a layer.
it could work but again, you'll have to consider how that is a paradigm shift from goal based AI
If AI could output input events that'd be dope but I havent seen that done.
The AI controller still has a goal, it just accomplishes that by controlling the pawn exactly how a player would. This is for a roguelike shooter and player and enemy pawns are all the same base class. Nothing special about the player character.
I mean that's just a systemic approach
but AI will likely still have to control like AI
if you want true player controls for the AI (which may not reflect well in the player experience) you'll have to abstract backwards from the AIs having a goal and how they achieve them
and I think you'll have a hard time doing that regardless
Wait till you see how we're doing ai perception lol
well if it's anything like this, it sounds like you're crossing the river to get water
not to bring that debate back up but just pointing out that the first image works and the second one doesn't so the entire problem is just some kind of bs with blueprint
since adding 0 time should have them both update on the same frame the two images should do the exact same thing
Minimum delay is 1 frame
I see
It's due to how the CMC works, you'll have to modify/extend the CMC or work around it.
never mind then
Hey, what's the best way to get a per BP instance random? I'm trying to manipulate some flickering lights and they end up flickering in the same pattern due to the random number being the same in all isntances.
The problem comes down to passing 2 moves to the CMC in 1 frame, there's some sort of a priority or something there.
Per BP on begin play, get random number.
How are you getting your random number? I'm more surprised that they are all the same than not.
random float in range in an update timeline
Do you have 1 actor with multiple lights or multiple actors?
multiple actors with 1 light each
Show your BP, idk how tf theyd all get the same random numbers.
Are you sure your random float is doing enough to even notice?
Try just multiplying your flicker track by random float in range 0.5-2
Or whatever will be obviously noticable.
Anyone able to help me get rid of some errors? They aren't game breaking but they keep showing up when I stop playing in editor
Not without seeing them. Post enough info for someone to work with.
Here's the error, I'll post the code in a sec
branch highlighted in yellow is the one I'm being directed to
How tf do you get a blocking hit without hitting an actor?
I'm hitting into a geometry brush. Could that be causing it?
yeah it works fine when I hit my valid walls, those are meshes. I get the error when i hit a brush
What does it print when you hit a brush? Is a brush an actor? I'm not exactly sure if it is.
Also it's not like BSP brushes should be used for final level logics.
Yeah it doesn't print anything
Should I be replacing them with static meshes after I've finished testing?
Yes, you should replace them with static meshes once you're done with the level design/blockout.
Awesome. Thanks!
nope gone
then no problem
hi all, I am trying to make it so when a player is within a volume any movement they take becomes relative like this https://gfycat.com/incompletefaintbaboon the only clue I have right now is "in that example the sphere is stationary and only the flat platform is moving. The objects on top of it inherit their location from the platform and the physics stay relative." so the core of my question remains >> how does?
I tried attaching the the player to the sphere, without any success but I can try attaching the player to the platform itself
I am trying to get a runtime BP to work in movie render queue and epic suggests this workflow
I have no clue how to get the "target level sequnece" and target map node
those are soft references
try using "snap to target" for all rules
ahhh thank you!!
the player got scaled up to the size of the platform, I made it scale and rotation world and snap to target for the location rule and while I hover above the platform I am moved along with it, as soon as I touch the platform it zooms out from under me, but then I get dragged along inside the volume hovering again
Hi. Is this timer ok for a stamina consumption tied to running and sprinting? This was using tick previously and I tried using a timer. I attached the beginning of the node to the event begin play. I wanted to use 0.1 seconds but it was not that smooth when the UI bars are decreasing/increasing. So I tried using 0.05 seconds.
The float was also tied to the delta time on the Finterp for the blending of the walk speed and running/sprinting, so I could only find the get elapsed time by handle to derive a float value instead of the delta seconds.
Not sure this is optimal. Thank you
try relative instead of snap? for location
relative did the same scaling
leave scale and rotation to world
ah will try relative location now
what is the question?
Hi. If using this timer at 0.05 seconds and get elapse time handle for float is better than a tick and using the delta x seconds for the float? Thank you
performance wise? yeah it's better, as long as tick is disabled too
tick runs once per frame, at 60 FPS that's around 16.7 ms, or 0.00167 seconds. so updating only once every x frames is fine
I am still flying off the platform unfortunately
Thanks. So this one here right I will disable? Will this not affect the tick from the codes like the timeline (which uses the tick I am not sure) within this blueprint and also the Anim Blueprints which uses tick or is this for this specific blueprint?
Regarding the tick interval (sec), is it the same if I set this to 0.1 or 0.05 seconds and use the default code using the tick?
if you are physically on the platform, and it is moving, then you will inherit some physics from the platform
for the most part it will only affect the actor you are on, and nowhere else. I would not recommend doing it for animBP and PlayerController
both of those are special cases
if you're looking for performance increases, you can also go into every actor and disable tick on their respective components
Thank you for the insights, I will have to read up more about optimization. I am trying to find some parts that can substitute for a timer. So far the template I am working on only uses the tick for the stamina and blur effect. My only concern was that I have several timelines in this blueprint, ow and I also have a weapon sway and weapon block IK in this BP that would be better running on a tick for smoother animations. Anyway, this is only a single player game.
timelines are unaffected, they tap into tick themselves
the special cases here being PlayerController controls the camera, and animBPs need tick to propagate onto the animation thread
me again. so i managed to get hte Target Sequence as a soft onject reference
but cannot seem to figure out the target map
i cant find anyhting discussing how to soft reference the map
Anyone know how to make the mediasound component louder? Making the attenuation radius bigger doesn't seem to help.
Hey there, I have a question. Does anybody have an idea on how to sort out a slot in order such as like with a party unit slot. I'm trying to create a party structure and I realized that when I try to switch units to follow, the slot switches up and messes up the slot order. I had the idea I'd have to put a number on them but just how is there a way to get a structure to follow an other number on each unit and keeps it from messing it up. My units are inside of a map(Dictionary) in the variables of a controller blueprint. Should it be setup differently for unit blueprints? I do require to be able to add new ones in a gameplay and remove.
like an RPG Party?
Very much yes. It is a complicated thing to explain but I will try to ask for how to sort out the slot and a way to keep it like not matter what happens.
Ok very noobish question. I have a project which didn't include any character so I migrated the FPS Character from the template into my new project. What do I need to do know to enable it? I already set the GameMode from the Project Settings to be the one I migrated but when I run the game it doesn't load the FPSCharacter (I put a print in beginplay)
I have my party units in the Controller blueprint I made in a variable map(dictionary) and I've connected to my slots but when I try to switch out them, their slots move around and that's not what I want. I want to slot to function like by number though the unit that has the roll of leader goes in the top while the navigator in the bottle while the normal party members are in the middle. They stay in their certain row even if registered to follow. I ask that is there a hint on how to sort out this way?
Why do you have a map? What's the key and what's the value?
What I meant by map, I do mean the variable.
I'm asking on a way to sort out a slot in a way to keep in order regardless of what happens.
I know what you mean, why are you using a map? Maps don't have a concept of order
Ok, sorry. I'm using a map because that was the structure used in the sample blueprints I'm using cause that's how they were able to set it up when you want a unit added or removed.
If I had to use an array. I guess that would have made sense in a way but that still doesn't quite get to a slot order yet for me.
I would represent a party as either a naked array with leader being Member 0 or a struct with a leader reference and members reference array
May I ask what is the naked array? I did have the idea of creating a Inumeration to sort out their rolls in the unit blueprint. But then make a list in them in some way without being interfered. I don't understand on how a struct would do it though trying to add the Inumeration in it while added in the controller blueprint in the list would have made somewhat sense. But, do you know any sort of structure that can sort out a unit party slot?
I'd presume the naked array is the array chosen from the variables right? And I require to all the player parties their? I still would have required to connect what stats they have when added if that's the case but still, a hint.
Me again.
anyone have any idea how to set a soft reference variable for a Level/Map?
ive tried every keyword i can think of to scrub through the options and cannot get anything that functions
this seems like a good way to do this since the default crouch and jump functions can't be called on the same frame
this seems rather pointless to bring up, I didn't think it worth it but now I'm wondering, wouldn't the Sequence node perform in the order you want in one frame?
it won't, the order is irrelevant, it's something with the character movement comp that prevents the default un crouch and jump from being called in the same frame at all
Sequence node is more of a cable management tool than a real UFunction.
CMIIW, but I think Sequence node also ignores timing of latent functions like Delay.
If your still there, I'll text again later. I'm about to log off. I do really appreciate some of the advices.
I can't tell what I'm missing here though, it's supposed to disallow standing back up if the trace hits but it isn't allowing it regardless
oh I'm blind lol
I forgot to connect the exec pin
the start and end..? you want that?
I fixed it
alright
the exec pin from the trace to the return node wasn't connected
So I am running into this same problem
https://answers.unrealengine.com/questions/946184/view.html
Has to be done in level bp
I do believe
i was already working in BP lol
I am trying to reproduce this
but I cannot get the stupid World Soft References variable (turns out it was nerfed)
Stuck on step 3
https://docs.unrealengine.com/4.26/en-US/AnimatingObjects/Sequencer/Workflow/RenderAndExport/HighQualityMediaExport/RuntimeBuilds/
Pardon me..but what??
are you talking about the load level and promote to variable workaround?
Thank you, this method worked!
I got a question
How do I make it so when my collectable counter reaches a certain number, it casts to a function in my particle BP
Im not sure if this is correct
That's not what casting is
you CALL a function in your particle BP
Don't use tick for this. First of all, does the Particle BP exist all the time or is it only spawned when your get your collectable number?
It exists constantly, I want it to be hidden when the counter reaches 4
Instead of asking every frame "Is the counter 4 yet?", just check when you change the counter
Counter = Counter +1
If counter > 4
Do thing
The tick approach is the programming equivelent of the little kids asking "Are we there yet?" 60 times a second.
The proper way to do it is "I'll tell you when we're there."
Just check at the end of whatever you do when you get a pickup
get pickup, check if over 4, do thing
no tick anywhere
Not in the UI, in Event Teru Collected
How do I make the function not "read only"
Why would it be read only, go to the actual event Teru Collected
You made that event right?
Not that event, go to the event that is fired when a Teru gets collected
did you make this or is this some example project?
I made this yes
Do you understand what I'm saying at all? When you collect a Teru, check to see if you have 4 of them. If you do, do the particle effect
it's super simple
you have to use a reference of your rain system as target
I dont know how I'd get that in there
I suppose you could get all actors of class
definitely not sure what the #1 intended way of getting singleton actors is in BP
(make subsystems blueprintable you hacks...)
Rain is still visible when 4 is collected
we gonna get any further debug informations, or is that everything?
does the event fire?
what did you make out of this?
because it looks kinda like a wild guess rather than set up with intention
It was a guess mixed with my current knowledge
Should I change this to "equal" rather than "greater than"
Since I want the rain to be invisible when I collect 4
Didnβt you have a counter in your player a few days ago?
Iβm pretty sure I helped you with that π€
I'm not making a counter
But then why do you have a variable called counter
When the counter reaches 4 or higher, it'll hide the particle system
That's what I want
also whenever I collect one, it fires and moves here
This is the counter in my player
Yes so that can also have the same logic
And trigger event elsewhere
Theres no need to have duplicate logic
It's not duplicate
The logic in my player tells the UI whenever the item is collected
Whenever the item overlaps with the sphere
My bad, the sphere attached to the item, whenever the player overlaps with the sphere on the item
Then your counter in player also increases?
So the event in player should update itβs counter and pass the value on to UI
Is this going to lead towards the particle system or are you just going to talk about the counter
Then you can check on UI if that value >=
Iβm trying to help you fix that counter because your branch is calling at a wrong value?
no
when the player collects increase counter on player, if counter reached 4 notify the particle system
don't add the UI to that
also i said use GetActorOfClass not GetAllActorsOfClass
and you should define the class which your particle system is of, and not braindead collect all actors
Thanks
Well yeah Iβm just trying to keep the logic as similar as current
currently theres not much logic π
Okay I got it to work
So I believe i got the blueprint set up identically, but i am not the best at blueprints so anything goes
but when i wentr to hit play to go into runtime, the engine crashes immediately
same results repeated
check if the ref to a level sequence is valid
ooo thank you one sec restartin
So I want 2 different sky spheres with 2 different Blueprints, how would I do that?
duplicate or subclass BP_Sky_Sphere
It still uses the same BP when I duplicate it
duplicate the blueprint asset
Progress! that was it. somehow it got disconnected
Now the screen goes entirely blacck so i assume it has something to do with MRQ
and it did not export any frames.
Do you know what a class and instance are?
Somewhat
I honesty have no idea on hot to use MRQ at runtime, my earlier advice resulter from reading the log you sent
Apparently the BP doesn't exist
check the folder you are searching
It's an engine content bp
It's In the content folder
i feel like i am at the edge of what is of available knowledge lol
MRQ is rather new to begin with and there is seldom content surrounding it
I should talk to William Faucher
huh
click this thing in the bottom right of the content browser to see the extra hidden folders
you probably want "show engine content" iirc
I have no idea who that is, I used MRQ myself for a game trailer but only in the editor and not through blueprints
Ahh gotcha
enjoy
this man is incredible at what he does
We're going to take a dive into the latest and greatest Movie Render Queue, made production-ready in Unreal Engine 4.26. This is a must-know tool for VFX Artists and CG Artists alike.
This Tutorial covers all the basics of the MRQ that you need to know about.
Relevant links:
Cryptomatte/Object ID Tutorial: https://youtu.be/Ry4-Q8mBjdg
Render C...
oh, thanks, but anyway, that trailer I did was my last attempt to use sequencer anyway, the pain I had to went through was not worth the result hah, remember having to download the engine source code to fix a crash that occurred whenever we tried to open a map that was holding a level sequence, I'll stick to programming and hopefully never touch sequencer again
btw is this guy on this server?
I don't know? i feel like he should. he has other social medias and he is responsive when he has time
yeah i was going to message him on instagram with a fun challenge π
i searched the channel, i only see people posting his work
I want the skysphere to be hidden when all the terus are collected, this is correct?
it would be cooler to change the properties of the skysphere over time if you ask me
if your goal is to hide the sky I guess that would work?
Have you tried it?
I wouldn't really want anything fancy, I'm fine with the weather changing instantly
Yeah it doesn't work
It follows the same function that the particles do
well then work your way backwards and make sure that event is even being called.
I'm making an endless runner kind of game. It works with preset tiles, so I have made 10 types of tiles each with different layout and every time a new tile needs to be generated, a random tile from the that pool is chosen to spawn.
I have a BP_BaseTile which I create child blueprints from e.g. Bp_TileType1, Bp_TileType2, Bp_TileType3 and so on. In each of these children tile I have various actors like Obstacles, Powerups, CoinPickup.
I have a question regarding tile layout creation. So far when I created a new tile by extending BP_BaseTile, to add new actors to this tile I would add ChildActorComponent and select appropriate actor e.g. SpeedPowerUp or Coin, then set his position, done. Is this bad way to create Tile layout? Are there any other ways to tackle this problem?
What's particles got to do with anything you just posted? That's an interface call setting the visibility of a mesh. Does that specific event ever fire?
That event is the same event that the particles have, there is no reason it wouldn't fire if they're both connected to the same interface, right?
That's not how interfaces work. Put a print string on that and see if it's ever getting called.
Interfaces are not dispatchers
IDK dafuq you're doing, weather should all be in 1 actor most likely
or it should live in 1 central location that other actors can register with
The skybox and rain particles are 2 different things
Yes i know but a BP_Environment could have the skybox and sun and weather and all of that
I wouldn't have known that
but anyways, watch some videos on what Interfaces are
Im just going to mess around with it
I think you can get all actors of class with interface if you insist on using an interface to do this stuff
I am confused why this isnt rotating my character. I am afraid it might have something to do with my mouse being captured
Is your character set to use control rotation?
how do i check that o3o
Look at the capsule component
what would be a good way to check hits for melee combat, when it comes to low framerate
Shape traces
has to be fairly accurate for multiplayer
so where can i find that?
Try the search box on top of the properties window
How can I branch this into both of those
i dont see a properties window
so a multibox trace for example?
will that give better results than normal overlaps?
it will be a lot faster performance-wise but there are multiple ways to go about the shape of the trace
a lot of melee games do a large "comb" of linetraces along the blade (of a sword)
for my game it can be rather simple
a simple box/capsule/sphere would work too
most of the weapons will be fairly boxy, if not they can still have that simply box collision
What are you doing with those Get All Actors of Class nodes?
if it doesn't need to follow the real location of the blade/fist/doodad it could even be a simple shaped trace in front of the character
id love some help for my smoothbrain to find that setting
They're both different actors that I'd like to have hidden at the same time
try this
yeah I will at least go for the actual location, especially since the attacks will be animation based
I'll try out multibox thanks π
as for the uh, low FPS issue you are kind of praying people run the game at a decent framerate here
because the animation will be sampled as fast as it ticks
no i cannot find it still oof
low FPS shouldn't be an issue, but it should somewhat be persistent just in case
as long as it doesn't dip insanely low it should mostly be fine
you can't have optimal results on low FPS, I am aware
Are they supposed to be dynamically generated in different time? Why not get the actors in begin play, save that to an array variable, and get the array on demand?
yeah exactly, just looking for a somewhat independent solution
this will probably do fine
Becuase I dont know how to do that
you can right click the return value of Get Actor Of Class to just make a variable (promote to variable) from that like I show here
Ah right
so i think i made it use controller stuff but still dont know why it isnt working
Get All Actor of Class is kinda taxing in BP, might better to do it in the beginning.
Got it, thanks guys! :>
Why would an enemy character ever need a reference to a playercontroller?
That's really messy.
some major blueprint spaghetti in the making
Indomie Goreng in the cooking π
still really confused and lost if anyone has ideas
Why does enemy pawn need a reference to player pawn?
Isn't there a dedicated node to get player pawn? CMIIW
Then get the pawn when needed, not the playercontroller
and yes there is a dedicated get player pawn node
still really confused if anyone has any input
Why not cache it just like you've been caching the player controller
cache the pawn, then now you have a nice little reference to pawn
but getting player pawn and casting ever frame is fine
idk why tf you need it every frame but thats whatever
@swift pewter I'd say you could place an event into your gamemode "Player Spawned" or something
At least that saves you a cast node.
Also there's a Get Player Character node, if your character class is inherited from Character.h
The whole thing sounds spaghet but yeah just get it and cast
that'll be least shitty
Is the character supposed to be immediately destroyed when it dies?
why not have some kind of value noting that state of being "dead" but not exactly deleted to check if you need to?
Is there a way to make my audio a variable
so in my game it starts with 2d like widget spawned on screen and stuff and so you click buttons but can press buttons. would that get in the way of the game reading the mouse movement?
Yes. Make a Sound variable (IIRC)
might want to have the difference between being in "mouse menu" and "mouse look" mode
I forget the exact binding order
using the mouse in the UI might consume the input straight up... let me try
o3o i dunno how to do that at all
As in this?
here's an example https://youtu.be/Qspi31qtvpw
this is for UI specifically but I'm not sure if that's what you mean
@fiery glen what was the variable name for Sound Wave and Sound Cue? I'm not with the editor atm so can't remember exactly which
is that i followed a player movement tutorial
and it didnt work and the mouse was always on screen
"Sound Base"?? It's easier to just promote the type to variable
Yes, that was it. @trim matrix
I'm honestly surprised it's an actor/uobject ref? must be a wrapper or something
This is an issue
Sound Cue is probably the intended usage
Probably becasuse it's an object reference right?
That's an Audio Component function, not Sound Base function.
Yeah I want to stop the rain audio I have when the rain stops
You could get them from Spawn Sound nodes (not Play Sound nodes, as it's fore and forget)
Ohh yes I see
Wait
Hm
The rain doesn't necessarily "spawn" in
I just dragged it in
I also think you should probably uh, attach this sound to the player somehow
because otherwise it will just make a little sound from world 0,0,0
I turned off attenuation or something so it wouldn't do that
Or make the attenuation range super huge
ahhh, "Spawn Sound 2D" could also work
Hmmm
Spawn Sound 2D is fine, if you don't want "immersive audio"
And by "immersive" I mean panning according to the camera's listening direction
So I gotta spawn it in first, then do this?
Do the spawning in BeginPlay or as soon as the rain starts.
Then call the audio component ref and stop it in the stop rain event
What function? π€
is that a blueprint interface?
Yeah
blueprint interfaces are so cursed...
I think I saw this error when dealing with C++ inherited functions, never BP interface function calls π€ π€
are you calling it in a constructor?
I'm honestly not sure how that error can be triggered from a BP function
I was going to put it here so I could link it to the "stop" node
This is the ThirdPersonBP
anyone know how to let you use your mouse when you bring up a menu but not when it goes away
Set Input Game and UI?
watch the video I linked you