A while ago I saw a video of ArchViz demo (unfortunately I don’t have URL) and there is interior scene of kitchen. At one point a chair is replaced with different one of different style.
Is it possible to replace static mesh or asset at run time? Let’s say using ‘R’ key as input would replace/cycle thru few available options. I am not looking for animation solution but it would have to be run time.
Let’s not worry about lighting rebuild, etc at this point. Any suggestions and ideas are most welcome.
Yep that is possible, I can think of 2 different ways of doing it:
First way is to have all the assets in the scene at the same time but in blueprints use the set hidden node to toggle which asset you want to be visible.
Second way is to destroy the mesh and then spawn a new one in the same position each time you want to change it.
I just use visibility. Very simple. You can use “multigate”.
But yeah, in fact I’ve been asking myself what about lighting?. I just had this crazy idea. What if I use for exchangeable assets the sublevels? I can bake lights per level, right? A bit madness as the idea, tho… Create instead of “chair_1-…3 blueprint” the “chair_1-…3 level”, then I could use “load and unload stream level” function.
Hmm but, baking lights separately would be hell of work… so I don’t know… maybe not even worth trying… what do you think, would be that madness?
Found a better way. More difficult at first, but with many objects you will realize it’s much better.
EDIT: Okay, I’ve changed it completely. Now it looks Pro!
Ok, it will take me little bit more to try it (will have to look at some blueprint tutorials [how to reference static mesh from scene, interact with object under cursor]). Thanks for your help and I may need more assistance but I will research it first.
Sure, no problem. For a little hint, search for tutorials on how to use blueprint “interface” and “line trace by channel”. There is a tutorial about that somewhere in quick tuts on Epic Youtube channel.