Noob with two questions... please :D

Hi there!!

My two questions today:

First: When trying to import a multi mesh fbx, UE sets all the pivot points to 0,0,0.
I readed this is the normal behaviour; then, how im supposed to import the complex mesh?
I meanj, i should get each component in 3ds max and set its pivot to 0,0,0. But my mesh has TONS of components. So when importing to UE, all the pieces would be in the wrong place…

How do i solve this, please?

Second: Im watching tutorials but i am not able to understand Bueprints 100% (my english is bad).
For example:

If i have a lot of doors: then i get one and set it for “open on clicked”. Should i set this in the level blueprint? or its better to create an actor blueprint for that.
If i dont want to repeat the same process for all the doors… i could just drop the blueprint and delete the old doors. But then… If i click one, all the doors would open¿?¿

Thank you for your time in advance :smiley:

Not sure about you import question. It is better to do it as an actor because as you said you don’t need to repeat the same process. If you open one door other doors will stay closed. They are independent of each other, when you make an actor it is like you are making a template. Don’t know how to explain it better :stuck_out_tongue:

I can’t help you much with the 1st question, but the 2nd question I might.

In most cases, I would say it’s better to use an actor blueprint. The level blueprint is useful for things that will only occur in that level, and aren’t really needed elsewhere in your game. Whatever scripts you have in your level blueprint will ONLY be run on that level. For instance, if your game has more than 1 map to play on, and you set doors to be “open on click” in a level blueprint, then only that level will have properly functioning doors. Any other level will have a different level blueprint, and thus non-functioning doors. That is, unless you copy/paste it for every level blueprint.

What is better for this functionality is to use an actor blueprint. Keep in mind, an actor blueprint is just that - a “blueprint”. It just contains a series of instructions for how to perform some specific action. Think of it like a blueprint for building an automobile. The blueprint describes how the car is built/functions, and the factory produces the actual automobile. A blueprint is not an actual, tangible thing.

So if you have a blueprint named, let’s say, “InteractDoor”. This is an actor that contains a blueprint for user input + a door mesh.

Each time you need to place an interactable door in your level, you would put the InteractDoor actor. Each door is it’s own specific instance. So if you add multiple doors, you will have InteractDoor1, InteractDoor2, InteractDoor3, etc. etc. Every single one of these doors will have the same set of instructions… the same “blueprint”… but they are not the same object. An action on one door will not affect other doors. If you open InteractDoor1, all the other doors will remain unaffected, for instance.

This has many benefits. Let’s say, you want to change the way the door opens/closes. Instead of having to re-write every single door’s open/close instructions, you just edit the blueprint, and now all the doors will have the same updated functionality, and yet they are still distinct from one another.

If you know C++, or another OOP language, think of it like the difference between a class and object. The class is just a description of what kind of data the object holds, just like how a blueprint is just a set of instructions about some functionality for an object in your game.

Hope that hlelps! :smiley:

Wowow thats good information! Really answered some questions in my mind.

Finally i understand the level blueprint thing (could not understand it at the wiki) and its implications.

Really, THANK YOU both!!!

No problemo. I had many of the same questions when I started using blueprints as well. It’s important to note, too, that each actor has two blueprints, sort of.

Let’s say you make a blueprint called InteractDoor. You put 2 actors in your level - InteractDoor1 and InteractDoor2. Both doors use the InteractDoor blueprint and the same functionality.

But… let’s say you want each door to be unique as well! You want Door1 to be big, and open slow. And you want Door2 to be small, and open quick. If you click on the InteractDoor blueprint in your content browser and modify it, the changes will affect both doors, because they share the same blueprint. So, how do you get around that?

Well, in addition to being able to modify InteractDoor, you can actually modify the specific InteractDoor1 and 2 blueprints.

For instance, if you select InteractDoor1 in your game, and it shows up in the details panel, you can click Edit Blueprint. There you can modify the specific actor however you wish. This will not affect the general InteractDoor blueprint, or the InteractDoor2 actor. It will only affect InteractDoor1. And you can do the same with InteractDoor2.

They will both share the blueprints functionality of opening/closing the door, but you can modify the specific actors blueprint to customize that further.

Thank you Sir, this is really good information; im playing with it now and having a lot of fun!