L3DT users' community
Large 3D terrain generator

Some Recent Thoughts

It doesn't hurt to ask...

Some Recent Thoughts

Postby Telarus » Sat May 26, 2012 8:51 am

Hey Aaron (& everyone),

I've been using L3DT very extensively for the last few weeks, and I've noticed a couple of bugs, and a couple of places where my workflow is getting stuck in a bottleneck.

The first is that when iterating the watermap calculation, rarely the Salinity map will disappear from the project tabs. This has happened to me about 3 times on 12.03 Pro dev build 3. No error messages, or anything, and I cannot regenerate a Salinity map after this happens.

So I've just gone to a non-salinity influenced template for my custom climate (based on Temperate instead of Temperate Coastal).

Second, I've been studying GRASS opensource GIS, and reading a lot of the modern computer cartography techniques. So I have a much better understanding of how you are using Gradient and Curvature in the Climate modeling now. What I'm having problems with (and it's partially the scale of my heighfield) is getting a satisfactory result from the Watermap and the Water coefficient of the Attribute calculation.

I think the docs could use a little bit more information on that side. :D I'm still not sure about the relationship between MaxDepth and the Water Coefficient in the Attribute calculation....

The other bug I've run into with the water map is a popup I get when I try to delete a waterbody that reads, "Error: waterbody cannot be deleted because it is not found in the water body list. This is probably Aaron's fault." :lol: I was able to work around this by flooding the whole valley, and deleting the new waterbody (Which prompted "Delete Waterbody #1", btw).

I'm working with a heightfield that has a vertical range of -900m -> 5468m, and was 700m per pixel. I've scaled that down to 140m/px to simulate a 5times vertical exaggeration. I've also generated a pit/sink map with the help of GRASS, and an by using that as a texture-overlay I can place small bodies of water, especially along the jungles and forest valley areas away from large water-bodies. As such, I have, well.. lots and lots of small waterbodies. This may have triggered the bugs.

Also, while editing the watermap, I often lose the elevation value shown in the bottom right even if "show HF in watermap" or " HF overlay in view" for the edit water map tool are checked.

As such, my current workflow is to sample a point on the watermap with the arrow tool where I see a sink on my Sinkmap Texture Overlay (to get the HF elevation), do a quick fuzzy add of a couple of meters (or less than one sometimes) to that elevation in my head, go to the Water Flood Tool, type in the value, and then go back to the map to "guess" where I clicked the first time to trigger the flood. On sinks in very low Gradient terrain or when working at a generalized (zoomed out) view, this can be frustrating as each missed click (where the terrain is above my input water-height value) gives a pop-up error and a sound effect. :twisted: :lol:

I would love a tool or flag for the water map edit tool that would allow me to flood "at current heighfield elevation +Z.offset" (where Z offset can be a range, so <1m if I'm finding shorelines, or >1m if I'm flooding from the bottom of a sink). This would combine well with the overflow test, and help quicken watermap iterations.

Example screenshot showing a current iteration of the watermap + attribute map:
Image
Telarus
Doyen
 
Posts: 112
Joined: Mon Jun 01, 2009 12:34 am

Re: Some Recent Thoughts

Postby Aaron » Sat May 26, 2012 10:16 am

Hi Telarus,

Thank you for your bug reports and feedback.

The first is that when iterating the watermap calculation, rarely the Salinity map will disappear from the project tabs.


This will happen if L3DT thinks there are no saline water bodies in the map (i.e. no sea.) If there are indeed saline water bodies in your map, then it probably means L3DT has lost its list of water bodies. I will look into this.

The other bug I've run into with the water map is a popup I get when I try to delete a waterbody that reads...


Yep, I'd bet it's the same problem - the water body list is empty even when there are water bodies in the water map. I'd guess it's either not being saved or loaded correctly. I will look into this bug presently.

As such, I have, well.. lots and lots of small waterbodies. This may have triggered the bugs.


The number of water bodies will only become a problem if you try to create more than 65535 distinct water bodies. Below that limit, the number shouldn't matter.

I'm still not sure about the relationship between MaxDepth and the Water Coefficient in the Attribute calculation....


I'll have to look through the code to refresh my memory. I'll write up a description as soon as practicable.

Also, while editing the watermap, I often lose the elevation value shown in the bottom right even if "show HF in watermap" or " HF overlay in view" for the edit water map tool are checked.


Yeah, when viewing the water map, only the water type is displayed in the status bar. The elevation is only displayed when viewing the heightfield (including with the water map tools open). Room can be made for both the water type and the elevation, so I will make this change in the next build.

I would love a tool or flag for the water map edit tool that would allow me to flood "at current heighfield elevation +Z.offset"


If you click on the 'Water level' label in the water flood tool window, it will change to 'depth' mode. In this mode, the water will flood at the current heightfield elevation plus the value given in the depth field. That's not exactly the most obvious piece of user interface design, is it? :oops: By the way, you can flood in this mode with a depth of 0, which basically puts the coastline at the point you clicked.

Impressive work, by the way. It sounds like a pretty impressive workflow you've put together.

Best regards,
Aaron.
User avatar
Aaron
Site Admin
 
Posts: 3696
Joined: Sun Nov 20, 2005 2:41 pm
Location: Melbourne, Australia

Re: Some Recent Thoughts

Postby Telarus » Sat May 26, 2012 10:45 am

Thanks man!

The Depth mode will definitely speed this up. I was probably remembering you had a Depth mode for the flood tool, but I've been reading so many other GIS docs I forgot where it was. Probably want a UI element for that. :D
Telarus
Doyen
 
Posts: 112
Joined: Mon Jun 01, 2009 12:34 am

Re: Some Recent Thoughts

Postby Aaron » Sun May 27, 2012 4:32 am

Hi Telarus,

The problem with the water body list should now be fixed in the latest dev build of L3DT Pro (v12.05.0.2). The problem was that the water body list was not being saved for non-mosaic water maps. This bug probably crept in some time in '10- or '11 when I added virtual mosaic maps for large single-file maps.

Unfortunately, the cause of this bug means that the water body list for your project can't be recovered, as it was never saved. Consequently, to get a working water body list you will need to clear the water map and flood it again. Alternatively, if it's too much work to start the water map again, I can write an algorithm to calculate the water body list from the existing water map. However, time is a bit limited at present, so it may take me a week or two to get this going.

I apologise for the inconvenience caused by these bugs, and thank you for taking the time to report them.

Best regards,
Aaron.
User avatar
Aaron
Site Admin
 
Posts: 3696
Joined: Sun Nov 20, 2005 2:41 pm
Location: Melbourne, Australia

Re: Some Recent Thoughts

Postby Telarus » Sun May 27, 2012 3:44 pm

Cool, I'll grab that build.


No need for the algorithm, although I appreciate the offer. With the error fixed, I can use Seas again and so will go back to the Coastal base for my climate (as I liked that variety along coasts), and with the depth mode I'm much faster at getting just the right spacing between little lakes to carry the water up/down hill. So I don't find repainting the watermap a problem, a different version will be good for this stage.


Do you have any advice for the watermap calculation setting for a project of this scale?

I have both the original 4096x4096 terrain at 700m/px, and I have the "x5 vertical exageration" HF with horizontal scale set to 140m/px. Both of these scales are far away from the one you used to setup the initial Climates, so here's what I'm running into: I can change the MaxDepth for the watermap calculation to <100 to get the watertable to stick closer to the terrain HF (and be less generalized), the lush type sticks to river valleys but then I don't get any of the "Dry" landtypes showing up at all. I can raise MaxDepth to >100m, and the Dry types show up where I expect them, but the Wet types are very generalized (sometimes in isolated circles around circular water bodies too far apart, as expected). So for now, I've been content with leaving MaxDepth @ 100m, and then using the Rise/Fall and Loss parameters to try to get something in between. The Loss parameter seems very sensitive to horizontal scale, so I've figured that out, for a linear falloff. The rise/fall are good for non-linear falloff, is that right?

Then when I have a good watermap, I can edit my Temperate copy to pull the lush types into valley and increase the Gradient and Curve coefficients in Global or the landtypes to get good results resemlbing the "base L3DT scale" results. Because of the large scale I mostly have angles less than 45 degrees in the Gradient (& Curve, I suppose) so all these values are getting multiplied by small decimals most of the time and I didn't have many rocks at first.

Thanks for clearing up how the Gradient/Curve is output in that other thread (0.0 <- 1.0 -> infinity) and that it was the absolute value. Is there a way (maybe the Graph Editor?) to calculate the negative curvature separate from the positive curvature? I can do this in GRASS, and had planned on using it to simulate exposure and paint or show rocks or snow on the ridges in an exported Attribute Map (right now in L3DT the tops of ridges get as much grass as the valleys of similar waterlevels).

Thanks again!
Telarus
Doyen
 
Posts: 112
Joined: Mon Jun 01, 2009 12:34 am

Re: Some Recent Thoughts

Postby David Walters » Sat Jun 02, 2012 10:21 am

Hi, I think I've found a bug related to this change (perhaps not related)

In my recent test terrain I've generated with (mosaic and wrapping enabled but nothing else changed) I get this error when I load the thing back up (in 12.5.0.2)

mxWBL_LoadList error:
- cannot open TXT file

CMapGroup::LoadMosaic warning:
- cannot load water body list


Nothing appears to be wrong as there aren't any independent water bodies in my map, just the Ocean.

I'll leave it at that as it may be very obvious why this problem is happening, if not I can send you some or all of the project.
David Walters
Doyen
 
Posts: 129
Joined: Fri Apr 24, 2009 1:10 pm

Re: Some Recent Thoughts

Postby Aaron » Sun Jun 03, 2012 10:38 am

Hi David,

Thanks for the bug report. I'll look into it, and include a fix in the next update.

Best regards,
Aaron.

Edit: Oops, I forgot to include the fix in the next update (which was 12.06.0.0). Next update then.
User avatar
Aaron
Site Admin
 
Posts: 3696
Joined: Sun Nov 20, 2005 2:41 pm
Location: Melbourne, Australia


Return to Feature requests

Who is online

Users browsing this forum: No registered users and 9 guests

cron