Announcement

Collapse
No announcement yet.

infinite ocean plane system

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • #61
    Originally posted by zeOrb View Post
    :/ I really doubt that developers want to release or start to work on initially limited water system. Like UMG only for PC and etc. If you have "multiplatform, mobile included all-genre oriented engine " you want to have universal system, no one will make a limited option for high-demanded tool.
    Truth is mobile will never catch up to high-end computers.

    There are already a lot of features in UE4 that you can't use on mobiles so your logic is wrong.

    Comment


    • #62
      Originally posted by Errvald View Post
      Truth is mobile will never catch up to high-end computers.

      There are already a lot of features in UE4 that you can't use on mobiles so your logic is wrong.
      You right about "Some things will never work on mobile", but it's all about consistency of tools.
      For example many rendering options are turned off while you creating a material, but there is a lot of tips and alternate versions of nodes for mobile. Same with post-processing and other features

      For water you can't create single version of water that work only on PC fps and tps, you HAVE to think about mobile adapted version and versions that will work for other game types.
      SuperGrid: Marketplace Page | Feedback Thread | Demo | Website
      Level design and prototyping for newbies

      Comment


      • #63
        Originally posted by zeOrb View Post
        For water you can't create single version of water that work only on PC fps and tps, you HAVE to think about mobile adapted version and versions that will work for other game types.
        I'm sure a lot of devs are not interested in Mobiles, for a mobile game you will simply NOT use dynamic water.

        The truth is (like ufna mentioned earlier) the engine lacks in some departments.

        Comment


        • #64
          Originally posted by Errvald View Post
          I'm sure a lot of devs are not interested in Mobiles, for a mobile game you will simply NOT use dynamic water.
          That doesn't really follow the Unreal Engine Workflow. UE is a cross-platform tool, as soon as you start making tools that only work on certain platforms, it no longer fits in with the rest of the toolset. There are very few things in Engine that don't work on other platforms, but they're widely known. Integrating certain features of water simulation separately using various methods and plug-ins gives you infinite scalability, and for something as complex as water that's very important. If Epic starts implementing features that are platform specific like this, you'll end up in a crazy situation where people are filing bug reports for real-time caustics generation not working on iPhone for example, which completely breaks the look of their game.

          What worries me is that people don't seem to understand how much work such a tool would involve, and how much it would take away from development time on other far more important (IMO) features. Especially considering it's all possible already if you're prepared to get your hands dirty... but that's how game development works guys.

          As I said, you're not going to have one tool with the ability to do everything that people want to do with it. It's worth doing some background reading on this subject and understanding why you have to break down water into very specific features that you want.

          EDIT:
          I forgot to add, the title of this thread is 'Infinite', which in a nutshell means whatever system you do come up with would have to be *entirely* procedural. Good luck with that!
          Last edited by TheJamsh; 08-15-2014, 09:01 AM.

          Comment


          • #65
            Originally posted by zeOrb View Post
            • Is it possible to implement good water model before implementation of parallel rendering?
            I don't know about the rest but in the 4.4 patch logs there is this:
            "New: Major progress toward parallelized renderer (can be previewed with “r.RHICmdBypass 0” console command.)", I guess stuff is happening.

            Comment


            • #66
              Originally posted by TheJamsh View Post
              That doesn't really follow the Unreal Engine Workflow. UE is a cross-platform tool, as soon as you start making tools that only work on certain platforms, it no longer fits in with the rest of the toolset. There are very few things in Engine that don't work on other platforms, but they're widely known. Integrating certain features of water simulation separately using various methods and plug-ins gives you infinite scalability, and for something as complex as water that's very important. If Epic starts implementing features that are platform specific like this, you'll end up in a crazy situation where people are filing bug reports for real-time caustics generation not working on iPhone for example, which completely breaks the look of their game.
              We are going in circles here. If EPIC wants balance between high-end pcs and Mobile might as well ditch the first.
              Plus devs know what can be used in which platform, it's not primary school for them.

              Comment


              • #67
                Well I envy you guys that can figure out how to make an ocean with waves and would love to hang out with you for a day and watch you guys work.

                Comment


                • #68
                  Originally posted by Errvald View Post
                  We are going in circles here. If EPIC wants balance between high-end pcs and Mobile might as well ditch the first.
                  Plus devs know what can be used in which platform, it's not primary school for them.
                  Yeah I suppose so, I'm just being a bit pedantic. Some of the things I've seen on answerhub requires it sometimes I do think the scalability of the tool would be an issue though.

                  Originally posted by MountainDew View Post
                  Well I envy you guys that can figure out how to make an ocean with waves and would love to hang out with you for a day and watch you guys work.
                  I guess I just like to learn on my own and see the behind-the-scenes stuff of what goes on. I'm a fundamental believer that you learn more by throwing yourself in at the deep end and spending many nights doing tweaked Google searches to find the information you want, learning from it as you go. That's probably why I'm a bit jumpy on this idea :P All the info you need is out there somewhere!

                  Comment


                  • #69
                    Originally posted by TheJamsh View Post
                    All the info you need is out there somewhere!
                    And here is some of that info!

                    For anyone wanting to dig deeper and learn how features like this are actually created, I have been following a tutorial created by Handkor, it is an excellent example of just how complex this issue is. Have a look through the video, and the documentation from nVidia about this issue, it is an excellent way to learn more about fluid simulation, wave simulation, and more. Highly recommended for those interested in how it works!

                    nVidia Doc's: The math behind it all - http://http.developer.nvidia.com/GPU...gems_ch01.html

                    Handkors tutorial - https://www.youtube.com/watch?v=PBWLfpm0K0o
                    [Free Community Project/Plugin] WIP Dynamic Ocean & Calendar Based Sky
                    New Features:: Highly accurate sun/moon position, and lunar phase calculations built into the plugin (base class for the SkyDome blueprint)
                    In Progress: Weather simulation w/ volumetric clouds

                    Comment


                    • #70
                      Originally posted by TheJamsh View Post

                      EDIT:
                      I forgot to add, the title of this thread is 'Infinite', which in a nutshell means whatever system you do come up with would have to be *entirely* procedural. Good luck with that!
                      No by "Infinite" I meant Infinite. As in you can travel in any direction forever and never reach the end of the plane.

                      I'm glad to here that they are working on something. But let me say this I'm not looking for a it does everything solution. just a couple features. I don't even really require the water to react to something going into it other than ad some basic foam shader. What I'm looking for is just pretty much a copy of the cry engine ocean system. I don't want to simulate waves or anything crazy. as a matter of fact the Cryengine ocean doesn't do any interaction except whatI'm talking about you can tag something as a boat or what ever and it will make a basic wake and bullets make a basic splash but that is about it. It is a basic infinite plane with a optimized tesendorf wave applied and then a animated normal map. everything else is shader stuff.

                      Also let take the attitudes out of this. Epic says that they are working on it and that is fine for me. I think discussion is fine. But if this turns into a bunch of bickering I'm just gonna ask them to lock the thread.
                      James Brad Barnette
                      Senior Creative Artist
                      3Dmotif LLC

                      Comment


                      • #71
                        Yeah, ignoring the issues of how to make it actually look like an ocean, making an infinite plane isn't that hard - as I mentioned before there's an example of how to do it I set up that's in Torque3D.

                        In a nutshell, it just makes the grid follow the player/camera, and also stretches the far edge of the mesh out to the horizon.
                        Storyteller - An immersive VR audiobook player

                        Dungeon Survival - WIP First person dungeon crawler with a focus on survival and environmental gameplay ala roguelikes

                        Comment


                        • #72
                          Originally posted by n00854180t View Post
                          Yeah, ignoring the issues of how to make it actually look like an ocean, making an infinite plane isn't that hard - as I mentioned before there's an example of how to do it I set up that's in Torque3D.

                          In a nutshell, it just makes the grid follow the player/camera, and also stretches the far edge of the mesh out to the horizon.
                          I dont want to get into a hole argument with you here, i know there are options.
                          But i think the general concent here is that this should be available with out having to resort to 3rd party plugins or a huge bag of tricks to get going.

                          I did have a look at that Torque3D engine you mentioned but i was unsuccessfull in finding the example you mentioned.
                          Do you have the link lying around, be intresting to know how you get stuff imported into UE 4.
                          Cheers!

                          Comment


                          • #73
                            Originally posted by WCode View Post
                            I dont want to get into a hole argument with you here, i know there are options.
                            But i think the general concent here is that this should be available with out having to resort to 3rd party plugins or a huge bag of tricks to get going.

                            I did have a look at that Torque3D engine you mentioned but i was unsuccessfull in finding the example you mentioned.
                            Do you have the link lying around, be intresting to know how you get stuff imported into UE 4.
                            Cheers!
                            It's not something you'd be able to import - it'd be a rewrite. The point I was making is that you could swipe the way the geometry is set up and port that over to UE4. At that point it wouldn't be a third party thing (T3D is MIT licensed, so there's no issue porting the code, license wise).

                            But that wouldn't be a full solution, just a start on the part of the code that differentiates a regular bounded ocean plane from an infinite one (being attached to the camera, and smoothly stretching to the horizon).

                            Here's a link to the header and source file for Torque3D's WaterPlane object.

                            In particular, the stuff I'm talking about is all documented in the function

                            Code:
                            void WaterPlane::setupVBIB( SceneRenderState *state )
                            It explains in detail in the comments of that function what's needed to set up a vert buffer with a grid and a skirt of verts that go out to the horizon. You'd want to implement the same setup into a CustomMeshRender component or something like that.

                            That (skirt that goes out to horizon on the ocean grid) and making the grid itself follow the camera (except for height) are the main components you need for this, after which it's a matter of implementing a material and/or a way to tesselate and deform the mesh for wave purposes.

                            The comments start explaining the skirt and such here

                            Code:
                               // WaterPlane renders relative to the camera rotation around z and xy position.
                               //
                               // That is, it rotates around the z-up axis with the camera such that the
                               // camera is always facing towards the front border unless looking straight
                               // down or up.
                               //
                               // Also note that the horizon verts are pulled straight up from the front
                               // border verts.
                               //
                               // Therefore...
                               //
                               // The front border must be as close to the farclip plane as possible 
                               // so distant objects clip through the horizon and  farplane at the same time.
                               // 
                               // The left and right borders must be pulled outward a distance such
                               // that water extends horizontally across the entire viewable area while
                               // looking straight forward +y or straight down -z.
                               //
                            I wasn't ever saying it's some sort of drop in solution. I was just pointing out that for someone working on this, it might be easier to grab or look at the code for making a regular bounded grid "infinite" from T3D's implementation, then adapt that into, say, VaOcean, rather than doing everything from scratch.
                            Storyteller - An immersive VR audiobook player

                            Dungeon Survival - WIP First person dungeon crawler with a focus on survival and environmental gameplay ala roguelikes

                            Comment


                            • #74
                              I wanted to chime in here and say that I don't think that we need a built in "water tool", what we need is for translucency to be in a usable state. If we had reflections, specularity, and depth sorting for lit translucency, then proper oceans would be feasible. This is all that's missing IMO. Honestly, it isn't that much work to create the materials that you need for various liquids.

                              Comment


                              • #75
                                After weeks have gone by and no solution to water (we cant figure out anything that looks good) I went last night to the dark side and bought one month of the cry engine to see what all this hype is about the water, oceans, rivers, and waterfalls in cry. Well Im really impressed and dont understand why UE4 doesnt have something comparable for folks like my group who are not a smart as you guys that can produce oceans , rivers in UE4. My first night in CryEngine I imported my same DEM that I used in UE4 with in minutes I had an ocean and a river with pretty good looking results. I also have a boat that floats, water that is dynamic to bullets, tank rounds etc. all in one night. Unreal has always been my first love and still is but after spending weeks to make a ocean with no luck and then in one night with cry I have pretty good results Im scratching my head and wishing for UE4 to pull through even more with similar or better results. Heres a short video of my results tonight in cry and before tonight I had zero experience with the cry engine and I know I have really bad tiling terrain textures and other problems but it was all about water
                                Last edited by MountainDew; 08-25-2014, 07:18 AM.

                                Comment

                                Working...
                                X