Author Topic: Merricksdad's Black Hills Tileset (First Look)  (Read 12245 times)

Legacy_MerricksDad

  • Hero Member
  • *****
  • Posts: 2105
  • Karma: +0/-0
Merricksdad's Black Hills Tileset (First Look)
« Reply #435 on: October 11, 2015, 06:33:42 pm »


               

Smoothing output from GMAX works on a curve system, and the game seems to interpret that just about the same. I know there are a few methods for forcing tile edges to carry a smoothing group across tiles, or at least have the appearance of doing so, but I think what I want to do is make two 1cm cuts along the edges of all tiles. Then I will build a script to force the verts from the cut regions to exactly match the position of the verts nearest them in Z value, as well as just 1.0 cm X/Y axis from the true edge. This will force the face normals at the tile edge to be much much closer to where I need them. If I can pull that off, I can increase the tile smoothing threshold to something higher. Most people on the internet seem to think 45 is perfect for just about everything. While I disagree, taking into consideration material types, I think it might be a target to shoot for. If I can do 45 across tiles without the seam showing, the set can retain at least some of its angular complexity, while also appearing very smooth after the texture is applied.


 


If I am not mistaken, the base tile size of NWN2 is subdivided by 10 squares. Maybe it was 20. Either way, this tileset matches or at least doubles that face complexity without increasing processor load.


 


Keep in mind, there is no shadow casting material yet. Even in the dark, the rises cast no shadow against the lower parts. Only the faces opposite the light source are darker. This works just fine in a well lit, or well-fogged environment, where light would not cause much of a difference. But for night-scapes and caverns, this comes across as visually odd, and the more smooth something is, the more plastic it appears.


 


At some point, a shadow casting mesh, which is lesser in complexity than the actual walkmesh, will need to be installed. Optimize functions in GMax have so far failed me in creation of shadow blocks, so I may need to make a custom un-tessellate function, which would reduce complexity only locally, rather than across multiple faces further apart, and only when edge normals are similar.



               
               

               
            

Legacy_3RavensMore

  • Hero Member
  • *****
  • Posts: 1153
  • Karma: +0/-0
Merricksdad's Black Hills Tileset (First Look)
« Reply #436 on: October 11, 2015, 09:12:33 pm »


               

Most of what you're talking about goes over my head, and I've been wondering what the results will be for all the effort you've spent in this project.  I'm beyond amazed though.  The landscape geometry looks real.  Not just somewhat real, but like something I'd expect to see in to Rockies.  Strike that--it looks like things I have seen in the Rockies.  Truly amazing work.



               
               

               
            

Legacy_MerricksDad

  • Hero Member
  • *****
  • Posts: 2105
  • Karma: +0/-0
Merricksdad's Black Hills Tileset (First Look)
« Reply #437 on: October 11, 2015, 11:21:00 pm »


               

I like the word OTR used: Organic. So many tiles in NWN look like they were stamped by a machine. I understand the need for simplicity, but at this point in time, we might as well progress at least a little. Hopefully, this set, as well as the maxscript library functions I am going to release, will be helpful to builders. I'm going to pack a library addition strictly for dealing with tile systems like this, and specifically for those who will be using Sen's tile offset data. To make use of his stuff, I actually created a few tile classes in maxscript, and then I just load all his spreadsheet data into nice object oriented thingies, and can ask it simple questions in basically english. It helped immensely while getting the TMD05 placeholder set produced. I don't think I could have done this 4 height transition without that information, and without it turned into a creature I can talk to.



               
               

               
            

Legacy_MerricksDad

  • Hero Member
  • *****
  • Posts: 2105
  • Karma: +0/-0
Merricksdad's Black Hills Tileset (First Look)
« Reply #438 on: October 12, 2015, 03:30:37 pm »


               

Last night I started working on an experimental tile edge adjuster. What it does it takes the tile mesh, extrudes and shrinks the thing from its edges twice, by a set value. In this case I shrink by 5 cm on each side. Then it switches back to the other edges and unshrinks them by the amount they would have moved, putting all non-edge verts right back where they started. Basically this just creates two tile edges inside the tile edge, so that the smoothing functions can make an easier flat face near the outermost edge. I then had to maximize the flatness on Z axis rises by adjusting the positions of the verts so they lined up exactly with the x or y position of the outermost edge, or there was some weird angle pointing back toward the center of the tile. If you'd like to try it on a standard tile, run this function in gmax. I'm exporting tiles now, just to see what happened with the edge details. Last night's trial was not sufficient, so hopefully this double edge and edge line hair perm will fix the deal.


 



   Spoiler
   


 


