Hello; in one of my projects, realtime reflections would be extremely useful. Unfortunately, I've tried every trick in my book, and I can't get anything to work in the Unreal Runtime; perhaps someone has some insight as to why:
Basic Stencil Mirrors. I know all about stencil, but when I try to use it here, it only functions properly on large subtracted bsp surfaces. If I use it on a smaller surface / an additive surface [aka a mirror in a bathroom], its as if the reflection is inverted; as if I'm seeing what a reflection on the opposite side of the mirror might look like. An interesting effect, but hardly a mirror.
Warpzones. A dirty trick, but one could conceivably fake a mirror using warpzones... only, they simply don't render. The zones teleport properly, but that's about it.
Scripted Texture - DrawPortal. The function causes a "No Label" exception, and crashes to desktop. Using a non runtime generated scripted texture [think a mapper adding a TV + Camera to his map] I don't get the crash, but I get a black surface. Were scripted textures to work, I could theoretically get something mirror-like running or at worst an unmoving [and unnatural] reflection, but still a reflection.
Cloned Geometry. A _really_ dirty trick [though useful at times], but my space isn't conducive to this solution as in many cases you'd see this cloned geometry outside the mirror. Would it be possible to restrict rendering of a series of objects in world space to a surface, such as my very basic rectangular mirror?
[Cubemaps are fine for reflections, but the real necessity is that I reflect, in realtime, geometry which is subject to change.]
Any ideas? As far as I know, stencil works in UT2004, and I've used Canvas.DrawPortal successfully in this version of the runtime [OpenGL support isn't an issue], and thus find it really hard to believe that the same function in the scripted texture fails so spectacularly. I have Stencil enabled in the ini, and I've tried every other flag option I can think about. I'm running DirectX 9 c on a Radeon 9800 pro, in Win XP Pro.
This project is both code and geometry based.
Thanks for your time!
Basic Stencil Mirrors. I know all about stencil, but when I try to use it here, it only functions properly on large subtracted bsp surfaces. If I use it on a smaller surface / an additive surface [aka a mirror in a bathroom], its as if the reflection is inverted; as if I'm seeing what a reflection on the opposite side of the mirror might look like. An interesting effect, but hardly a mirror.
Warpzones. A dirty trick, but one could conceivably fake a mirror using warpzones... only, they simply don't render. The zones teleport properly, but that's about it.
Scripted Texture - DrawPortal. The function causes a "No Label" exception, and crashes to desktop. Using a non runtime generated scripted texture [think a mapper adding a TV + Camera to his map] I don't get the crash, but I get a black surface. Were scripted textures to work, I could theoretically get something mirror-like running or at worst an unmoving [and unnatural] reflection, but still a reflection.
Cloned Geometry. A _really_ dirty trick [though useful at times], but my space isn't conducive to this solution as in many cases you'd see this cloned geometry outside the mirror. Would it be possible to restrict rendering of a series of objects in world space to a surface, such as my very basic rectangular mirror?
[Cubemaps are fine for reflections, but the real necessity is that I reflect, in realtime, geometry which is subject to change.]
Any ideas? As far as I know, stencil works in UT2004, and I've used Canvas.DrawPortal successfully in this version of the runtime [OpenGL support isn't an issue], and thus find it really hard to believe that the same function in the scripted texture fails so spectacularly. I have Stencil enabled in the ini, and I've tried every other flag option I can think about. I'm running DirectX 9 c on a Radeon 9800 pro, in Win XP Pro.
This project is both code and geometry based.
Thanks for your time!