Guest User

Untitled

a guest
Dec 18th, 2017
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.29 KB | None | 0 0
  1. #include "Tutorial.h"
  2.  
  3. #include "libnoise.h"
  4. #include "noiseutils.h"
  5.  
  6. using namespace noise;
  7.  
  8. void UTutorial::LibNoiseCreateTerrainHeightMapGrayscale()
  9. {
  10. int Width(256), Height(256);
  11. module::Perlin PerlinNoise;
  12. utils::NoiseMap HeightMap;
  13.  
  14. utils::NoiseMapBuilderPlane HeightMapBuilder;
  15. HeightMapBuilder.SetSourceModule(PerlinNoise);
  16. HeightMapBuilder.SetDestNoiseMap(HeightMap);
  17. HeightMapBuilder.SetDestSize(Width, Height);
  18. HeightMapBuilder.SetBounds(2.0, 6.0, 1.0, 5.0);
  19. HeightMapBuilder.Build();
  20.  
  21. utils::RendererImage Renderer;
  22. utils::Image Image;
  23. Renderer.SetSourceNoiseMap(HeightMap);
  24. Renderer.SetDestImage(Image);
  25. Renderer.Render();
  26.  
  27. utils::WriterBMP Writer;
  28. Writer.SetSourceImage(Image);
  29. Writer.SetDestFilename("C:\\Users\\wilken\\Documents\\UnrealProjects\\LibNoise-Example\\Tutorial.bmp");
  30. Writer.WriteDestFile();
  31. }
  32.  
  33. void UTutorial::LibNoiseCreateSphericalPlanetaryTerrain()
  34. {
  35. int Width(1024), Height(512);
  36. module::Perlin PerlinNoise;
  37. utils::NoiseMap HeightMap;
  38.  
  39. utils::NoiseMapBuilderSphere HeightMapBuilder;
  40. HeightMapBuilder.SetSourceModule(PerlinNoise);
  41. HeightMapBuilder.SetDestNoiseMap(HeightMap);
  42. HeightMapBuilder.SetDestSize(Width, Height);
  43. HeightMapBuilder.SetBounds(-90.0, 90.0, -180.0, 180.0);
  44. HeightMapBuilder.Build();
  45.  
  46. utils::RendererImage Renderer;
  47. utils::Image image;
  48. Renderer.SetSourceNoiseMap(HeightMap);
  49. Renderer.SetDestImage(image);
  50. Renderer.ClearGradient();
  51. Renderer.AddGradientPoint(-1.0000, utils::Color(0, 0, 128, 255)); // deeps
  52. Renderer.AddGradientPoint(-0.2500, utils::Color(0, 0, 255, 255)); // shallow
  53. Renderer.AddGradientPoint(0.0000, utils::Color(0, 128, 255, 255)); // shore
  54. Renderer.AddGradientPoint(0.0625, utils::Color(240, 240, 64, 255)); // sand
  55. Renderer.AddGradientPoint(0.1250, utils::Color(32, 160, 0, 255)); // grass
  56. Renderer.AddGradientPoint(0.3750, utils::Color(224, 224, 0, 255)); // dirt
  57. Renderer.AddGradientPoint(0.7500, utils::Color(128, 128, 128, 255)); // rock
  58. Renderer.AddGradientPoint(1.0000, utils::Color(255, 255, 255, 255)); // snow
  59. Renderer.EnableLight();
  60. Renderer.SetLightContrast(3.0);
  61. Renderer.SetLightBrightness(2.0);
  62. Renderer.Render();
  63.  
  64. utils::WriterBMP Writer;
  65. Writer.SetSourceImage(image);
  66. Writer.SetDestFilename("C:\\Users\\wilken\\Documents\\UnrealProjects\\LibNoise-Example\\PlanetaryTerrain.bmp");
  67. Writer.WriteDestFile();
  68. }
Add Comment
Please, Sign In to add comment