1 // noise.h 2 // 3 // Copyright (C) 2003, 2004 Jason Bevins 4 // 5 // This library is free software; you can redistribute it and/or modify it 6 // under the terms of the GNU Lesser General Public License as published by 7 // the Free Software Foundation; either version 2.1 of the License, or (at 8 // your option) any later version. 9 // 10 // This library is distributed in the hope that it will be useful, but WITHOUT 11 // ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 12 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 13 // License (COPYING.txt) for more details. 14 // 15 // You should have received a copy of the GNU Lesser General Public License 16 // along with this library; if not, write to the Free Software Foundation, 17 // Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 18 // 19 // The developer's email is jlbezigvins@gmzigail.com (for great email, take 20 // off every 'zig'.) 21 // 22 module noise.noise; 23 24 /// @mainpage libnoise 25 /// 26 /// @section intro Introduction 27 /// 28 /// libnoise is a portable C++ library that is used to generate <i>coherent 29 /// noise</i>, a type of smoothly-changing noise. libnoise can generate Perlin 30 /// noise, ridged multifractal noise, and other types of coherent noise. 31 /// 32 /// Coherent noise is often used by graphics programmers to generate 33 /// natural-looking textures, planetary terrain, and other things. It can 34 /// also be used to move critters in a realistic way. 35 /// 36 /// libnoise is known to compile using the following compilers on the 37 /// following platforms: 38 /// - Microsoft Visual C++ 5.0 under Microsoft Windows 2000 Service Pack 4 39 /// - gcc 3.3.4 under Gentoo Linux 10.0 (x86) 40 /// 41 /// It is not known if libnoise will compile on 64-bit platforms, although 42 /// there is a good change that it will. 43 /// 44 /// @section noise Noise Mods 45 /// 46 /// In libnoise, coherent-noise generators are encapsulated in classes called 47 /// <i>noise modules</i>. There are many different types of noise modules. 48 /// Some noise modules can combine or modify the outputs of other noise 49 /// modules in various ways; you can join these modules together to generate 50 /// very complex coherent noise. 51 /// 52 /// A noise module receives a 3-dimensional input value from the application, 53 /// computes the noise value given that input value, and returns the resulting 54 /// value back to the application. 55 /// 56 /// If the application passes the same input value to a noise module, the 57 /// noise module returns the same output value. 58 /// 59 /// All noise modules are derived from the noise::module::Mod abstract 60 /// base class. 61 /// 62 /// @section contact Contact 63 /// 64 /// Contact jas for questions about libnoise. The spam-resistant email 65 /// address is jlbezigvins@gmzigail.com (For great email, take off every 66 /// <a href=http://www.planettribes.com/allyourbase/story.shtml>zig</a>.) 67 public { 68 import noise.mod.mod; 69 import noise.model.model; 70 import noise.misc; 71 }