Skip to content

C++ library designed to provide an abstraction for different rendering engines. It offers unified APIs for creating 3D graphics applications.

License

Notifications You must be signed in to change notification settings

BA-Utkarsh/gz-rendering

 
 

Repository files navigation

Gazebo Rendering: Rendering library for robot applications

Maintainer: ichen [AT] openrobotics [DOT] org

GitHub open issues GitHub open pull requests Discourse topics Hex.pm

Build Status
Test coverage codecov
Ubuntu Focal Build Status
Homebrew Build Status
Windows Build Status

Gazebo Rendering is a C++ library designed to provide an abstraction for different rendering engines. It offers unified APIs for creating 3D graphics applications.

Gazebo Rendering is a component in the Gazebo framework, a set of libraries designed to rapidly develop robot applications.

Table of Contents

Features

Install

Usage

Folder Structure

Code of Conduct

Contributing

Versioning

License

Features

  • Support for rendering engines including OGRE and OptiX (experimental)
  • Plugin-based architecture. Multiple rendering engine plugins can be loaded at run time.
  • Object-oriented scene management.

Install

See the installation tutorial.

Usage

The Gazebo Rendering API can be found in the documentation. See the installation tutorial on how to build the documentation files using Doxygen.

You can also take a look at the sample applications in the examples folder.

Folder Structure

  • include/gz/rendering: Contains all the public header files which will be installed

  • src: Contains all the C++ source code which are not installed.

  • test: All integration, performance and regression tests go here, under their specific folders.

  • examples: Sample programs to demonstrate different features of gz-rendering

  • doc: Files used by Doxygen when generating documentation.

Rendering engine plugin implementation code is stored in their own folders

  • ogre : OGRE 1.x rendering engine plugin

  • ogre2 : OGRE 2.x rendering engine plugin (available in versions >= gz-rendering1)

  • optix : OptiX rendering engine plugin

Contributing

Please see CONTRIBUTING.md.

Code of Conduct

Please see CODE_OF_CONDUCT.md.

Versioning

This library uses Semantic Versioning. Additionally, this library is part of the Gazebo project which periodically releases a versioned set of compatible and complimentary libraries. See the Gazebo website for version and release information.

License

This library is licensed under Apache 2.0. See also the LICENSE file.

About

C++ library designed to provide an abstraction for different rendering engines. It offers unified APIs for creating 3D graphics applications.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 89.7%
  • GLSL 6.0%
  • Metal 2.4%
  • Cuda 0.6%
  • CMake 0.6%
  • HLSL 0.5%
  • Other 0.2%