Git Product home page Git Product logo

osgrecipes's Introduction

osgRecipes
=============

The osgRecipes project includes different recipes written with OpenSceneGraph (OSG) and can help developers work with this famous 3D rendering engine, as well as other auxiliary libraries. The osgRecipes project itself is in the Public Domain, but some of its recipes may be under other licenses.

This project is also the source code repository of Rui Wang & Xuelei Qian's book `OpenSceneGraph 3.0 Cookbook`, Packt Publishing, 2012. You may read more details or order this book at: http://www.packtpub.com/openscenegrap-3-for-advanced-3d-programming-using-api-cookbook/book

------------
Installation
------------

1. Use CMake (or cmake-gui) to build makefiles or solutions of the recipes
# cmake <recipe_dir> -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=<install_dir>

2. Run 'make' to build and install all recipes
# make
# make install

4. Copy data files from both cookbook and integrations into the binary directory.
# cp <recipe_dir>/cookbook/data/*.* <install_dir>/bin
# cp -r <recipe_dir>/integrations/data <install_dir>/bin

5. Have fun!

------------
Cookbook
------------

You may have to download and compile these third-party dependencies to test all the recipes:
* CEGUI: http://www.cegui.org.uk
* NVIDIA Cg: http://developer.nvidia.com/cg-toolkit
* DirectInput (Windows only): http://msdn.microsoft.com/en-us/directx/aa937788
* GLUT: http://www.opengl.org/resources/libraries/glut
* NVIDIA Physx (version 2.8.x): http://developer.nvidia.com/physx-downloads
* Qt (version 4): http://qt.nokia.com/products
* FireBreath: http://www.firebreath.org/display/documentation/FireBreath+Home

------------
Integrations
------------

This section will show you how to integrate OSG with different kinds of libraries and SDKs. These libraries can add extra functionalities like special effects, visual components and interaction methods to your OSG scene and greatly improve the performance of the applications. These libraries must be free for downloading and for non-commercial purpose of use. The license of the example code may vary according to the license of the third-party library if it does not fit the public domain.

The third-party libraries that can be embedded with OSG are listed here for downloading:
* AGG (the anti-grain geometry library for 2D rendering): already included in the source code
* ALVAR (virtual and augmented reality develop library): http://virtual.vtt.fi/virtual/proj2/multimedia/alvar/index.html
* AntTweakBar (a light and intuitive GUI framework): http://www.antisphere.com/Wiki/tools:anttweakbar
* AssImp (a library to import various well-known 3D model formats): http://assimp.sourceforge.net/
* Awesomium (a web-browser framework for in-app browsing and HTML UIs): http://awesomium.com/
* Box2D (a 2D physics engine for games): http://box2d.org/
* Bullet (A professional multiphysics library): http://bulletphysics.org/wordpress/
* FreeImage (a library supporting popular image formats): http://freeimage.sourceforge.net/
* GUIChan (a lightweight GUI framework): already included in the source code
* libGizmo (gizmo control library for 3D object manipulation): https://github.com/CedricGuillemet/LibGizmo
* MicroPather ( a path finder and A* solver): already included in the source code
* Microsoft DirectWrite (a text-layout and glyph-rendering API): in the Windows SDK
* Microsoft Kinect SDK: http://www.microsoft.com/en-us/kinectforwindows/develop/developer-downloads.aspx
* MyGUI (a fast, flexible and simple GUI): http://mygui.info/
* NanoVG (Antialiased 2D vector drawing library): https://github.com/memononen/nanovg
* ngPlant (a plant modeling software): core library already included in the source code
* NVIDIA PhysX (a well-rounded physics engine, version 3.2): http://developer.nvidia.com/physx-downloads
* OpenNI (natural interaction devices middleware, including Kinect): http://www.openni.org/
* OTL (Oracle, Odbc and DB2-CLI template library): already included in the source code
* PhysFS (PhysicsFS, provide abstract access to various archives): http://icculus.org/physfs/
* RecastNavigation (Famous navigation-mesh toolset for games): https://github.com/memononen/recastnavigation
* RVO2 (Reciprocal collision avoidance for multi-agent simulation): http://gamma.cs.unc.edu/RVO2/
* Spark (a crossplatform particle engine): http://spark.developpez.com/
* Sundog SilverLining & Triton (Weather & ocean rendering commercial middleware): http://www.sundog-soft.com
* Swift++ (a collision detection package): already included in the source code
* TUIO (a common API for tangible multitouch surfaces): already included in the source code
* VLC (a cross-platform multimedia player and framework): http://www.videolan.org/vlc/
* To be continued...

------------
Contributing
------------

Any suggestions and contributions are welcomed all the time. :-)

osgrecipes's People

Contributors

adrics avatar aluaces avatar gwaldron avatar kornerr avatar xarray avatar xenonofarcticus 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.