Vertex snapping does not work in BP

I need to use vertex snapping inside my BPs but it simply does not work. I need to use BPs as prefabs a lot. Instead I would just place all the objects I need inside it first in the world and then convert multiple to a BP but that doesn’t work anymore (Worked in 4.6 and below). Which is especially awkward since a BP should be what you use as a Prefab instead (Prefabs don’t exist). Let me know if I should post that as a 2nd bug report.
Tried 4.7.3 and 4.7.4.

Hey Davision,

You are still able to create a BP from a collection of placed objects in your scene, the process is just a little different. If you have a static mesh in your scene and you wish to add components and other meshes, simply use the ‘Add Component’ dropdown menu in the ‘Details’ tab of your selected mesh.

Static Mesh Actor Blueprint

37969-addedcomponents.png

Here I used the add components button to add the Static Mesh actors to the original mesh. Since I am doing this within the perspective viewport, I have greater control over snapping and placement of objects.

Added Components

This is what the ‘prefab’ or blueprint looks like pieced together in my scene. After you have all your objects placed how you would like, use the blue button ‘Blueprint/Add Script’ which will prompt you to name the blueprint you wish to create.

Let me know if this worked for you as a solution, or if you need further assistance or have any other questions.

Thank you,

Ok, I just thought that new component button had nothing to do with the add blueprint button.

Are there plans to make all the normal viewport functionality also available in the blueprint viewport?

There are some things that you will not be able to account for while editing things within the Blueprint viewport, like how it will look when baked with lighting, or how it will look exactly in the level. That is unless you drag the blueprint into the scene. Then you can continue to edit the blueprint and watch it update in your scene as well.

The functionality within the Blueprint viewport is pretty versatile and flexible. Are you referring to a specific function when you say “normal viewport functionality.”

Regards,

When I select components of a blueprint in the normal editor viewport I get a “Blueprint components must be edited in the blueprint” message. (under the list of the +add component button) So every time I want to edit things inside it using functionality like vertex snapping I would need to create the blueprint again. All the snapping features except the normal increment snapping seem to work only in the normal editor viewport. So those would great to have in the Blueprint viewport as well.

The problem I currently have is that the more complex assets I import from PhysxLab have their pivot mangled with values like 43.34252 and for physics objects I need to place everything perfectly together. So grid snapping is useless and I need to use vertex snapping instead which I can’t in a BP. I also can’t redefine the privot in UE4. Like setting the pivot to be centered like you can in 3DsMax. That would be also a great feature to have.

Now that I’m importing assets in UE 4.7 I’m having more problems. Before I could use a trick to get the pivot of a asset centered by using group (the 2nd is then just a dummy object I delete later) with that pivot I then use vertex snapping to get it positioned perfectly. But now that it less comfortable with making BPs I can’t just use that positioned asset because I have to use “add components” which doesn’t allow to add scene objects to the BP. Looks very much like a step backwards to me with the new way of making BPs. Limiting and less comfortable.

In 4.6 I was also able to replace the root component in a BP. Can’t do that anymore in 4.7. Would like to use a Arrow object as the root but I can’t place that in the scene nor can I replace the root asset inside the BP with it

Hey Davision,

It sounds like you have some feature requests here, so in order for me to relay this to the developers, could clearly state what features you would like to see implemented?

As for the arrow component as the root component, I am not having troubles getting this to happen. Create a new actor blueprint and add a new ‘Arrow’ component which will be set as the root. What I have also noticed pertaining to the pivot of your objects within the blueprints, after adding my arrow component as the root, I am able to add a cube static mesh under the root and move this within the viewport of my blueprint which then adopts the pivot point of the root component.

Here is an example of what I am referring to:

Root Arrow Component

Edited Pivot

I did get from this post that you would like to have vertex snapping within the blueprint viewport, so if there are other requests you have please let me know

Thank you,

Ok, have not though of that to get the arrow as the root, just need to make a new BP then.

Here are my wishes:

  • Vertex snapping within the blueprint viewport,
  • Setting the pivot of a actor or component to be centered, could swap like in 3Ds Max.
  • Vertex Snapping that snaps with vertex to vertex (whole object move)(currently it is pivot to vertex)
  • Adjust able pivot of the BP
  • That right click on a component does the same as it does in the editor window, most importantly access to “find in content browser” and “replace”
  • Show collisions in BP viewport
  • Selecting several objects at once in the editor viewport and then making a BP of that.
1 Like

Hey again Davision,

I just wanted to point out some other ways to move and transform your Static Meshes in the perspective viewport.

Edit Transform

I will go ahead and enter the feature request to edit the working pivot as well as using vertex snapping within blueprints. As for the selection of multiple meshes within the viewport and create a blueprint out of them, this feature was removed due to the new workflow introduce in 4.7. When we implemented this new UI for blueprint creation, we ran into some complications with trying to keep the old workflow as you mention. We are currently working on trying to re-introduce the composition of blueprints with multiple selected actors in the viewport.

If you have any other comments or concerns, or if you need additional assistance please let me know.

Cheers,

I have crazy snapping problems in ue4 as well. on the left is a bunch of modular meshes together and on the right is a bp i made by selecting those meshes and creating a bp using selection as components. When i do this the bp is not aligned to the grid like it was as meshes and i cant align it back to the grid in bp because the functionality in bp changes so much for the worse. Why cant bp editor be the same as the viewport editor? why cant the bp use the center the meshes and snap to the same grid as before?

