FeXoR Posted March 26, 2014 Author Report Share Posted March 26, 2014 I guess you could make huge texturing improvements by adapting a combination of height-based texturing and slope-based texturing.Good idea! I'll do that! Quote Link to comment Share on other sites More sharing options...
Radagast. Posted March 27, 2014 Report Share Posted March 27, 2014 (edited) The grass colours might look strange, still I like the variation. I remember being in the alps and finding places where it was really nice with many plants, while the overall impression was rocky. Isn't it related to overly many factors like wind, how much humus, if fungi, lichens are around, e.g. moss fern. Your generation reminds me of this: In spite of the relative low altitude, 1260 meters, its situation at the entrance of the Vallon de Nant, a small glacier valley, induces a subalpine climate to the garden. So the textures could take neighbour textures into account. Like: if there are snow-textures, choose from this set of biome textures. Looking at your results, I guess you are already doing this or even something more elaborated. Height and slope sound real. Lichens are the first to settle on rock and difficult slope. usually in mountains it's an alternating process. Between rocks being grown over first by lichens .. later by others, then a rock avalanche might reverse the process. Thanks for sparking yet another idea. We could create avalanche animations. I have to find out how this could be made to affect units. So snow or stones pull them apart, trees and animals too of course. Don't give up, what you have shown so far is already the utmost incredible. Also the map overview. Really encouraging results. Edit: Had to employ a really interesting teqnique to post google static images (forum doesn't allow it usually). Edited March 27, 2014 by Hephaestion 1 Quote Link to comment Share on other sites More sharing options...
FeXoR Posted March 27, 2014 Author Report Share Posted March 27, 2014 (edited) Hephaestion: THX much! Sometimes a motivating/inspiring post (or a kick in the butt) is what I need ^^.I'll add more flowers. Edited March 27, 2014 by FeXoR Quote Link to comment Share on other sites More sharing options...
FeXoR Posted April 10, 2014 Author Report Share Posted April 10, 2014 (edited) Hm, got a javascript question:What's the difference of defining a class function inside the body with this.function_name = function () {blablub}or outside the class body with class_name.prototype.function_name = function () {blablub}Code:function Environment(name){this.name = name;this.SkySet = "default",this.SunColour = {r: 0.749020, g: 0.749020, b: 0.749020, a: 0},this.SunElevation = 0.785398,this.SunRotation = 5.49779,this.TerrainAmbientColour = {r: 0.501961, g: 0.501961, b: 0.501961, a: 0},this.UnitsAmbientColour = {r: 0.501961, g: 0.501961, b: 0.501961, a: 0},this.Water = {WaterBody: {Type: "default",Colour: {r: 0.3, g: 0.35, b: 0.7, a: 0},Height: 5,Waviness: 8,Murkiness: 0.45,Tint: {r: 0.28, g: 0.3, b: 0.59, a: 0},ReflectionTint: {r: 0.28, g: 0.3, b: 0.59, a: 0},ReflectionTintStrength: 0.0}},this.Fog = {FogFactor: 0.0,FogThickness: 0.5,FogColor: {r: 0.8, g: 0.8, b: 0.8, a: 0}},this.Postproc = {Brightness: 0.0,Contrast: 1.0,Saturation: 1.0,Bloom: 0.2,PostprocEffect: "default"}// this.deploy = function()// {// g_Environment = this;// }}Environment.prototype.deploy = function(){g_Environment = this;}As is it works.Using the documented out code (inside the class body) Atlas starts but never finishes the random map. Edited April 10, 2014 by FeXoR Quote Link to comment Share on other sites More sharing options...
Radagast. Posted April 11, 2014 Report Share Posted April 11, 2014 (edited) What's the difference of defining a class function inside the body with this.function_name = function () {blablub}or outside the class body with class_name.prototype.function_name = function () {blablub}Inside is useful if you wish to use 'local' variables.e.g.function MyClass() { //private: var local_counter = 0; //only this way you can use the private variable above: this.countUp = new Function() { ++local_counter; }}The prototype.<funcion> will be inherited by all derivatives (i.e. subclasses and their instances).So far what I know. Edited April 14, 2014 by Hephaestion Quote Link to comment Share on other sites More sharing options...
Radagast. Posted April 14, 2014 Report Share Posted April 14, 2014 I had something wrong above: local is clear already, private it should be. The function not assigned via prototype is the only chance to have private variables. I think it's convention, to put it in the class body directly only if you desire this private functionality. Else better keep it outside. @FeXoR: We talk about snow here. It involves a local duplication of the terrain (only visually) that varies in height to emulate the snow fallen so far. In summer the height sinks due to melting, the snow-height also depends on height of the local part on the map. To have it not as a exact duplicate of the underlaying terrain-height would look more natural. Do you know of a function that would give the snow-height visual layer a bit of a natural variation (in height => form)? The snow-height depending on altitude could be solved by a linear function. Unfortunately it seems difficult to find snow-height variation data over altitude. Mostly it's snow-height variation over years (due to climate hype). Also this might be of use for us: Ten inches of snow is equivalent to about one inch of rain.(abel.math.harvard.edu/~divac/SAR/pchap1.pdf‎) I also thought about the possibility of a global wind factor, needn't be local (too complex?), but should be able to change over time. Though I wonder myself which effect this wind should have. And how to visualise this wind? You are the natural functions expert here, so I thought I'd come by your thread and lay siege to it. Quote Link to comment Share on other sites More sharing options...
FeXoR Posted April 15, 2014 Author Report Share Posted April 15, 2014 (edited) Thx for the answer.Concerning the snow:I only have a decent overview about RMGEN codebase and not the simulation code (or the engine) so I can't help you here.The "only visual" height change is also used for terrain flattening underneath buildings AFAIK so maybe you could look there.The function would be similar to erosion functions like in here.I also played around with rain amount depending on height (a linear function did do fine).A function to redistribute the snow locally might be similar to getAdditiveWindErrosionedReliefmap() in the above linked map (only 8 possible directions though since tile, not vector-based but fast).A global wind strength parameter will do fine (the local effects could be (randomly) determined in the functions doing things with wind involved).An additional parameter like "windBumpiness" would be helping though.I have no idea where those global parameters should be invoked (guess right in the C++ code since e.g. tree movement depends on it).Ofc. the map/RMS designer should be able to set it. Edited April 15, 2014 by FeXoR 1 Quote Link to comment Share on other sites More sharing options...
niektb Posted June 11, 2014 Report Share Posted June 11, 2014 I noticed that the derivateEntitiesByHeight function does not work correctly. With some seeds you will encounter entities that are placed inside (or at least do not keep the required distance) the CC, while it should avoid starting locations with a certain distance. As a workaround I personnaly avoided the playerHeight in Schwarzwald. Quote Link to comment Share on other sites More sharing options...
FeXoR Posted June 12, 2014 Author Report Share Posted June 12, 2014 I'll check this. ATM I got no time though. May take a month to get back to the random maps but I really intend to finish this map until end of the next free period (in about 3 months). I'm sorry for this taking so long as well but I need to proceed in my real live. Quote Link to comment Share on other sites More sharing options...
FeXoR Posted August 3, 2014 Author Report Share Posted August 3, 2014 (edited) I'm working on a new random biome system.(I can't advise to do such thing because it's sooo boring...)However, I'm OK with the alpine biome so far.Input about the alpine biome, the hightmap in general and the random biome systems structure (so far, heavily work in progress, not used yet) very welcome.Some screenshots (sadly with very poor graphics settings ATM):Conclusion:- Cliff detection comes out quite nice- Stones placed on rough terrain are not sunken deep enough into the ground, so somehow "flying" (PLZ fix that)- Reachability of all trees are not guaranteed but I never encountered unreachable trees (However, I really think the unit AI should handle this) Edited August 3, 2014 by FeXoR 1 Quote Link to comment Share on other sites More sharing options...
niektb Posted August 3, 2014 Report Share Posted August 3, 2014 (edited) Cliff Detection! Really? That is what I've been waiting for! Edited August 3, 2014 by niektb 1 Quote Link to comment Share on other sites More sharing options...
FeXoR Posted August 3, 2014 Author Report Share Posted August 3, 2014 (edited) Well, only for random maps ^^And I may have to adjust it to fit the engines passability detection since it might be weird if units can walk on some parts of cliffs and can't on other parts.For now it's just for texture placing.(Still work in progress)Oh, and forgot to append the RMS:RealisticTerrainDemo2014-8-3.zip Edited August 3, 2014 by FeXoR 1 Quote Link to comment Share on other sites More sharing options...
FeXoR Posted August 8, 2014 Author Report Share Posted August 8, 2014 (edited) Paths are now painted.Some screensots:And the map: RealisticTerrainDemo2014-08-08.zip Edited August 8, 2014 by FeXoR 2 Quote Link to comment Share on other sites More sharing options...
Radagast. Posted August 9, 2014 Report Share Posted August 9, 2014 thunder and bolt, for the glory of mother nature, this is amazing. Quote Link to comment Share on other sites More sharing options...
FeXoR Posted May 9, 2015 Author Report Share Posted May 9, 2015 I'm not working on this ATM so just for safety, niektb and as a reminder my latest version with extracted hightmap manipulation library.NOTE: This will likely not work without small changes to schwarzwald!realistic_terrain_demo_extracted_lib-messy2015-5-9.zip 1 Quote Link to comment Share on other sites More sharing options...
elexis Posted January 26, 2016 Report Share Posted January 26, 2016 This library is exactly what 0 A. D. needs! In particular the multiplayer, since that mostly uses random maps which are just flat and very boring because of that! Those scripts should be moved to shared libraries and used in (maybe all) RMS. Â 2 Quote Link to comment Share on other sites More sharing options...
wackyserious Posted January 30, 2016 Report Share Posted January 30, 2016 Please re-categorize random maps according to terrain type and map size, ex: Random Alpine (giant), Random Savannah (medium), etc. Most of the time, I always end up playing as Ptolemies in a Snowy Alpine map, or the other way around, playing as Britons in South Asia (India) or as Indians in Arctic climate, which is kinda lore-breaking. Quote Link to comment Share on other sites More sharing options...
FeXoR Posted January 31, 2016 Author Report Share Posted January 31, 2016 @elexis: I agree. Belgian Uplands and Schwarzwald allready use them and the functionality is extracted in a library in my working copy. @wackyserious: I also argee with a recategorization of random maps. However, for the climate there should be a setting to chose the biome.  Biome: There is no real biome system implemented yet. Historic bruno had some ideas about using it not only for random maps (I guess skirmish maps as well?). In that case we should make chosing the biome a map setting.  Categorization: Since maps like this (realistic terrain demo) are not always very fair IMO we should categorize maps optimized for multiplayer games and fairness that also should have about the same starting resources and large space for each player to build a base (and to allow the Iberian civ bonus walls to be placed without problems). The other maps focussing more on realism or beauty should go into another category. For now this could just be "demo map" but in the long run I don't think that those maps likely more interesting in the long run should be categorized that way likely hidden for manny players and thus much less likely played. However, the map size should be a setting thus not going into categorization. Same with the biome.  Library (some variables going to another library and the needed changes to the maps using this functionality allready): RealisticTerrainDemo2016-1-31.zip  EDIT: Actually I would be glad if this would be added ASAP because it's interferring with the wall placement functionality in my working copy. 2 Quote Link to comment Share on other sites More sharing options...
FeXoR Posted April 10, 2016 Author Report Share Posted April 10, 2016 Adjusted to be compatible to SVN r18013. Changes: - Removed random biome for realistic terrain demo (The random biome lib is not sufficient yet to be used here) - Adjusted random biome for base terrain diamond square - Diamond square heightmaps are now applied centered (so e.g. islands are not shifted any more on some map sizes) RealisticTerrainDemo2016-04-10.zip Quote Link to comment Share on other sites More sharing options...
niektb Posted April 10, 2016 Report Share Posted April 10, 2016 11 minutes ago, FeXoR said: - Diamond square heightmaps are now applied centered (so e.g. islands are not shifted any more on some map sizes) Can we commit this change ASAP? It bugged Schwarzwald on certain map sizes on which a player could be placed on an island (because the lake wasn't properly centered) Quote Link to comment Share on other sites More sharing options...
FeXoR Posted April 10, 2016 Author Report Share Posted April 10, 2016 (edited) Adjusted some maps and removed duplicated code. RealisticTerrainDemo2016-04-10b.zip EDIT: Added the diff for r18014: RealisticTerrainDemo2016-04-10b.diff EDIT2: Current sate: RealisticTerrainDemo2016-04-10c.zip RealisticTerrainDemo2016-04-10c.diff Edited April 10, 2016 by FeXoR Avoid double post 1 Quote Link to comment Share on other sites More sharing options...
FeXoR Posted May 20, 2016 Author Report Share Posted May 20, 2016 Just an updated version to be compatible to SVN. Only the map (so no libs) are needed now. realistic_terrain_demo2016-5-20.zip 1 Quote Link to comment Share on other sites More sharing options...
FeXoR Posted June 28, 2016 Author Report Share Posted June 28, 2016 I will try to make this map playable enough to be added for Alpha 21 and am now in search of a name. At the moment I'll go with Alpine Meadows. Elexis thinks it looks more like scandinavia. Any name suggestion welcome! EDIT: It's about the random map untill now called Realistic Terrain Demo and that can be downloaded from the post above. 1 Quote Link to comment Share on other sites More sharing options...
niektb Posted June 28, 2016 Report Share Posted June 28, 2016 @FeXoR: which map exactly? Quote Link to comment Share on other sites More sharing options...
FeXoR Posted June 28, 2016 Author Report Share Posted June 28, 2016 I worked a bit on it and the current version is: alpine_meadows2016-6-29.zip I'm fine now with the overall design. ToDo: - Spots with fences and domesticated animals - Enhance the expansion mines (small resource entities, bush actors, stone actors) - Check over all steepness (enough flat ground for buildings?, most trees reachable?, ...) - Check paths (Can an army walk on them when e.g. a narrow canion forms? Does they never fall below the water surface? ...) - Check resource distribution (To many animals/bushes/fish? Are players in some maps nearly without access to wood? Low forests have no food, is that OK?) - Add other fitting actors for beautification - Chose final name and description Any input very welcome! Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.