#blueprint
402296 messages ยท Page 433 of 403
You need a reference to the object to cast that reference as it's correct class.
so what node do i need to have inbetween
the refrence is right there it wont let me plug it
Because you're trying to plug a Camera Component reference into an Actor reference.
so how do i fix it
I could be mistaken, but I'm pretty sure you just need to plug in the NPC reference.
ok so heres my npc?
heres my character
heres my blueprint
why wont it switch
That last screenshot, what BP is it in?
You need a reference to the npc then. Either a trace, sphere overlap, collision event, or get all actors of class sort of thing.
i am refrencing it look theres a cast node
Casting is not a reference. Think of casting like a dressing room. You're dressing that actor up as something else. You need the actor that can play the role you need, then you can send them through the dressing room.
You said something about this happening on a collision?
yes
on colisoin i set a booloean to be true
if its true switch camera
false go back
activated by event tick
BUT IT WORK SWITCH
no matter what i do
Why aren't you using collision events?
How many NPCs do you have at a time?
for now only 1
but i plan to add like 2 more
why does that matter
how do i set up the blueprint
It actually matters a great deal. But your best option would probably be to use a collision box around your NPCs, onbeginoverlap, get the other actor, == it to getplayerpawn, if true switch camera to the NPC and on end overlap, check all overlapping actors, if none, return the player's camera to the player character.
switch camera to npc and on end overlap HOW?
so i do this stuff inside the npc bp great
thats progress
but how do i set it up
NOW IT WORKS
finaly
thanks for telling me to just do it in the npc bp took a while but its ok
thank you
Anyone here notice that when trying to simulate physics on a mesh component in a blueprint, it just falls through the floor?
well if it has no collisions... ๐คทโโ๏ธ
Hello guys,
I have a problem concerning the particle system.
I have a delay for the animation so the player can't spam it, but the particle system can be spammed. How can I avoid this ?
Thank you in advance
@wintry crystal First question would be, what is that bool Cast 2h for?
Easiest way would be to put a branch before the Set Cast2h to True node. Check if Cast2h is false, if it is false, do the rest, then you can't do that again until your delay node sets that bool back to false.
@maiden wadi It the variable that starts the animation
(Thanks for your reply)
@unique hollow You either need to cast a reference, bind an event, or use an interface. What is your use case?
Hello!
I have a rather silly conceptual question. I hope it's okay to ask it in this chat.
Sidenote: I am using camera actor instead of character camera component.
Would you rather use spawning camera actor via code or place camera actor to each level separately?
Thanks!
@maiden wadi So in one blueprint basically it's tied to checking what surface you're on via an integer to float and then if the float is a certain value of the integer aka same one as the material that is supposed to trigger this, it gives the boolean a check
I want to set the value of a float in another blueprint when the boolean is checked
@timber marlin Sounds like a design decision based on use case. If it's faster to just place the actor and reference them the way you need, don't waste time coding it. If you have a strange set of reference needs or other stuff requiring that actor to be placed from code for some reason, code it.
@unique hollow Do these two blueprints already know about each other? Have you created or can you easily create a reference between them in some way?
yeah they kinda do
sec
the first and last is from the anim BP
the second is from the normal BP
And the Footstep event is being called, that cast is working well and all?
yeah
there is this for text and numbers... but what about for bindings? is there a way to uncheck grouping ?
@unique hollow Is the bool in the animBP, and you're trying to get that to the character?
yeah
Drag off of the thirdperson cast node and you should be able to set your variable from that.
Drag off of?
The blue As ThirdPersonCharacter pin on that node.
Just like you called the Footstep event.
Do you have that variable created in the ThirdPersonCharacter BP?
Haha, happens to the best of us.
ok wait, so what would I put the target as
@maiden wadi
ThirdPersonCharacter doesn't show up
Why can't I inherit StaticMeshComponent?
@unique hollow you probably want a physics material to do that kind of checking for you
@unique hollow You should be able to drag off of the cast, and type the variable name to set it.
me stupid 2.0
right.
I can use a physics material.
I think my brain is on airplane mode
@maiden wadi Changed the code to this
still doesnt seem to work
hmm
It's supposed to set the surface float as 2 and if surface = 2, fire off the branch to change your speed
am I missing something?
Could be something else. Could also be that == node. Not sure how precise that is, but float precision can sometimes be brutal. I'd probably use nearly equal or an integer if possible.
@maiden wadi yeah I changed it and it works but
when you get onto snow the speed only changes once I stop sprinting
hi, any idea why this wouldn't get called? parent event is a single print string
and is getting called succesfully
hey guys, newbie trying to figure out using an array of structs. this snippet seems to automatically fill Struct City Array with 261,650 entries regardless of how often it gets activated (loops 4 times currently). is there something fundamental i'm missing with filling an array of structs like that?
I have a small blueprint of a light switch, after turning lights off certain events occur. How could I possibly do it so it could work just once, after the light is off I can't turn it back on? As you can see I have destroy component for a trigger box but engine is yelling at me if I'm spamming action key which I'm sure of a lot of players could do (:
Oops nevermind, I forgot UE literally has a "do once" option
Hey guys, any idea why my Level Blueprint begin play won't run suddenly?
Anyone got a second to help me make my pickups in game disable collision and goes hidden until a timer resets it.
@mighty fable you said it yourself lmao disable collision and set hidden in game then do a set timer by event to reset it
@lean thistle what do you mean wont run suddenly?
Please help, my static mesh grass won't load in at long distances. I figured out it isn't culling, as when culling is disabled, or there is a culling volume, the problem still persists
well try to look foliage culling
if its not, try to look material
no others does culling so
that didn't work :/
foilage culling did nothing
is there anything else that would cause this?
u did tried to look material ?
yes
hmm
I dont think its culling
but then Im not sure what it is
like i said
even disabling culling the settings does nothing
no when you going far away from a mesh, it gonna hides due to WPO(idk) or opacity that i saw from free Marketplace material
anyway to remove?
oh you're using material foliage
and?
well i never use that because its bad for me. you can try to use foliage system with HISM
How would you guys go about getting a render of your character to use in the UI? Using a 2D capture works if you don't care about animation, but if you want to have some idle play how would you go about it? Create a second copy of your character mesh and hide it somewhere on the map and use it as a reference (or is there a better way?)
Quick question, is the Get Horizontal Dot Production To node based on the local space of the source actor or is it in world space?
Better yet, is there any way to get a vertical Dot product between two actors?
@north oriole Not sure if there's a better way so much, but this guy made a great tutorial for pretty much what you're looking for. Had good results I think. https://forums.unrealengine.com/community/community-content-tools-and-tutorials/55902-tutorial-live-3d-content-in-your-hud-or-ui?84416-Tutorial-Live-3D-Content-in-your-HUD-or-UI=
This is the place to show, share, and link to your stuff!
Better yet, is there any way to get a vertical Dot product between two actors?
bump. Been trying different stuff without the results I'm hoping for T.T
looking for the dot product of two vectors in the YZ plane
Is there any way to use something other than a capsule for collision on a character?
For the actual Character class, no. It's coded into it's base. Why do you need something other than a capsule?
@latent junco Not sure if I fully understand, but can't you just zero out or level Z on both vectors and get the dot product from them after?
Doesn't seem to work
I get weird numbers there
OK I just tried it again to show you, and it seems to work now......
dafuq
OK but there is still an issue: The dot product only returns positive values as long as both boxes are in positive Z space
my understanding was that if Box2 is above Box1 in Zspace with the same Y value, it should return 1 and if it is below Box1 in Zspace with the same Y value, it should return -1
it only returns -1 if Box2 goes into negative Z space
O.o
I'm really new at vector math so this is all very confusing ๐
@maiden wadi Thank you, exactly what I was looking for!
so i made the camera focus on the npc
now how do i make the camera go back to the player
nvm i figured that out aswel
my character wont move back help
i cant unset the ignore inputs
Can someone double check my item respawn code and lemme know if I'm in the right direction?
Makes logical sense.
I'd like to unhide the pickup
and the pickup (first code) is a child of the base pickup (2nd code)
if that means anything
did you try targeting
idk what to target it to, I tried to target the child but im not sure how to do it. (Sorry I'm still learning this)
it says it's not compatible ๐ค
@maiden wadi Figured it out, I forgot to subtract my original object's location from the target's location to make the resulting vector relative. Also, both the normal dot product and the dot2D product result in the same here
@tawny tinsel what are you trying to do?
you need something to cast
a cast node won't do what you want it to do on its own
can you describe what you are doing
or what you want to happen
but like, intent, not code
i want a variable from that blueptin
do you have it stored as a variable? how do you get a hold of it in the first place?
because if you don't get a hold of it in the first place, your cast node won't do you any favors
Hey guys! Can anyone help me with my broken head look rotation?
@tawny tinsel where you want to have that variable?
Simple example, Actor1 and Actor2.
If you want to get a value from Actor1 to Actor2 (and save it here), you need to have a variable in Actor2, called "yourVar".
You just do a cast in Actor1: cast to Actor2 -> Set: "yourVar".
@rocky crypt details?
@quartz osprey I'll dm you. It's long
ok
@quartz osprey I WANT TO CAST ACTOR BP TO MY TRIRD PERSON PLAYER BP
I ALSO WANT TO CAST AWAY INTO THE WILDERNESS
You want to cast an entire blueprint? ๐
i can help you via teamviewer if you want, but TeamViewer Version 13 max, cuz i have the license on that one and i can't do an update :p
@tawny tinsel pull off the object type and say get owner
it still need to cast
I need help with a vehicle blueprint, i followed a youtube tutorial on how to create a car like the one in the vehicle template, and was able to drive it around perfectly in that scene. i then migrated the car and all other info to my project scene and when i try and play it, the car flys off into space and spins like a top..... please help
@tawny tinsel I think you're in a position where you don't need cast, but just need a variable
right but that variable has to come from somewhere
your blueprint has to have some sort of communication with another blueprint
how do i do that
well let's start here: what variable do you need in which blueprint?
and again, if you can try with explaining what you are intending to do broadly, not specifically what you are trying to make work with your current logic
(because in most cases, there is a better way)
I'm having to send a variety of different values to a few different classes resulting in casting a lot. I've been told to avoid casting as much as possible. I don't care what happens after the variables are sent, so is using an interface to send values with an identifier a stupid idea?
Hello everyone,
I'm using camera on a blueprint to generate render targets 2D texture ,, and i want to use it in UMG.. my problem is that i want to update the Canvas Texture 2D to use the only the selected blueprint's canvas 2D ... it just randomly select one of them and use it as the render target for the UMG ... how can i make it switch according to a specific BP i select?
@rugged carbon I think the Interface is the best way to just send a message and every blueprint that implements that interface will fire the event. i use it really better than casting that way, i use casting only when i want to convert a certain variable type or get a certain variable on the casted BP.
Okay, thank you ๐
Whenever I use a reference variable this happens, where am i doing wrong?
Sometimes I use cast instead of get all actors, still same result
I initialize this function at the eventbeginplay
means that no actors were found
but there is a drone actor in the level
maybe because beginplay executes first
nevermind solved
thanks
@trim matrix your issue is centered around the fact that unreal spawns actors in levels in a nondeterministic fashion, which means you can't guarantee that one actor spawns before another
the best practice to avoid complications like yours is to ensure that each class is responsible for its own logic
it's a quick hacky way to do it that might not work consistently
imagine if someone else's PC loads your game slower than yours, and the actor with the delay spawns first
you would have no way of asserting the other actor to be spawned
I could use some help in figuring out a way to average out points on a spherified grid to ensure some level of uniformity.
I am working on an RTS game and I am trying to create a viable A* pathfinding solution for planets. The planets themselves are looking decent so far so that's no worry. The pathfinding is a bit of a hassle to get going.
Does anyone have any ideas for averaging points and does anyone have any good resources for efficient BP A* in general?
The image is a visualization tool for the grids, not a complete solution so far.
Hey ya'll, anybody ever had Get Mouse Position on Viewport return an X value as high as 1964 on a resolution of 1920x1080?
Are you scaling for DPI?
same result with scaled by dpi
That's odd
yeah very odd
Can you show your code?
right now I'm literally just calling get mouse position on viewport to debug a trace issue, which is being caused by this
really no code to show
outputting to a UI just to watch it
Get mouse position on viewport is relative to the viewport size which may vary from your actual screen resolution
get mouse position on platform returns the same
Try using Get mouse position or Get Mouse Position Scaled by DPI
does anyone know of a visual tool for vector math projection?
mmmm standby actually...
@odd ember Could you describe what you mean? Like an arrow?
yeah I mean like a separate app or website really
Oh, honestly UE4 would probably be the best visualizer
If you just use some of the debug draw functions
well not really no
plus the time it would take to implement something like this just makes it unnecessary
hence why I was wondering if anyone knew any resources
Sorry, with as vague as you are being I can't really help you.
like a website that allows you to input vectors and vector math and show them on a graph?
https://www.geogebra.org/3d?lang=en
https://www.desmos.com/calculator/3te4skalj6
https://academo.org/demos/3d-vector-plotter/
perfect, thanks
hello. anyone able to direct me to a good indept tutorial for a boomerang? or atleast how to do it. im trying to recreate taya from battlerite
anyone got any tips on doing doing a small map but big building interiors like animal crossing? wanna practice and thought it was a good concept!?
Having a weird issue where this does not rotate the camera. What am I missing? It works in the tutorial I'm following ๐ค
@vocal urchin Is the input firing?
@vocal urchin Also you could just simplify that with "Add Actor Rotation"
Yes, the input is firing.
Have you checked that you are getting a value from Mouse X?
Yep, I printed it out and I am getting input
Is the gate opening?
Yes
I think?
How would I check?
I can see the input is being pressed and released
Do I even need this gate? I could set a variable coming off the input action and then just add the rotation, like you mentioned, based on the true/false of the press
Not really
Not if you want the effect to be constant
There are many bad tutorials out there
Tried this, and it also doesn't work...
Ok, it's something to do with the Mouse X axis
if I switch panning to move when I press the pan button, it works
I am complete retard.
Pan sensitivity was set to 0.
lol happens to the bets of us
My joystick doesnt move at the top
It rotates around and working but in the corners (top, right, left, down) it stucks like this
Any ideas why?
Blueprint
@trim matrix try replacing the second input event with the equivalent function that just gives you the axis value for that input.
@trim matrix ok then the problem is elsewhere in your code. Are you already displaying the direction vector from the inputs?
values are not changing
there is no inputs in use, only movement input (left joystick) and rotation input (right)
also tested in different devices, different screens and different game screen sizes
nothing changed so far
@trim matrix what I see from your code/video is that you move the joystick up and the vector points to (1,0,0). The you move it left and it points to (0,-1,0). These seems to be correct. Your character rotates accordingly.
but mesh doesnt rotate? its not affecting the gameplay at all in editor but in my phone its very hard to shoot accurately this way
no way to fix this small blind point in the joystick?
@trim matrix it is difficult to get a feeling for something you don't see/experience, so bear with me. Would you like your player/character to rotate more smoothly? Then you can use RInterp to interpolate the rotation.
Also together, with the direction vector, you should directly print the axis output so we see where the problem is
Trying to understand if the problem of scarce control is coming directly from the input.
@trim matrix it is difficult to get a feeling for something you don't see/experience, so bear with me. Would you like your player/character to rotate more smoothly? Then you can use RInterp to interpolate the rotation.
@atomic salmon gonna try this, thanks
https://gyazo.com/4667507ea354d386bc89f5bec85f6bdc Y axis value by the way.
Ok, so the problem stems from the axis input
Simply it needs a lot of movement before it gets away from 1.0 / -1.0
yes, thats what i tried to meant by "blind point"
ok so it is a sensitivity issue basically
there must be a way to configure it, but I would need to look it up
Maybe in #mobile someone knows right away
thanks for your guidance @atomic salmon
@trim matrix sorry not to be of further help, but at least you know where the problem is. I see the the Virtual Joystick has some config options, maybe you can play with them and see what happens.
thanks again, you did a lot
@trim matrix Found your problem
Basically there is by default a Dead Zone of 0.25 assigned to the Gamepad thumbstick
Since the virtual joystick maps to that, you get the dead zone too
Go to Project Settings -> Input and set all the Dead Zones to 0. They are 0.25 by default. That should fix it.
@atomic salmon You're awesome!! Did it https://gyazo.com/d5320f467bcaf58abb7aab43e8f43fc0
Sweet! ๐
hey guys
hod do i get seconds form the current frqame number
?
i cant seem to find any node that does that
frame number?
delta time?
well he mentioned seconds so....stab in the dark for an easy solution lol
neverming i found a solution
the node is qualified frame time to seconds
first i get the qualified frame time from my level sequence, then do that
hmmm so now my next issue is.... i have made a master level sequence with a bunch of shots in it, each shot is a level streamed in; i got a combobox that gets all my levels and displays them, whenever i click on one of those it jumps to that moment in time using an array of cues... the issue is that the combobox needs to update itself when the time flows normally;
so if i click lvl 2 for instance in combobox it jumps to frame 450
BUT if i play form 0 and i reach 450, combobox needs to update itself and display 'scene2'
how ??? uhmm
im thinking by getting the current frame number, and whenever is equal to one of the cues integers it sets the combobox.... but not sure how
Event Tick -> frameCount = frameCount +1 -> if (frameCount >= 450) { frameCount = 0; spawnComboBox(); }
thats one (nasty) way to do it
Why on earth wouldn't you just set a timer instead?
Unsure why you would want any game logic whatsoever tied to framerate.
because I never used timers so I didnt even consider it ๐
Ah that's mostly aimed for @solemn bloom ๐
aye
Hay guys! I'm relatively new to UE visual scripting and I'm stuck at a certain issue. I'm wondering if anyone can help me solve it! Should be an easy fix but I just can't seem to get it to work.
I hope this is the right place to post my issue
Basically I'm trying to find objects and check if they also have a tag, if they have physics and said tag the AND bill should be set to true and send it to the branch
However it's not working
I'm guessing the issue is the connection between the has physics and has said tag which for some reason is not giving a true value
long story short, im developing an app that is syncing a video and it's framerate with the level sequencer framerate;
and i have set a bung of cues to jump in time both in the video and level sequence
and i thought the way to do was either in secs or frames
because i had to comple to the video ssources i was receiving
somehow i need to get the index from those 'cues in frames' variable
but if i use the event tick to fire, the branch node is always firing ... even if when its false ... ??!?
im really dumb with loops, this is probably stupid lol
how i can resolve this , this is the blueprint for character to be in this rotation
this is weird tho
why do you limit your fps to 20?
is your game tick dependent?
are you doing stuff from "Event Tick"?
yes
A tick runs each frame, its bad practice to use it
what i can use ?
custom events
yes, like when you press W (Input event) that would call another event like triggering the run animation
But, usually the animation blueprint uses stuff like forward vector length to determine which animation to run
yes
So if you use a boolean to check if the player is running behind Event Tick, and the bool is true, it would start the running animation every tick
I wouldnt start with a mp project until you have a good sense on game dev/ue4
that's not my first game
im not saying its your first game, im just recommending not to do MP before having a broad understanding of the engine
its your party after all
i work with this engine from 2018
and still doing things based of Event Tick, okay
i sawed a lot of developers do this
yea, i've seen many horrible tutorials also
i learned from tutorials
respect for the autodidact game developer
Hi I'm trying to setup a jump animation iv done it before but this time I can't find the time remaining ratio (Jumping Down) node iv tried just recreating the anim blueprint and it didn't work
Hey so im newish to unreal engine but I havnt done a lot of work with projectiles until today really. Im currently haivng an issue where projectiles are going through the walls. I have tried to set the collisons to block all and even added an On hit event to destroy the actor however this still seems to not be worked. Does anyone have a solution
@lethal night do you have your collision volume as root of your projectile?
No my projectile is currently got a scene root
Also just to clarify its going through everything not only walls
@lethal night if you read the documentation for the projectile movement component, it tells you that only the root component (or anyway the updated component which typically is the root) is checked for collisions during movement. Scene components have no collisions, so that is the reason your projectile goes through everything.
Ahh okay thank you, when I try and set the root component to the collision volume it creates a new scene
You need to use a static mesh with collision or a collision volume as root
Drag the collision volume component on top of the root
It will ask you if you want to replace it with it
You want one collision sphere as root and one static mesh as the visual part of your projectile
Yeah I know, I did what you told me and it came out like that
Look at the example projectile within the first person template
However I solved the issue by deleting all of it and creating a new sphere
it seemed to have fixed the issue with setting a new root
@lethal night np
Hello Everyone, I'm in need of some help accessing every players save game on a multiplayer project.
I'm making a multiplayer game where every player has a save file with their own name. The name is set at launch if no save game is detected. The issue is I'm trying to implement a scoreboard, where I want to show, among other things, the name the player has set on their own save file and I'm having issues with that where or everyone gets the same name as the server or everyone gets the same name from their own local save game file. I've been at this for days and can't seem to figure out a way to replicate every players name to the scoreboard on everyone's game. It's driving me crazy. Here's what I have so far, have in mind that I've changed things around a lot
this is in the character blueprint
this is also in the character blueprint
long story short, im developing an app that is syncing a video and it's framerate with the level sequencer framerate;
@solemn bloom can anyone help with this
but this is happening, with two separate computers, steam accounts and save games
can someone please help me out?
quick question: local variables always start empty when a function is called, correct? I don't need to clear them at the start of the function?
Correct
@latent junco - They start with their default value, not not necessarily empty.
@gloomy hornet I'm not that good with multiplayer ideology yet, but one thing I'll note, most people seem to store and handle data like that in the playerstate/gamestate. The character really should only be a body for the controller to possess. In most games, the character is expendable and will be destroyed and remade multiple times, it shouldn't have any long term game logic like scoreboards, widgets that aren't directly related to it, etc.
the weird thing is that i've implemented a chat this away and the names are looping through the save files just fine, i'm really stuck on this
is it possible to attach a child actor onto a character socket?
@zealous moth sure
how?
@zealous moth first you need to parent it to a Skeletal Mesh
then you can choose a bone/socket
yup...
@zealous moth
Hey, does anyone know why my widget looks correct in the UI but not when I play?
looks correct in the blueprint i mean
How do you play animations without bones (like the one in the video)?
I were thinking to use a montage, but I cant quite get it to work as the animation (from the video) is not triggered by a bone or anything
Please ping on reply ๐
Anyone Familiar with this?
Is it from the crash log?
Is it from the crash log?
@spark robin Its from starting the game in preview mode
I'm looking to add scene components in a "circle" around the center of my actor. The number of components I want to add is variable and I want them to be equally spaced in angle around the full 360 degrees. Does anyone have a tutorial or simple explanation on how to convert the angle into a location?
@frozen sky Not sure if there's a better way for what you're doing, but I love vector math, and I got bored, and I came up with this.
An overview of the Advanced Blueprints example level, example 1.3: Automatic Ring
I eneded up finding this^
Hi guys, How can I have a sphere projectile (using projectile component) rolling on the ground when boucing. I mean kind of having the physics behavior without using physics ... I can't make it work with dedicated server. ๐ฆ
@maiden wadi quick and dirty modular audio occlusion system https://puu.sh/FoQFC/494cbc0b0a.png
Huh, neat.
@tawny tinsel I mean start with just implementing a single quest type and a quest manager
Is it possible to get the character controller/player character from the construction graph
@lethal night It is not. The Controller/Player do not exist yet.
Would it be better to do what im doing in the event graph then?
because i need to change the material of something depending on a variable that is in the characters blueprint
You would definitely need to use BeginPlay for that then.
Anyone for the projectile/rolling in dedicated server ? ๐
huh?
btw Authaer I moved it to the event graph and my stuff works fine now
so thanks for the help
With exceptions, consider the construction script generally for things that you would need an actor to do in editor. A great example would be for level design, creating actors that you can set a variable in, which would then 'construct' themselves in the editor, so you can see how they would look in the world while you're designing. Not the only use, but an example. They have no way to reference anything spawned from GameMode onwards, which is responsible for creating controllers and characters and the like.
Ah right, thank you
@maiden wadi best example: if you need an actor to be constructed in a specific way and with preview in the editor, use the construction graph. Example: a line of 3 coins that respond with tracing to the ground to make sure it follows it dynamically with angled planes.
so is it posible to display a ui on a 3d object and have it clicable?
Hello, I'm trying to shoot a weapon with Linetrace, is there any way to make it accurate so it won't move and stay in place? I don't use a first person camera. thanks!
twitch
Is there a way to choose a random data asset in BP?
Want to spawn a random actor of a given type (randomized item spawning on map)
Make an array of the classes somewhere and get a random number from 0 to last index of that array and return the class.
So that was my thinking, but I wanted to get the actors from their data assets, since the data assets store all info about them
I'm probably thinking about this all kak, I suck at sorting out data hierarchy
I found a "List Asset in directory" thing but it's for editor scripting, not sure I can actually use something like that in an Actor BP
That way I could list all the assets in a directory, arrange them into a useful array and as you said, just pick a random integer from the array
A suggestion is maybe to use randomized values after breaking the datatable.
I'm not actually using datatables so far as I know
I have some custom data assets I use to store info about items, mainly for inventory purposes
All of my pickup actors reference said data assets
If you break a hit result from a Hit event, do the "Trace start" and "Trace end" vectors just equal the impact location?
How can i have 2 conditions on a branch?
i know its AND logic
but what blueprint componment do i need
?
You can either do two branches or an "andbool" maybe?
Has anyone successfully implemented this?
https://docs.unrealengine.com/en-US/Engine/Animation/WorkingwithModularCharacters/index.html
Describes the different methods you can use to create modular characters comprised of multiple Skeletal Meshes.
@wraith verge This worked great! Thank you ๐
also how can i check if a ui element is visible?
nvm
figured
what kind of blueprint could i use to "Store" Actors in an "abstract" form? kind of like an inventory
@odd ember shift+enter?
Controller is at 0,0,0 - probably no path to 0,0,0 or is already there.
Or it might not have an AIController
dont have aicontroller
must have aicontroller?
having the target actor defined must also have the destination?
Nope.
Okay. 1: yes you need an AIController on the NPC pawn.
It can be the engine's AIController, but it needs to have one.
2: Either the actor is valid and it moves to the actor, or it moves to the destination vector.
3: Controller actors exist at 0,0,0 in world space
@sand shore nope ๐ฆ I suppose it isn't a case where a double escape would make it work either
Nah
the cpv heve the "AIController"
by default
the npc have...
the nevement result is sucess to
and doesn't move
Yeah so. You're already at 0,0,0 then
Any case.
Moving to a controller is nonsense. Pick some other actor to move to
there must be something wrong with the Editor settings, the pawnsensing compenet and sphere trace by channel also donโt work
Hi! I would like to make a dialogue phase between two characters like the images, I would like to know the name of this process to find a tutorial
ok, I found something, the npc is placed on the map with SpawnActor node
ok, i found something, the npc is placed on the map with SpawnActor node. do I have to use SpawnAIFromClass?
yah, have to use it. jesus
@atomic prairie google something like "UE4 widget dialogue tutorial"
Thanks!
np
How far does inheritance go? I'm having a hard time getting variable and functions from the top parent class, from a "grandchild".
...or does UE only allow a single parent/child relationship?
Inheritance has no limit. The only limit would be scope, i.e. private vs protected vs public members.
Anyone ever run into an issue where your Inputs in Project Settings don't update? Like if I switch a key from A to D, it's saved in the DefaultInput.ini correctly, but A still works?
Blueprints for pawns and player controllers can bind to keys directly too. Maybe thereโs a leftover direct key binding in your BP graph somewhere?
No, this seems cross the board with all my inputs
I can't seem to change any of them
For instance, I tried changing my "FireAction" which is usually left mouse button to something like ALT+SHIFT+A. Which is never some sort of keybinding I would use, and you can see the change in the DefaultInput.ini
but left mouse button still works
and I just did a Find in Blueprints for Left Mouse Button direct keys and none found
Yo can someone help me out with implementing movement on a spline?
I want to mimic the arkham games in which you can move left and right on say an elevated roof beam
then if you move forward or backwards you exit the perch movement
but i've got absolutely no clue how to go about it
is there any Add component to actor node?
ugh i have this weird issue where for whatever reason i cannot add that node for a specific bp
i tried copying and pasting it from another bp but it says it cannot copy and paste that specific node
how do i make my character only swim on the surface?
get the water level and clamp the position
Anyone experienced before that CastTo seems to be really unreliable?
I'm doing a loop with multiple linetrace and then CastTo to confirm if the actors I'm looking for have been hit. It does work, but not consistently. With e.g. 10 iterations the cast only succeeds like four times, even though all 10 traces have hit the actors I'm casting to.
Never once had a casting issue. Can I see your line trace/cast setup?
Yea, I've also hadn't had issue with Cast before, but what's confusing me here now is that it actually works, just not the full amount of iterations. Even though it should.
@half shard Just out of curiosity, could you put this between your trace and cast, and make sure all ten are printing off true. Just replace the parent class with the same one you're casting to.
Uh, smart. And nope, it confirms the same behaviour with like 4 out of 10 being true, as in being the class I'm looking for. Thought that means the Cast is working, just my trace is not. At least now I know where to dig for the issue! Thanks @maiden wadi
Anytime.
Hi. I have this blueprint that allows to display widget on the screen upon standing in the area trigger, also removing widget from the screen when walking away from the area. The problem is if I shoot in that direction and bullet collides with the trigger area, it displays the widget for very short. How to limit 1st person character to being able to activate widget?
@tight cobalt The easiest way to fix your issue is to put a branch on each of those events. Get player pawn and == it to the other actor, if true, do your other stuff.
That will keep it from firing unless the overlapping actor is specifically the player's character actor.
Plug the bottom blue pin of the == into the "Other Actor" from the event, but yes, exactly that.
Does anyone know if there's a way to get an in-editor event for when an actor is being removed?
I've got some actors which interface with another, and I'd like them to change something on the other whenever they're being removed from the world again
But since I'm in-editor, I can't rely on Destroyed
These two actor delegates exist, but I'm really not sure if I can get to them in BP?
@unique basin https://docs.unrealengine.com/en-US/API/Runtime/Engine/Engine/UEngine/OnLevelActorDeleted/index.html but it is not exposed to BP afaik
That's what I was afraid of
That's a shame
I'd like to use it in a Blueprint project for the marketplace
Plug the bottom blue pin of the == into the "Other Actor" from the event, but yes, exactly that.
@maiden wadi Worked, thank you so much for your time. Cheers
@unique basin that event is editor only anyway, not sure how your blueprint project is expected to work
are you extending the editor?
Yeah, it's all in-editor stuff
It can work at runtime as well
For which I'll just hook up the Destroyed event to the same execution
But the core purpose is to be an editor tool
@atomic salmon
It's a foliage-spawning tool
Hello there. I have kind of silly question but still hope that you will answer me. How can i make my bullets disappear after hitting static mesh? I already did a simple blue print that works on actors that are moving, but with static mesh not(
also tried to make cast on static mesh but gues i am doing smth wrong , also tried with hit events but still.. can you tell me at least the road?)
@blissful nacelle The easiest way to make a bullet that will disappear with hitting anything is to create an actor with it's root as a mesh for collision detection, a static mesh or effect for visual, add a projectile movement component, and use event hit to detect what it's hit, apply damage to the other actor, and then destroy self
so i have to use hit event and deal damage to statich mesh, after that destroy the bullet correct?
@maiden wadi
You don't "Have" to, but that is the general structure of a bullet actor.
@blissful nacelle Did that work for you? If not, show me what you have, maybe I can help.
In my bp of bullet i created this logic , now looking at settings of mesh. dont want to damage it. just hit event. dont understand what settings should be changed so that my bp will see this mesh. Bullets just go thrue... @maiden wadi
Does anyone know if it's possible to create a C++ backing for an Editor Utility Blueprint?
It doesn't seem to like being inherited from
Static functions? Like a BP function library?
@blissful nacelle What are you trying to do with the static mesh when the bullet hits it?
@blissful nacelle What are you trying to do with the static mesh when the bullet hits it?
@maiden wadi Nothing) I just want see bullets disappear after hiting anything on the road.
@blissful nacelle You don't need to cast to anything then. Just use EventHit>DestroySelf
@blissful nacelle You don't need to cast to anything then. Just use EventHit>DestroySelf
@maiden wadi I tried already . Even now did it , bullets just go true static mesh. guess there is a setting somewhere , but i dont know what kind, why they dont hit mesh
Then your static mesh or your bullet's collision channels aren't matching up. Your bullet needs to block the channel that your static mesh's collision is set at.
at this moment on collision of bullet i have overlapalldynamic, because i have some bp with overlapping dynamic actors. will try to use other then and see what happens
For something like a bullet you should generally use Collision Enabled (Query&Physics), and for the most part, use block for the responses.
How can I display this variable on the screen using the widget bp? I have 5 boxes that player is able to collect, also i have a cave that requires all 5 to be collected in order to be opened. This part works fine..Now I would like to display the number of collected boxes on the screen using widget instead of just printing them on the screen.
I tried creating widget with the text box, but when I am about to create binding, I cant seem to find my variable.
You could add a reference to your character into the widget, or just get player character, but a reference is cheaper. Get the variable from that and update the binding.
Does GetAllLevelActors return the same thing as GetAllActorsOfClass( with UObject)?
Or I guess with AActor
You could add a reference to your character into the widget, or just get player character, but a reference is cheaper. Get the variable from that and update the binding.
@maiden wadi I am sorry but i don't know how to do that. any link that might help?
@tight cobalt Where are you creating the widget and adding it to viewport?
At the start of the level
AS soon as the player spowns/level loads.
Oh sorry I didnt read properly
I want to add it in the level blueprint.
On event begin play
Kay, go into your Widget first, add a new variable make it a type FirstPersonCharacter like your character blueprint. Name it whatever you like. Then go to where you're creating your widget, drag off of the create widget return value just like you do for AddToViewport, type your variable name you set in the widget and set it there right after AddToViewport, plug in your character Reference, then you can use that variable in the widget to get the variable from the character to update that binding.
@maiden wadi or i am idiot or there is smth more with settings. I blocked and ignored all in bp of bullets . but bullets still go thrue ...
Does your static mesh itself actually have collision?
Does your static mesh itself actually have collision?
@maiden wadi gues i found. dont know why but i coudnt find colision on simple targets. will try and write again later
That I'm not sure about. I don't use geometry brushes very often. In fact I don't think I've used a geometry brush since UE3.
That I'm not sure about. I don't use geometry brushes very often. In fact I don't think I've used a geometry brush since UE3.
@maiden wadi Yes gues that is my problem. will try to mix settings and will see if it worcks. at least i found them)))
Hey folks, my blueprint sometimes works and sometimes doesn't depending on the value the delay node has, as shown below. If I go over 2.2seconds it just doesn't load the level anymore and it just stays on the loading screen widget and I'm baffled. Does anyone have any idea about what's happening here?
ok now it is not funny at all. i switched off my collision at all, why the bullets go throe? @maiden wadi
@umbral cape I can't get the same effect. Does this happen even without the widget nodes, just with Delay and Open Level?
@blissful nacelle I don't understand what you're asking? You turned all collision off, they won't collide with anything.
@maiden wadi Like this? For some reason my widget doesn't display any number on the screen.
Tried connecting it to event begin play too..same .
@maiden wadi no, without widgets it's working fine
@tight cobalt You don't need to create the widget more than once, event tick is just going to create a new widget object every frame. Is this in your player blueprint?
@tight cobalt Put that widget creation on beginplay. And where you have FPSConnection, You need to GetPlayerPawn>CastTo yourcharacterclass, and plug that into the FPSConnection
@umbral cape Very odd, I just set it up exactly like your's with the float at 3.0, random widget created and added. It seems to work fine. I can't at all explain that. If you print off that float before the delay, is it showing the right time? What about after the delay, does that ever print, and the rest of the stuff never happen?
@umbral cape This runs and opens the level fine. I'd check that float variable, try a different widget, or hard to say what something like that ends up being.
I'll test it and get back to you
@maiden wadi Okey it works now. Damn.. Now I ahve different issue. Because I used remove all widgets when i get out of the trigger area, it removes all widgets from the screen including this one haha
Need to fix that now.
To get the idea ,,this is the project.
How can i incorporate remove from parent. I tried using it but it started giving me random errors.. not all the time.Bcecause I ahve to use it 2 times, one time to remove msg that says to press E to inspect..and another time when player actually presses E for the second time to remove map from the screen.
if I print the string before the delay, and it prints it just fine, but after the Delay node it doesn't print anything out
what is your delay var value?
And it's not widget dependable, it stays the same whatever widget I use
@maiden wadi Can I use remove from parent to remove 2 widgets at once? I tried like this..but occasionally it gives me error..Not all the time.
I've had it on 2.5 just now when it wasn't working, and any other higher value isn't working either.
What's the best way to 'tag' an actor as belonging to a certain player in either a Local- or Online Multiplayer scenario? Setting a variable on the actor that holds a reference to the owning actor? Or is there some native functionality for that?
(also applies to actors placed in the level, not spawned through code, since there you can specify an owner as far as I can see)
How can i remove this widget from the screen upon leaving the overlay area? Why the Remove from parent doesnt work?
@tight cobalt try storing it in a variable when you create it and then remove it using that variable
maybe it created it self twice what if you plug in another remove from parent
^ This, I think. When you plug it into that previous code, all of that code gets run again
maybe it created it self twice what if you plug in another remove from parent
@tawny tinsel Nope..tried with 2. Its the same.
try storing it in a variable when you create it and then remove it using that variable
@latent junco How to do that? I am newbie.
you can drag out from create variable the blue dot and then is should say promote to variable
i think something like remove all widget of class node would work perfectly but idk how to set that up
@maiden wadi Well I can say that the problem is solved mainly. now worcks fine. But one thing i still dont understand. look at screenshots. on 1st one there is a rock and collision settings. and near one is other thing with same settings. same project , same place, same bullets same character. But with rock bullets go throe , when with white statue they disappear as they should .... this is a bug or what? Anyway thx for help. problem mainly solved as i said before
@tight cobalt drag off the Return Value on the Create Widget node, select Promote To Variable. Then Get that variable to removed the stored widget
Anyone know if its possible to get the instanced mesh number of a mesh you collided with.
So if I instanced 10 cubes and collides with the 7th one how do I return 7
Currently looping through the instance index with a timer
@blissful nacelle The rock mesh might not have collision. All you're doing is setting collision settings, but if the model itself doesn't have collision drawn in, the settings are affecting nothing.
@blissful nacelle The rock mesh might not have collision. All you're doing is setting collision settings, but if the model itself doesn't have collision drawn in, the settings are affecting nothing.
@maiden wadi got it. then problem totally solved. i didnt knew that. Thank you very much
@latent junco It doesnt work. I made it and still didnt remove it. But upon checking print string it seems like its making 3 of these widgets.. Any idea why?
@celest eagle you can break a Hit result and use the Hit Item as your index
@tight cobalt forgot the add to viewport
Yea..I had it like that..It seems like it doenst work..
Hello, does anyone know how to start a multiplayer game from UMG Blueprint? I am calling Load Level, but it appears to start it in Standalone mode, not Listen.
I added do once node before making the widget..then added to reset after the remove from parent.
Seems that fixed it..
Stil ldont understand why it printed hello 3 times after add to viewport.
Its working now..I guess its alright
Thanks everyone.
@tight cobalt keep the BeginOverlap and EndOverlap code separate from each other, dont connect nodes between them
nodes get executed backwards, it'll start at the last node and the run everything before it
Anyone ever have an issue with their Project Settings Inputs no longer updating? For instance, I have an Action Mapping to A but if I switch it to B and play the game. A still does the action and B does nothing? Also the keys look correct in DefaultInput.ini
@tight cobalt
I'm sorry, but shouldn't this keep spinning? it spinns up to 90ยฐ and then just jitters in place
@prime berry You need to use add local rotation. You're gimbal locking.
Hi! I'm trying to make a paper character controlled by mouseclick, already managed to make the idle animation and the walkforward animation, but i have no clue on how to proceed to make the walkin back animation and the walking left and right animations when i click on those directions. If someone could help me i would really apreciate ๐
My paper character is on 3D map btw
Hey guys, I am pretty new to Unreal and I am trying to find a way to make a brick constantly damage the player by a small amount
Let's say 1 a second or so, how would I go about doing that? I'm currently looking around online but maybe I am not searching for the right thing
Yeah, some invisible thing I put on the ground and when the player walks there he gets slowly damaged
Yeah
oh
https://www.youtube.com/watch?v=AUsjbZg57v8 maybe this helps
What is the Pain Causing Volume in Unreal Engine 4 .
Source Files: https://github.com/MWadstein/wtf-hdi-files
Thanks, will take a look now
Yep exactly what I need, thank you mate!
Didn't know the name
Basically make an actor with a collision volume and on overlap, apply damage every second.
Following that tutorial and it seems to be working!
does anyone have another idea how to get this right: i have a clothing piece helmet, with a true first person. so the helmet is clipping trough the camera. i setted the helmet to "owner no see" this works as intented but... it also completly not rendering, thus the shadow is not visible on the walls. what am i missing? anyone has a suggestion?
@indigo zenith Does enabling the "Hidden Shadow" on the mesh work?
@indigo zenith turn of "Render in Main Pass" on the mesh?
lemme check both of those options, thx for answer
both seem to behave the same when I test it, I wonder if there's some technical difference
thx, that works flawless
hidden shadow did the trick
i gotta try in multiplayer if there is difference in behavior @prime berry
I'd say multiplayer shouldn't make a difference for this
thanks, wasnt sure which channel to use
Hey guys! I've got a question, I'm working on a game with an overworld map, kind of like Super Mario World? Could I get some ideas of how to check if the player has cleared a level? I have been wasting hours trying to figure this out
If I was making something like that, I'd probably just make an array of structs with the level names, give them an integer for reference, and that lets you save other information from the level if you want, like if they got three out of five stars, or collected x amount of things, or died ten times in the level before completing it. Keep that in your game instance.
Okay so a progress bar goes from 0 - 1.. I'm trying to make a cooldown system for my abilites, but I have no idea how to convert my cooldown in seconds (which is 3,3 seconds) to a 0 - 1 value.. does that make sense?
So, in my game instance, make an array for a structure, that houses variables such as completion, etc?
@strange stream If I'm not too tired to think straight, I'm pretty sure it's just Current time left divided by max cooldown time.
So I need 2 variables for just one cooldown?
Yeah
I'm basicly trying to find the percentage of 3,3 seconds on a 0-1 value
How are you finding out your remaining time left on the cooldown?
This is all im using for my cooldown, and it works perfect.
After I use the ability a timer of 3,3 seconds starts. When that timer is done I can use the ability again. But I need the progressbar to update along with the seconds, if that makes sense
Anyone around that can explain custom collision channels to me? I created Enemy and Weapon just to try this out. I have my enemy mesh set to Enemy ignores all object channels and overlaps Weapon. My player's sword is set to Weapon, ignores all and overlaps Enemy. However, I get no overlap response. Is there something I need to do to make those channels work?
@strange stream Try that out, thats literally what I needed done as well
@rare gale Can you show me the two collision settings on the objects?
yeah, one sec
@strange stream Yeah, you're not getting away without two variables. Tick is a great place for that stuff because it gives a constant input of a number representing time.
This is how I did it with just 1
Hmm, looks like they disappeared. Trying to re-add. Maybe they didn't exist correctly before?
Ok, WTF? The custom channels I create in Project Settings keep disappearing. Is this something possible in a BP only project?
I've never had that issue?
That works. I personally run that stuff on tick. I'm not a huge fan of timelines. They update even faster than tick does and I don't feel like too many things need to be done faster than a frame render.
are you saving after you make them?
How do you save it? It's in the Project Settings menu. It's checked out, but there's no save button. I've done ctrl-shift-S, but nothing saves
Normally I would just use the CTRLshift S, but if that doesn't save, just get out of the project settings and press the save button itself, maybe that could help.
You might want to make sure your DefaultEngine.ini isn't set to write only for some reason. I think that's where custom collision is saved.
think the file was not checked out of P4. Trying that now
yup, that was it... ok, re-setting up to see if maybe that was the issue with making this work.
Hey, @maiden wadi Could you go a little more in depth on how I could write those variables to that struct array? I've got the struct set up with the name and such.
Well, looks like that worked. That's cool, thanks all ๐
Glad you got it fixed! gooner!
Using the method I showed I now have a reversed cooldown system.. The ''Fire Rate'' value at 1 is 1 second. At 2 its 1/2 second. At 3 its 1/3 seconds ectect.. is there some math I can do before the ''New Time'' so I can put fire rate to actual seconds?
- 100 or / 100 or something?
Hey guys, anyone know of any tutorials or documentation on how to go about making a blueprint that would make an object behave like the globe in google earth
Im only looking for basic zooming on scroll and panning around an axis
Hey guys
@marble agate Depends on how you go about it. You can just keep an integer in your levels to let you know which level is which. Like level1, keep a 1 there. make a little function in the game instance. In the level Getgameinstance, cast to your custom game instance, call that function and input your level integer along with whatever other inputs you want. In the function in the gameinstance you can -1 the integer for the array(So level1 goes to array slot 0, unless you have a level 0), and set array element from the -1 integer that's passed in along with the other information passed in from the level.
I got a healthbar in my game and an event any damage and I am trying to test it with a pain causing volume. It seems to work the first time I run into it but it doesn't update past the FIRST damage.
Any idea what could the issue be?
I am not managing to figure it out
You mean you want it to damage it every second or so, but it's only applying damage once and then stopping?
Show me your damage event and how you're handling it.
That all looks perfectly fine, what about where you're applying damage?
Thanks mate!
Just one more bug I noticed
If my health is 0 it doesn't kill me
it needs to reach -1
Can you take a look at that too mate?
@maiden wadi
@meager ocean You could try to clamp the health variable, like this.
Of course you don't need two variables for it, you can manually set the max if you'd like.
Bit confused on what you did, can
Yeah, thanks
Hold on
Seems a bit confusing to me what you did @marble agate
On the other hand I seemed to have fixed it temporarely
@meager ocean Set your health before the branch. Then check if, if <= 0 is true destroy actor. Or if you prefer that way, check if CurrentHealth - damage <= 0 , then branch.
Ooh yeah! I didn't spot that at first
Trying to process what you said while looking at my nodes
Give me a sec, I'm very slow with this
All you've got to do, @meager ocean Is just as Authaer said, set the health first, THEN check if the health is less than or equal to 0
So put the set before the branch
and connect the false to nothing?
Yep, got it!
Thank you both!
I'll most likely have a lot more issues with this as it is for a graded project so I'll post here more, or maybe I can message you guys privately if you have time, let me know!
Absolutely! I'd be glad to assist when I can!
Thank you mate!
Hi guys, i'm having issues with the localization dashboard. I created a fresh test project, with an UMG with a localized text, and then in the localization dashboard i'm tryint to gather text but it does not found any word
here my settings
Hello, i'm having this problem were i store values in a game instance but when i get the game instance in the UMG code, it doesn't have those values
Hey guys, I was wondering if anyone knows how to dismember bones. is it possible through a mesh using "constraint bone" node?
Im not too sure if this is where to ask this but its in blueprints so ill go ahead. I have setup audio settings but for some reason when I set the volume to 0 using the slider it will not turn back up again when I move the slider. However, if I never set it to 0 it works as intended going up and down as I choose
Just to clarify, im using Sound mixes and classes
@marble compass Have you casted the game instance reference to your game instance type?
yeah i did
@lethal night Haven't done a lot with audio, but one search says something about enabling "Virtualize When Silent" in the soundwave. Other than that, I'm unsure.
i noticed something new, if i do print a value from the game instance in the game mode it still prints the default value even though i set it on the level blueprint. but if i print it from the level blueprint it prints the correct value.
so it only prints the correct value inside the level blueprint so far
Can I see where you're updating and printing the value?
this is how i print inside the UMG with a click of a button
the result is 0 but i set the value to 1000 at the start
nvm, fixed the bug
it was just a wrong linked node inside the setting function
well Ive gotten my sound to work
but now only one slider works lol
This is the widget stuff
This is the mix
Sound classes
Damn this sound stuff is so confusing
Hello, i've add a video and a sound into my widget. When i press the button the video stops but my sound continues to play, how i can stop my sound?
This is my Widget Blueprint
@atomic prairie If you use "spawn sound 2D" instead of "play sound", you can get the Audio Component Object Reference and use it to stop playback
"return value" pin
(not sure if this works for widgets though...)
Like that?
Okay it's work thanks @tight schooner!
I wish I could just access the Unlit buffer in PostProcess shaders
Does anyone know if there is a way to do this?
I feel if I could do that I could make a post effect with a unique lighting
And I really like when games have a unique look
Hello guys.
Might be a very stupid question but, I'm trying to figure out how I can allow players to hold down a key and continually cast an ability so long as they keep it held down and still have mana. The only method I found was using event ticks and running the logic as long as the button is pressed down (which that information is stored in a boolean variable). But of course this means that instead of waiting for the animation or skill to fully complete, the player can activate another instance of the ability and spend resources early.
Can anyone help me on this?
First half of the logic.
@atomic prairie Yeah, you can store the reference into a variable as well for later use. But whatever works.
is it possible to completely enable/disable a movable light through blueprint ?
yes
How? I can only set intensity to 0 but it seems like performance wise is still there
is there a way to subscribe to animnotifies and animnotify states in classes other than animinstance?
i'd have to open my project and look what i did. might be some combination of Enable component set to off, and or setting intensity AND shadows off
shadows is the biggest performance cost
can't find it ... yeah I'll try to remove shadows anyway, thanks !
@fallen glade set visibility?
@tight schooner that's it, thank you !
oh yeah my code was only turning off shadows (because i wanted the areas still visible to have lighting but better performance by turning off shadows for those farther away lights. saved me about 20-30fps)
Did they remove Alt+Leftclick as a duplication method, or is it a setting I need to enable?
does anyone know of a method to get smooth camera input rotation without using a spring arm component?
This doesn't work, and I've confirmed that Current and Target are different transforms. I have no idea what's wrong with it. Any ideas?
interpolation but... on a do-once? Shouldn't that be run on tick? (Esp. when delta-time is involved...)
If your transforms are weird, maybe check if one is relative and the other is world-space
they should both be relative or both be world
So to give some context, I have a camera movement system based on an input axis, and I'm trying to come up with a nice camera drift movement when the player releases the key
sounds exactly like what I've been trying to do
So, I'm taking the last position when the player releases, doing some math, and predicting where it might be
And then trying to interp
The first time I tried it, the camera zoomed off into the distance
So I thought a do once would fix that
sounds like a world/relative issue
the interp to needs to happen over time, a do once will only interpolate for one frame and then stop
that being said, even without the do once I'm still having issues. at the moment the camera just rotates really slowly and with no kind of smoothing
Ok, well when I take it away, the math in my prediction speeds up and exponentially increases the interpolated distance until I'm zooming at lightspeed through the world
As far as smoothing inputs go, it's possible to interpolate (or otherwise smoothen) the input axis values rather than the resulting action by abstracting the input into a variable.
Maybe there's some built-in way to do that, but I'm not a BP expert. So the manual way would go like...
I did notice there were two, what's the difference?
Finterpto constant is not frame rate dependent
on tick or on a tick-like input axis event --> set [an abstracted input axis float variable]. And you use that variable in conjunction with an interpolation node of your choice to set it
and yeah, Delta Seconds has to be involved in some way
fair, didn't make a difference though
What is ideal here? You want it to interp faster?
I want the rotation of the camera to be smooth according to user input
@tight schooner so keep the last value of the input variable and use it for the interpolation?
yeah, you set the variable with some mix of itself, the live raw input axis value, and delta-seconds determining the interpolation strength
Idk what you mean by smooth really
camera lag on rotation
which I'd normally do with the spring arm component but that isn't working at all so I have to try alternative means
Proper lag would require some buffered history
But using a spring sim in bp at a fixed rate may get you semi ideal results
Renzus approach is worth considering though
Something like this I guess
Ok, update. I fixed my math and the "zooming to infinity" issue, but now I can't get it to stop interpolating.
@tight schooner where would abstract lateral axis be set?
imagine that offscreen there's a Set Abstract Lateral Axis node
with the lerp output connected to it
gotcha, yeah that's a good approach, I'll try it
out of curiosity, why do you call it 'abstract' lateral axis
the 10 is like the smoothing "speed"
It's not the raw value. I'm not a computer-science person though so IDK what the proper term would be for that concept.
it's abstract in the abstract 