i also got the bp to match the grid in bp yet in the viewport it doesnt match with the game grid. How hard is it to make the grids match?! Unreal grids are litterally unreal… theyre fake. I mean whats the point of snapping to grids if the grid doesnt match the grid in bp? PLEASE FIX THIS! MAKE ALL GRIDS MATCH UP!

Hello CloudMonster,

Could you provide me with screenshots of your viewport in your Blueprint and in you Editor Viewport? Specifically the snap grid sizes you are using in their respective viewports.

Editor Viewport Grid Controls

69051-gridsizes.png

Blueprint Viewport Grid Controls

69052-blueprintgridsizes.png

Be sure that your grid snap settings are set to the same size, and when working in the blueprint editor, your root is set to 0,0,0 so it is not offset when placing in your scene.

Thanks,

Not sure what I did but I somehow managed to get my BP asset matching my viewport asset all lining up on both grids.

Next I added floortile assets to my level selected them all an pressed crtl end which snaps the assets origin to the grid right? and snapped them together to make a floor. Then I selected them all again and created a BP. In the BP they don’t line up on the grid but in my viewport they do line up.

I couldn’t find out how to change the location of my root to 0,0,0 there is no translation option unless I make another scene parented to the first scene but then It shows that the new scene is on 0,0,0.

The workflow I want to achieve is to simply add in modular assets that snap to the grid, snap the assets together I make something cool, select it and create a BP that aligns to the grid. Then when I drag the BP into my game it should snap to the game grid.

How do I do that?

I am a bit confused, as in your first sentence you said you got them to match up, and then in your explanation of your steps you mention how the BP Viewport does not match the editor viewport.

Just be sure the root component of your Blueprint is set to 0,0,0. You also want to be sure you are using the same grid snap settings as I mentioned before.

I got one of my BPs to match my viewport probably by changing the scale to 1 and manually getting it on the grid.
Of course I don’t want to do this with every single blueprint I create.

Can you just explain to me the workflow of how to get modular assets I into ue4 then Into the level snapping to the grid then snap those assets together and make a blueprint that align to the same grid?

My root is always 000 when I create a BP and my grids are always the same in BP and viewport, they just don’t align the same on their respective grids even if I try to make them different.

So I did some tests. I dragged in one wall asset aligned it to the grid and made that into a BP and it aligned to the BP grid automatically. I tried the same thing but with multiple wall assets next to eachother and it worked again great.
Now I try more wall assets a doorway and a cornerwall to make a square 20x20 room. Created a BP and it isn’t aligned in the BP but it is on the game grid. So it has something to do with that last test I did.

Any ideas? It’s annoying because if I add more assets to the BP they won’t align.

It sounds like you are getting it to work correctly sometimes, and others you are having troubles. So I just did a test and was able to get all of my snapping correct in the scene and the viewport. What you want to make sure to never do, is move any object at all, with snapping to the grid disabled. This will offset your object, and then when you try to snap it to the grid again it will be wrong.

I generally tend to use the values of 5, 10, or 50 when snapping as those cover a nice range of close and far distances when dragging objects. Below is an example of the small blueprint I created using the modular assets we have in the engine content. Keep in mind also, they are all pieced together using the same dimension walls (400x300) which is why I was able to get them to piece together cleanly and symmetrically.

Modular Blueprint Walls and Door

In Scene

As you can see I have maintained the grid snapping size, but you will also want to take note of where your root is for your blueprint. If you want the root to be centered on the object, you can create a default root component (0,0,0) and then parent your modular assets to this root.

Hopefully you can get proper results with a little practice and further experimenting. When working with modular assets, you want to keep in mind the size and dimensions of the objects you are piecing together, as even though they might snap to the grid, they will be offset due to their own relative scale.

Cheers,

Ok so sometimes when I make a BP out of a bunch of assets in the viewport it gives me a messed up default scene root that is usually off centered and can’t be changed so when it is off centered and off grid I

  1. add a new component “scene”
  2. center scene component if it isn’t by default
  3. select all assets and line them up to the grid manually by changing the snaps to 5 or 1 and change them back to 50 after its lined up
    4)parent all assets to the scene component
    That is the only way I found to fix the problem.

Now my perferred workflow is to snap together my modular walls in several different ways for example, ill make a base BP with a general 20by20 wall room and take that Base BP inherit everything to a new BP and add some extras to it, say a ceiling. By inheriting the base BP(20by20 wall room) I can bypass having to make that room over and over and make different variations of a 20by20 room.

In theory it should work right? Except when I build these prefabs using Base BP in the viewport(for the better editing features that you don’t have in BP for some reason) and convert to BP everything i converted becomes invisible yet still shows their info such as their name in the component list and their bounds.

I tried dragging the base BP to an empty BP and it works fine but the thing with that is that ill have to add every BP or asset I want in manually and edit them within BP which sucks because its missing features that the viewport has.

Therefore, Pleeeease tell the unreal guys to make BP editing the same as viewport editing. These inconsistencies are killing my workflow and causing my great pains. I like unreal for the most part but there are some basic things that need to be fixed.
Thanks for helping and please get this to someone.

I will try to take the input you have provided and put it together in a constructive manner so someone can take a look.

Cheers,