Edit: while interesting, the function run with f1 set to 10, and full smooth on the tile, was not sufficient to cancel tile seams entirely. It was much better than the 2cm test from last night. I'm currently trying 25 and 50 just to see what I get, or if the overall smoothing curve is actually changed by distance. I suspect it is, but only to an extent. The longer the curve, the more horizontal the edge normal will be. There must be a really good combination of two, or an easier combination of three, which will deliver exactly what I need.


 


Edit: not exactly a lesson in futility, but getting somewhat close. Combinations of any range which total 25 or more centimeters from the edge also interfere with the geometry, making it so the walkmesh no longer lines up with the model, or creating an even worse seam or near seam obviousness.


 


I think reverting back the current release and having NO smoothing from tile to tile will be actually a better look. Feel free to play with the function above. Adding another level of face extrusion and transform does increase the smoothness at the tile edge. To further smooth the tile edge, I played into the underlying waveform of edge smoothing by only requiring the second-to-outermost edge to be adjusted on the x-y plane. I tried that from 10cm down to 4cm, with 4cm being more useful looking.


 


Anyway, abandoned and moving on. Time to play with a custom shadow box builder. This one should be far simpler to implement.



               
               

               
            

Legacy_YeoldeFog

  • Sr. Member
  • ****
  • Posts: 415
  • Karma: +0/-0
Merricksdad's Black Hills Tileset (First Look)
« Reply #439 on: October 12, 2015, 05:51:50 pm »


               

Wow! Very nice! Can't wait to see it with texture!



               
               

               
            

Legacy_MerricksDad

  • Hero Member
  • *****
  • Posts: 2105
  • Karma: +0/-0
Merricksdad's Black Hills Tileset (First Look)
« Reply #440 on: October 12, 2015, 06:21:17 pm »


               

So what was it about shadows that made them easier and more accurate? Did I have to explode them into separate meshes and then move their positions to their face center? Or something like that? What have you guys found works best?



               
               

               
            

Legacy_MerricksDad

  • Hero Member
  • *****
  • Posts: 2105
  • Karma: +0/-0
Merricksdad's Black Hills Tileset (First Look)
« Reply #441 on: October 12, 2015, 08:44:37 pm »


               

October Distraction


 


tumblr_nuxsjerNDn1ubdqjxo1_400.gif



               
               

               
            

Legacy_ShadowM

  • Hero Member
  • *****
  • Posts: 1373
  • Karma: +0/-0
Merricksdad's Black Hills Tileset (First Look)
« Reply #442 on: October 12, 2015, 10:54:04 pm »


               

omg love it, got to make it a mutiple monster just to have all the eyes follow the pc or a single monster LOL. Cannot wait to get my new computer put together and going so I can get back to making nwn stuff, missing it too much. Love all the tileset work, I going to go off it when I finnally try my first tileset sometime down the line.



               
               

               
            

Legacy_MerricksDad

  • Hero Member
  • *****
  • Posts: 2105
  • Karma: +0/-0
Merricksdad's Black Hills Tileset (First Look)
« Reply #443 on: October 13, 2015, 03:08:37 am »


               

W9qXCFT.png


http://neverwintervault.org/project/nwn1/model/merricksdads-halloween-eyeball



               
               

               
            

Legacy_MerricksDad

  • Hero Member
  • *****
  • Posts: 2105
  • Karma: +0/-0
Merricksdad's Black Hills Tileset (First Look)
« Reply #444 on: October 13, 2015, 02:36:43 pm »


               

I'm having some extreme difficulty building shadow blocks for the mountains. I tried a few combos:


  1. lower poly mesh than the walkmesh

  2.    
  3. walkmesh chopped into polygons based on 15 threshold smoothing groups

  4.    
  5. lower poly walkmesh exploded and face positions set to face center.

The last method takes a LOT of script work, and pretty much cripples GMax, but if I export them and delete them from the file as I go, it seems to allow it. Also the last method looks the best in the game, but file bloat is highest, but again, not by that much.


 


When the shadow mesh is lower poly quality than the actual ground shape, it has a tendency to shadow parts which should be fully exposed to sunlight. Also, the shadows constructed from steep walls are not casting shadows at a distance for some reason, only upon the ground nearest them. It seems I just don't understand the bugs and purpose of tile created shadows.


 


Overall, it really looks like the set features better without a shadow system for the tiles. But you do get strange floating character shadows if you omit it.


 


I may just continue on with the explode and center method, but I might adjust the heights to clean up some flat face shadowing. We'll see.



               
               

               
            

