Can a plane reflection actor be used create two mirrors at 90 degrees to each other? From the image below: The mirrors are not reflecting each other. Any workaround to this?
Because rendering a pixel infinite times is impossible to do. You wouldn't do that of course, you would cap it at like 20 renders or something but that's still very expensive to do so it's not possible to do it that way in real time
I doubt Unreal had a toggle somewhere that allows bounce reflections like this. You would have to write a custom shader/material that approximates the effect.
You could try placing two cameras behind the mirrors, then rendering their output to textures. That's going to get expensive.
Or; you can utilize some parallax offset with a reflection capture or do some shuffling of colours as you get towards the center of the mirror
This is something that may require a fair bit of research. Screen Space Reflections won't get you there, reflection probes aren't going to handle the bounce reflections. There are some solutions in real time but they all involve some trade offs, thankfully because you're not rendering a character it gets a bit easier to take it. Take a look around at real time reflections and you'll get the idea.
Is there any drawback to doing what you mentioned? Why is this avoided in game engines? This is for an archviz project.
Basically because in offline rendering, you have time to wait hours to render the scene hundred times, and in a game you really don't...
There is a workaround for this though, you could use blueprints and move a scene capture around and draw into a render target again and again. You could manually control the amount of steps. But if you are not familiar with blueprints, this isn't really an option.
Ok. I will give the screencapture a go. Between the 2d and cube. Which is better? I gather that the screencapture 2d is cheaper. I tried the screencapture cube but the scale of the reflection remains the same. I believe this is where blueprint plays a role. I can't find any video tutorial of how to set this up using blueprints. Any where I can look this up step by step. I am kinda a blueprint noob tbh. On a side note, I better start learning blueprints since I hear it makes things easier.
I would say you should not experiment wiht this, its kind of complicated. You need to figure out what the viewer would see from the players perfpecvive, represented from the scene captures view. So basically you need to align the scene capture with what you would see in the mirrors in mirros and you need to iterate them. This isn't anything 2 minutes or simple rule, you got to understand whats happening. But it definitely works. It is expensive though but if you go for 3-4-5 bounces its doable if you really need it.
Btw, does anyone know how to go about creating this: https://www.youtube.com/watch?v=O2JBB6RCCM4 Can this be done using a material where the timer moves accordingly or blueprints. I tried looking this up on youtube but all I see are timers for game screen or countdown tutorials. How about for timer display on static mesh? or is this done with decals?
You can use "debug scalar value" can do this, or you could have 2 panning textures:
In this example, the value would loop between 0-24 and update every second. With a different math, you could get this correctly displaying hours and minutes as well using a single debug float node.
Later today I'll come back and show you. I'll probably put it into a complete tutorial to include explanation of positioning, and other stuff. Its probably useful for other people as well.
Here you go. I decided not to go much into the details, its pretty straight forward. Seconds - minutes:
To change the decimal point to a colon, go into the debug scalar function, youll see there are 2 textures. One for the numbers font, and one for the point. Its packed into one of the channels. You can change that texture. You can also change the font texture.
Sure you can. Just use different period with the time, and different division. But for this, you will need a second debug scalar node. because a number can't really have 2 decimal point. And then just add the 2 debug scalar node together. You will also need to position it using the uvs input of the second debug scalar.
Or you could do it with a single debug scalar, but then you wouldn't be able to have seconds displaying.
EDIT: Just found out about ue4 flipbook. Seems to over a better solution since I need a specific time to display on the clock and counting. Thanks for the help though. :- )
Replies
I doubt Unreal had a toggle somewhere that allows bounce reflections like this. You would have to write a custom shader/material that approximates the effect.
You could try placing two cameras behind the mirrors, then rendering their output to textures. That's going to get expensive.
Or; you can utilize some parallax offset with a reflection capture or do some shuffling of colours as you get towards the center of the mirror
This is something that may require a fair bit of research. Screen Space Reflections won't get you there, reflection probes aren't going to handle the bounce reflections. There are some solutions in real time but they all involve some trade offs, thankfully because you're not rendering a character it gets a bit easier to take it. Take a look around at real time reflections and you'll get the idea.
There is a workaround for this though, you could use blueprints and move a scene capture around and draw into a render target again and again. You could manually control the amount of steps. But if you are not familiar with blueprints, this isn't really an option.
I can't find any video tutorial of how to set this up using blueprints. Any where I can look this up step by step. I am kinda a blueprint noob tbh. On a side note, I better start learning blueprints since I hear it makes things easier.
https://www.youtube.com/watch?v=O2JBB6RCCM4
Can this be done using a material where the timer moves accordingly or blueprints. I tried looking this up on youtube but all I see are timers for game screen or countdown tutorials. How about for timer display on static mesh? or is this done with decals?
In this example, the value would loop between 0-24 and update every second. With a different math, you could get this correctly displaying hours and minutes as well using a single debug float node.
To change the decimal point to a colon, go into the debug scalar function, youll see there are 2 textures. One for the numbers font, and one for the point. Its packed into one of the channels. You can change that texture. You can also change the font texture.
Any chance I can add the Hour part to the clock display?
Or you could do it with a single debug scalar, but then you wouldn't be able to have seconds displaying.
EDIT: Just found out about ue4 flipbook. Seems to over a better solution since I need a specific time to display on the clock and counting. Thanks for the help though. :- )