GithubHelp home page GithubHelp logo

beached / libnoise Goto Github PK

View Code? Open in Web Editor NEW

This project forked from qknight/libnoise

0.0 2.0 0.0 720 KB

this is a fork of libnoise which changes the build system from static Makefiles to cmake

Home Page: http://libnoise.sourceforge.net/

License: GNU Lesser General Public License v2.1

C++ 97.91% C 0.69% CMake 1.40%

libnoise's Introduction

My personal fork was to use this alongside a native plugin for the Unity game engine. It is still licensed under the LGPL as before. Primarily, I made some modifications to allow compiling to a Windows x64 DLL.

libnoise

This is a fork of libnoise which includes noiseutils in the building and installing process. It also contains FindLibNoise.cmake

This is a fork of libnoise which changes the build system from static Makefiles to cmake.

A portable, open-source, coherent noise-generating library for C++

libnoise is a portable C++ library that is used to generate coherent noise, a type of smoothly-changing noise. libnoise can generate Perlin noise, ridged multifractal noise, and other types of coherent-noise.

Coherent noise is often used by graphics programmers to generate natural-looking textures, planetary terrain, and other things. The mountain scene shown above was rendered in Terragen with a terrain file generated by libnoise. You can also view some other examples of what libnoise can do.

In libnoise, coherent-noise generators are encapsulated in classes called noise modules. There are many different types of noise modules. Some noise modules can combine or modify the outputs of other noise modules in various ways; you can join these modules together to generate very complex coherent noise.

Compiling

cmake supports 'out of source' builds by default, to use it do this:

mkdir build
cd build
cmake ..
make

this should create everything into the build/ directory

Installing

this is covered by cmake:

make install

Usage

see examples for details but in general:

  1. you need to supply the library -lnoise to the linker
  2. the includes to the compile with -I /usr/include/noise

OR

Use provided FindLibNoise.cmake

A comment on performance

Using compiler optimizations for libnoise is strongly recommended. Using the unoptimized library is roughly a fifth as fast as using -O3 on my test computer.

this cmake build by default (if not in developer mode) will build with -O3

see: CMAKE_BUILD_TYPE

Type of build (Debug, Release, ...)

libnoise's People

Contributors

beached avatar jharger avatar makkrnic avatar nigels-com avatar posva avatar qix- avatar qknight avatar roberthue avatar rodrigosetti avatar sigsegfault avatar stormbytepp avatar vargad avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.