[4.8.0] - SplineComponent 'Set World Location At Spline Point' Broken In Editor

Hey Guys,

Found a bug w/ the SplineComponent. If you call the BP Node ‘Set World Location At Spline Point’, it moves the location internally but this is not reflected in the editor. The actual spline points and lines are still in the same location they were previously. Hope this helps :slight_smile:

Thanks.

,

Just to clarify, if ‘Set World Location at Spline Point’ is used in a blueprint’s construction script, the changes are not reflected in the editor. Is that right?

Hey TJ!

Correct. I think I’m also using it in a Blutility Event as well, let me double-check and get right back to you.

EDIT: Sorry about the delay, was on vacation and at E3 last week

Okay, just checked. I’m calling this for sure in a Custom Event that is set to be ‘Callable In Editor’ after enabling the Experimental Blutility Feature. Maybe that might have something to do with it. I just checked and it’s not called anywhere else so it’s just the custom event. I wrote a custom event to help space out some spline points (to even track UVs) and was testing out a couple ideas when I ran into this one.

Let me know what you think and great to hear from ya TJ! :slight_smile:

Hey TJ,

I wanted to let you know that this happens in the constructor as well.

I just checked and one thing I tried to do (since transforms for spline points can’t be manually typed in), is to have a bool I can toggle in my BP that will give me a way around that. Sorry for the confusion.

Hey TJ,

Just wanted to check in to see if any of the technicians were able to dig any deeper? Hope you had a good weekend.

,

TJ is going to be out of the office for a few weeks so I’ll be taking over on this one. I’m going to run through everything listed here and will post back if I repro or need more information.

Hey !

Awesome, sounds great! Let me know if you need anything.

,

I haven’t been able to reproduce this on my end thus far, can you walk me through what steps you take in a clean project to reproduce this on your end?

Hey ,

I haven’t tried this outside of the game project I am working on but basically what I have, is a Spline Track Tool I created and I want to be able to do a Transform Type-In.

Unfortunately, you cannot type in a transform field for various Spline Points. For accuracy, I created a Boolean that I can toggle on and off that will take a position and tangent from an array and use that to set the tangent and World Location for the Spline point being edited.

Normally, it takes the location and tangent and just overrides the field so I can see the value but I added the bool to not override it and allow me to type in a position.

When my Construction Script runs again after committing new text to one of those ‘Location’ fields (w/ each one being associated to each Spline Point), it attempts to take that Vector for the location and attempt to call the BP node to set the World Location however this unfortunately isn’t taking place.

Since the data does update in my array, it does make the actual SplineMeshComponent move to where I typed the location in but the spline point never moves after calling the Set World Location for Spline Point.

If you try that and it seems to work, I’ll see if I can move any of the references that BP uses into a new project and re-evaluate it.

Thanks again !

Hey MC ,

I checked with our developers and it looks like this isn’t going to be directly viable at present. Spline points are not considered properties, so they won’t be editable through the details pane to have their values manually set. You can set the construction script to set points in the vector BP array with it marked as editable and Show 3D widget, however you wouldn’t be able to expose other properties of the points, such as tangents, roll, etc. This is something they may look into for the future, however.

Hey ,

Gotcha, thanks for looking into that one.

I have an idea for a solution that could work. How about a Transform Type-In Panel (free floating) that maybe like one of the F Keys could bring up?

It would work for anything that has a World Position and that way, you could avoid the need on it being a priority and simple just re-set the transform in the actor so that it would show in the Details Panel instead.

This could also be handy since I always need to scroll to it on the panel and could be much easier if I could hit a key and a small compact Slate Window could pop up and work with any Actor you have selected in the editor just simply Alt-Tabbing through each field for quick entry. That would also work will the Spline Points as well since this Slate Window could make a call to update it’s world position :wink:

Main Issue:
Were the developers able to figure out though the main issue of this thread in why calling the BP Node, ‘Set World Location at Spline Point’ is not updating the location of the Spline Points?

Thanks again!

,

I just wanted to let you know I’m still looking into this so I can give you a concise answer. Once I have more information I’ll let you know!

Thanks ! Looking forward to finding out more about the issue and it’s going to make a big difference in my track tool for some of my Blutility Events (For instance, re-centering all the points on the track w/ the origin of the level so it makes the most of the 20km space) as well as the direct transform type-in. I’ve moved off of that tool temporarily and onto a couple other things for the time being.

Keep me posted and hope you are having a great week!

Hey MC ,

I was able to reproduce this on my end and have entered a bug report, UE-18438, to be assessed by the development staff.

YES!!! Awesome :slight_smile:

Thanks and enjoy the weekend!

,

I can also confirm that setting spline point world locations via construction script is not working. Even if there is no plan to allow this to be edited in the details panel, the fact that the node exists and does not function is problematic. I was attempting to implement a Kalman FB filter in the BP construction script, and even though I can see all the calculations working correctly, the spline points are not updating their world location.

Cheers,
Tony

Hey ,

I too have noticed that the Set World Location at Spline Point function in blueprints does not work correctly as well. Are there any plans to remove or fix this?

Thanks,

Hi TheAwesomeTh3ory,

Can you be a bit more specific? What are you trying to do with the node? There were some changes that have occurred in future releases for splines via blueprints so I’d like to check and see if the error you are experiencing has already been adressed.

I was trying to set all of the spline points in a spline adjacent to all of the other spline points in another spline using the node to make them appear to be paired.

However, I can’t get the node to even work when I have a editable bool connected to a branch that sets the point of spline to 0,0,0.

Nothing happens.

Is there another way I can achieve the effect of paired splines?

EDIT: I figured out a blueprint solution to paring two splines. If anyone is curious I can post a screenshot.