Home Unreal Engine

UDK - Maelstrom/Whirlpool - Creation Process?

polycounter lvl 12
Offline / Send Message
Ace-Angel polycounter lvl 12
Hey to all,

I was wondering if anyone has some feedback I could go about and create a Whirlpool/Maelstrom kind of effect in UDK for water.

I have been racking my brain for a while, and wanted to create it with materials, but since UDK doesn't have a flow map attribute, I don't know how I could be able to fake the suck and turn effect.

Here are some examples of what I mean:

[ame="http://www.youtube.com/watch?v=bcejITJRXw0"]Cataclysm Beta: The Maelstrom Epicness - YouTube[/ame]
[ame="http://www.youtube.com/watch?v=TlfREfJCRZE"]RF5 Maelstrom R&D + Rendered ( Please check description for details ! ) - YouTube[/ame]

The biggest challenge for me is the one from WoW. It has the configuration I'm looking for, which is suck and twist, but I'm not sure how I would go about creating it.

Also, I'm afraid I might get some nasty transition/seams around around the calm/vapid water effects, basically, a very hard transition between them.

Currently, I'm attempting a decal projection/floating mesh, but I was wondering if anyone did experiment with Vertex-Blending for such a case of things, or had any other input for said issue.

Thanks in advance, Ace.

PS: I'm using a static mesh for water, since water actor is giving me issues and DX11 isn't something I have.

Replies

  • Ryan Smith
    Options
    Offline / Send Message
    Ryan Smith polycounter lvl 11
    A flow map is a UV map.... you render out the Flow map from the top down, and only take the Red and Green values and you have yourself the same information as a UV map needs. It's kind of like baking normals, except your baking UV direction with the flow.

    Out of curiosity, how would you go about rendering a flowmap?
  • Vailias
    Options
    Offline / Send Message
    Vailias polycounter lvl 18
    a flow map is more correctly a directional vector offset map. But really, for something like this that is overkill, unless you need to change your maelstrom direction internally often

    Now for this.. I'm actually sitting in bed with a netbook so forgive the lack of UDK examples.. but i can tell you the nodes you need.

    First: make sure your maelstrom mesh is planar uv mapped from the top. preferably in a flat state.

    The nodes you'll need are time, rotator, and uv coords. You'll want one texture map, or rather one channel of a texture map.
    Make this channel a circular gradient from the center of the texture as white to just under the edge of the texture as black. Make sure there is black all the way around the border.

    Multiply time by this texture channel, and some single float parameter to control how fast it actually rotates, then plug that into the rotator angle, then plug the rotator into your mesh texture UV's. now you have a texture that rotates more about its center than it does at its edges, and, with a proper texture setup, (hint: parallel lines) should appear to spiral down. Much like a screw thread, nothing ever actually moves up or down it just looks that way to us humans.
  • Ace-Angel
    Options
    Offline / Send Message
    Ace-Angel polycounter lvl 12
    Virtuosic wrote: »
    A flow map is a UV map.... you render out the Flow map from the top down, and only take the Red and Green values and you have yourself the same information as a UV map needs. It's kind of like baking normals, except your baking UV direction with the flow.

    Out of curiosity, how would you go about rendering a flowmap?

    That's something I tried, but in the case of Normal Maps, the details don't compress as seen in Uncharted and/or HL2, but instead 'smudge', as if they're shot through a black hole before mixed with Jello. The only way I can get them to distort correctly is if I use a very blurred and huge cloud-esque map, which isn't a Flow Map anymore really.

    As for the maps themselves, I just paint the RG colors for my water plane as to where goes what. If I have a pillar in my water, I will paint a Yellow spot around that area, so I might be off the mark by a huge margin.

    Excuse my ignorance on the subject matter since this is where I got the info from: http://graphicsrunner.blogspot.com/2010/08/water-using-flow-maps.html
    Vailias wrote: »
    a flow map is more correctly a directional vector offset map. But really, for something like this that is overkill, unless you need to change your maelstrom direction internally often

    Now for this.. I'm actually sitting in bed with a netbook so forgive the lack of UDK examples.. but i can tell you the nodes you need.

    First: make sure your maelstrom mesh is planar uv mapped from the top. preferably in a flat state.

    The nodes you'll need are time, rotator, and uv coords. You'll want one texture map, or rather one channel of a texture map.
    Make this channel a circular gradient from the center of the texture as white to just under the edge of the texture as black. Make sure there is black all the way around the border.

    Multiply time by this texture channel, and some single float parameter to control how fast it actually rotates, then plug that into the rotator angle, then plug the rotator into your mesh texture UV's. now you have a texture that rotates more about its center than it does at its edges, and, with a proper texture setup, (hint: parallel lines) should appear to spiral down. Much like a screw thread, nothing ever actually moves up or down it just looks that way to us humans.

    Interesting, I'm going to have give this a test, didn't think about the process as a that of a parallel line.

    Thanks alot my good Sir, will report back with my feeble attempts.
  • passerby
    Options
    Offline / Send Message
    passerby polycounter lvl 12
    you could always just manipulate the UV's in the mesh to create a similar effect to a flow map if you got enough geometry for it.
Sign In or Register to comment.