In Unity, everything is pretty much a game object. Rather it’s a cube, a light, a C# script.
As an example, if I put a cube and in my Unity scene, then applied a material to it and then attached a C# script that would rotate the cube, I could then save that back down into my games “content” section and it automatically becomes a “prefab” where I can drag that prefab back into my scene and it will have all the properties ect already set. I could then just reuse that exact same thing over and over.
The script itself knows how to get the game object it’s attached to, grab the transform, and it’s the transform that the script is actually rotating. So, basically, this rotate script can be applied to ANY game object that has a transform rather it’s a cube, a light, a detailed out mesh etc…
Thanks for the heads up, What’s called a Level in Unreal is called a Scene in Unity. I’m trying to be sure that I’m using the proper terms.
Sure, I do understand the distinction there. The truck mesh is just something that sits there until you add functionality to it using a BP. Same concept in Unity, have to attach a script to it to make it do something. I think my comment got a little murky and probably wasn’t clear.
And that’s what I’m trying to figure out. How do I reuse a blueprint. Lets say that I want to create a BP that can work with my material to expose the two color values. That I can then attach to either a car mesh or a truck mesh and modify the material. Is there a way to “drag and drop” a BP onto a vehicle in the level?
I hope this makes since. If not, I can go into a lot more detail about how the base material and the instance material work. And then how the truck BP was using that material in the construction script of the truck bp.