Announcement

Collapse
No announcement yet.

Blending meshes with landscapes with no seams: how?

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

    #31
    Well, for UVs you just need to unwrap them. That's a basic thing every modeler knows how to do. Of course, that's if i'm right assuming them to be the culprit here.

    Comment


      #32
      you were right, i didnt unwrap it haha
      thanks

      Comment


        #33
        Glad i could help!

        Comment


          #34
          Hey, thought I'd share, [MENTION=3692]RyanB[/MENTION] was kind enough to share a pseudo-3d Texture projection method that, with tangent space normals disabled, works well to blend diffuse textures and normals over sharp changes in geometry between models and terrain. Here's how it looks blending a sphere and flat ground:





          and here's the code:



          Using this with either angular blending or vertex-painted blending may yield for some decent results.

          Comment


            #35
            Niiiiiice!!!!

            Thanks for sharing!

            So, this material should be applied to both floor and sphere ?

            Are those 2 textures (both diffuse and normal) identical ?

            I wonder if it's mobile friendly..

            Comment


              #36
              Correct, or at least that those textures with those mappings should be applied to both materials in the areas you want to blend. The two diffuse textures are the same, the two normal textures are the same no idea about mobile.

              Comment


                #37
                Click image for larger version

Name:	blend_objects.jpg
Views:	1
Size:	162.8 KB
ID:	1118788
                ¿¿Is there a way to use with landscape actor??
                Works for me with standard objects over a plain surface, but using it over landscape there is no way.
                In the above example , the [3] texture is 512x512.
                The landscape heightmap is 4033x4033, this using LandscapeCoords node.

                ¿What could be the correct arithmetic here to get the same size on both?

                Comment


                  #38
                  Hey guys, I'm working on a landscape-blending tool as my Graduation Project, so I thought it might be relevant to post here . I used the Distance Field functionality in Unreal to achieve my results. If you are interested, I made a big post about it here : https://forums.unrealengine.com/show...rs-Battlefront





                  Comment


                    #39
                    Man, I would actually really love for this to gain some momentum so it becomes something that is a native part of the core engine code in Unreal. I cant go into any details, but thats how we do it. Its a core functionality and thus its also way cheaper so we can afford to do it cross platform [MENTION=2654]6[/MENTION]0 fps. I can also say that our solution automatically picks up the terrain texture, so there is no need for custom material instances depending on where you wanna place the asset, but again...its all handled natively via the engine code to make it fast and working in all cases.

                    I also think this is really something that will become more and more important to keep a high visual quality for games now and in the near future so PLS Epic...think about a native solution for this

                    Cheers!
                    Last edited by Daedalus51; 12-20-2016, 12:49 PM.
                    Check out UNREAL 4 Lighting Academy
                    https://forums.unrealengine.com/show...ng-like-that-)

                    Comment


                      #40
                      Where distance fields are out of option, you can sample terrain's heightmap in vertex shader and apply proper math to get terrain height at mesh's vertices in order to get initial blend mask procedurally.

                      Comment


                        #41
                        True....that would be the preferred method! But I am not aware of any access to the terrain heightmap via the material editor

                        Edit: [MENTION=3692]RyanB[/MENTION] or [MENTION=404]DanielW[/MENTION] would it be possible in an easy way for you guys to enable access to the landscape heightmap via materials (like lightmassAO or the DistanceField Nodes) so we could figure out a way to do this that doesnt need the overhead of DistanceFields just to achieve that specific effect?

                        The rest can actually be handled quite in a smart way....like the different terrain materials etc that doesnt need code work
                        Last edited by Daedalus51; 12-20-2016, 04:11 PM.
                        Check out UNREAL 4 Lighting Academy
                        https://forums.unrealengine.com/show...ng-like-that-)

                        Comment


                          #42
                          Its funny this just came up internally as well.

                          Terrain can now influence DF, but its not a whole solution because then you have the issue about 'who writes to DF and who reads', but its one option.

                          While we internally would love a more automated way to sample the heightmap texture, there are no current plans. Its much more likely (in the near term at least) that we could make a little blueprint that captures it and sets some MPC parameters for you to make it easier to set up.

                          A while ago I added a function "Landscape_Manual_UVW" to help map textures to fit the landscape. A user posted an image of it here:

                          https://forums.unrealengine.com/show...l=1#post639688

                          All you need is to know the min and max XYZ coordinates of the landscape.
                          Ryan Brucks
                          Principal Technical Artist, Epic Games

                          Comment


                            #43
                            Originally posted by Deathrey View Post
                            Where distance fields are out of option, you can sample terrain's heightmap in vertex shader and apply proper math to get terrain height at mesh's vertices in order to get initial blend mask procedurally.
                            PM'ed you something

                            Comment


                              #44
                              Being able to sample terrain's heightmap and weightmaps from other materials would be invaluable addition. For now I've been using a downsized power of 2 copy of terrain heightmap. While technically doing so is a waste of memory, it is still good sacrifice and gives acceptable results for large and medium meshes.
                              For small terrain scatters, that were placed with grass system, I've actually used slightly different approach. I've sampled terrain's normal map and used it to drive direction of gradient mask on the meshes. Eventually, the mask looked like a band around the mesh's pivot(pivots were centered for small scatter meshes), that was aligned with terrain's normal.

                              Comment


                                #45
                                Originally posted by Daedalus51 View Post
                                Man, I would actually really love for this to gain some momentum so it becomes something that is a native part of the core engine code in Unreal. I cant go into any details, but thats how we do it. Its a core functionality and thus its also way cheaper so we can afford to do it cross platform [MENTION=2654]6[/MENTION]0 fps. I can also say that our solution automatically picks up the terrain texture, so there is no need for custom material instances depending on where you wanna place the asset, but again...its all handled natively via the engine code to make it fast and working in all cases.

                                I also think this is really something that will become more and more important to keep a high visual quality for games now and in the near future so PLS Epic...think about a native solution for this

                                Cheers!
                                Man, I can't really express how much this means to me . To have someone from the studio that created Battlefront, which was the impetus for my project, notice this tool is AWESOME!!

                                Conveniently swapping materials is the thing I'm currently working on. I have some ideas for automatic terrain material sampling, although I have no clue how you would tackle a mesh that is is located on a transition-area between two landscape materials.

                                It would be indeed way more desirable to achieve this effect by accesing the terrain-information somehow. Before I got the idea to use Distance Fields, I spent a couple of weeks pulling my hair out while trying to get some useful information out of the landscape actor .
                                Last edited by OlmoPotums; 12-20-2016, 07:50 PM.

                                Comment

                                Working...
                                X