@tight schooner worked like a dream, thanks!
@vocal urchin I'd recommend giving renzu's solution a go
Doesn't seem to work for me
may I see your blueprint?
It just doesn't interp. Been staring at it for hours now, trying different things ๐
The math to get the "predicted" position slide is fine. That's not the issue anymore. It's just the darn interp. Doesn't do anything
it won't, because that's not a tick event
But I have delta time there
doesn't matter, that code is only getting called while W is down
So, I did try attaching that to event tick, and it shot off into the distance
or released in this case
are you moving the camera according to an input axis or a key?
an axis mapped to a key
I'm trying to get it to work before I just redo the whole thing and try to do it based on a key only, and no axis
can you get an event to that axis?
I don't understand what you mean
Yeah, that's what it is
That's the first part. It works fine
set the current axis value as the target, and then create a new float variable called something like 'LastMoveForwardAxis' or something and set it as current
plug 'Get World Delta Seconds' into the Finterp constant
then you want to set 'LastMoveForwardAxis' (or whatever you called it) to the return value of the FInterp, and then you'll have your smoothed axis input to do whatever you want with
Why do I have to use FInterp?
that'll smooth the input axis
whew, I'm lost
instead of smoothing your result you're smoothing the input you're using to create the result
my camera will now rotate smoothly on the yaw because I smoothed the yaw axis
even though it's functionally just doing a direct add onto the yaw input
So when you let off the key, it interps from 1 to 0?
yep