Legacy_MerricksDad

  • Hero Member
  • *****
  • Posts: 2105
  • Karma: +0/-0
Merricksdad's Black Hills Tileset (First Look)
« Reply #445 on: October 13, 2015, 03:32:01 pm »


               

From what I am reading, if I sort all the faces in a shadow mesh by their primary facing (face normal), then I can separate any mesh into 6 meshes, each casting shadows in the correct direction, by placing that mesh's pivot point behind all the faces of that mesh. I don't understand this entirely, but I understand the math on how to get there. I see there is a CODI tool for doing exactly that, but it is NOT for Gmax, and is compiled, so I don't have access to the code. Perhaps I can make the same tool for Gmax? Splitting the mesh into only 6 parts, and then removing the smoothing groups, would be really easy. Making sure I have the pivots right, based on what the CODI tool does, I'm not so certain about. Worth a try.



               
               

               
            

Legacy_MerricksDad

  • Hero Member
  • *****
  • Posts: 2105
  • Karma: +0/-0
Merricksdad's Black Hills Tileset (First Look)
« Reply #446 on: October 13, 2015, 03:50:50 pm »


               

Hey if anybody has the time and willpower to find it, there is still one piece of SEN's spreadsheet data that is causing an issue. I suspect the issue is at level 2, as when I raise from 1-2 or 2 and beyond, something assumes there needs to be more land around under level 1. I'm not going to put a lot of time into it, since it works well enough for my purposes, but I may go back to it someday. If you do happen to find it, let me or SEN know the exact tile which is frustrated, and we'll update it on at least one of the spreadsheet releases, as well as in my Gmax scripts related to that data.

 


Edit:


 


I suspect both tiles: 0102 and 0201 need a +1 adjustment



               
               

               
            

Legacy_CaveGnome

  • Sr. Member
  • ****
  • Posts: 432
  • Karma: +0/-0
Merricksdad's Black Hills Tileset (First Look)
« Reply #447 on: October 13, 2015, 04:22:02 pm »


               


From what I am reading, if I sort all the faces in a shadow mesh by their primary facing (face normal), then I can separate any mesh into 6 meshes, each casting shadows in the correct direction, by placing that mesh's pivot point behind all the faces of that mesh. I don't understand this entirely, but I understand the math on how to get there. I see there is a CODI tool for doing exactly that, but it is NOT for Gmax, and is compiled, so I don't have access to the code. Perhaps I can make the same tool for Gmax? Splitting the mesh into only 6 parts, and then removing the smoothing groups, would be really easy. Making sure I have the pivots right, based on what the CODI tool does, I'm not so certain about. Worth a try.




 


 


Are you saying that you can make a GMax script for making automatic simplified correct tile shadow meshes ?


 


That would be tremendously useful !


               
               

               
            

Legacy_MerricksDad

  • Hero Member
  • *****
  • Posts: 2105
  • Karma: +0/-0
Merricksdad's Black Hills Tileset (First Look)
« Reply #448 on: October 13, 2015, 05:37:03 pm »


               

I think so. So far today, I have already created a script which breaks any mesh into up to 6 parts (7 if any errors occur, but have not yet done so). You get one sub mesh for every direction on a cube. Then you should be able to change the pivots of those sub meshes to a point somewhere behind every face pointing that direction. I've tried actually moving the mesh pivot, but that only makes a mess. So instead of moving the pivots, I am changing the actual mesh position and then repositioning the mesh faces back to where they were, and see if the output is different. Hope so.


 


The first three tries were so far unsuccessful with the pivot change, and almost none of the shadow appeared on the walkable surfaces. Those that did appear would not go away in the toolset when the tile model was changed, so I suspect some internal silent error there. I'm about to try without the pivot changed to see if it is different, then onto the movement of object center and face locations. Baby steps.


 


I'm also trying this on complex meshes just to see what happens, so if all else fails, I will run this on a much simpler mesh and see if that makes a difference.


               
               

               
            

Legacy_MerricksDad

  • Hero Member
  • *****
  • Posts: 2105
  • Karma: +0/-0
Merricksdad's Black Hills Tileset (First Look)
« Reply #449 on: October 13, 2015, 06:20:11 pm »


               

Things that don't work:


  • high poly mesh cut into 6 directional meshes

  • ^ with pivot points moved

  • ^ no pivots moved, but whole mesh offset instead

  • ^ with or without faces exploded to elements

  • walkmesh cut into 6 directional meshes

  • ^ with mesh offset

  • ^ with or without faces exploded to elements

^^ even though the shadow checker on NwMax shows no errors


 


Things that do work:


  • faces exploded into meshes with mesh position set to face center