Skip to content

LSBOSS/bgfx

 
 

Repository files navigation

lsboss-bgfx - bgfx with tessellation & CMake support

This is a fork of Branimir Karadžić's bgfx cross-plattform rendering library with a couple of changes done by me:

  • Support for Tessellation via hull/domain (i.e. tessellation control/evaluation) shaders
    • Check examples/27-tessellation
  • CMake support for better integration into existing pipelines
  • Shader compiling during build time for easier shader development

Tessellation works on

  • Direct3D 11
  • OpenGL

CMake tested on

  • Windows
  • Linux

Compiler tested

  • MSVC
  • Clang

Several changes still have to be done by me before I issue a pull request:

  • Consistent naming between HLSL and GLSL flavor (hull/domain vs. tessellation control/evaluation)
  • Compare hashings between shader pipelines to check for correct input / output signature match
  • Check for compilation on all supported platforms
  • Support Tessellation with Direct3D 12
  • Support Tessellation with Metal
  • Support Tessellation with OpenGL ES when EXT_tessellation_shader is supported

Original README from bgfx

bgfx - Cross-platform rendering library

Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.

Supported rendering backends:

  • Direct3D 9
  • Direct3D 11
  • Direct3D 12 (WIP)
  • Metal (WIP)
  • OpenGL 2.1
  • OpenGL 3.1+
  • OpenGL ES 2
  • OpenGL ES 3.1
  • WebGL 1.0

Supported HMD:

  • OculusVR (0.4.2+)

Supported platforms:

  • Android (14+, ARM, x86, MIPS)
  • asm.js/Emscripten (1.25.0)
  • FreeBSD
  • iOS (iPhone, iPad, AppleTV)
  • Linux
  • MIPS Creator CI20
  • Native Client (PPAPI 37+, ARM, x86, x64, PNaCl)
  • OSX (10.9+)
  • RaspberryPi
  • Windows (XP, Vista, 7, 8, 10)
  • WinRT (WinPhone 8.0+)

Supported compilers:

  • Clang 3.3 and above
  • GCC 4.6 and above
  • vs2008 and above

Languages:

Build status

https://tc27.draster.com/guestAuth/overview.html

Who is using it?

http://airmech.com/ AirMech is a free-to-play futuristic action real-time strategy video game developed and published by Carbon Games.

https://github.com/dariomanesku/cmftStudio cmftStudio - cubemap filtering tool.
cmftStudio

https://github.com/taylor001/crown Crown is a general purpose data-driven game engine, written from scratch with a minimalistic and data-oriented design philosophy in mind.

https://github.com/emoon/ProDBG - ProDBG is a new debugger under development that will support a variety of targets and operating systems. Currently it's in very early development and primary focusing on Mac as primary target. This is how it currently looks.
ProDBG_screenshot

http://www.dogbytegames.com/ Dogbyte Games is an indie mobile developer studio focusing on racing games.
ios

https://github.com/andr3wmac/Torque6 Torque 6 is an MIT licensed 3D engine loosely based on Torque2D. Being neither Torque2D or Torque3D it is the 6th derivative of the original Torque Engine. Torque 6 Material Editor

https://github.com/cgbystrom/twinkle GPU-accelerated UI framework powered by JavaScript for desktop/mobile apps. Idea is to combine the fast workflow and deployment model of web with the performance of native code and GPU acceleration.

https://github.com/nem0/LumixEngine LumixEngine is a MIT licensed 3D engine. The main goal is performance and Unity-like usability.
LumixEngine screenshot

https://github.com/podgorskiy/KeplerOrbits KeplerOrbits - Tool that calculates positions of celestial bodies using their orbital elements. Web Demo

Copyright 2010-2015 Branimir Karadzic. All rights reserved.

https://github.com/bkaradzic/bgfx

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

   1. Redistributions of source code must retain the above copyright notice,
      this list of conditions and the following disclaimer.

   2. Redistributions in binary form must reproduce the above copyright
      notice, this list of conditions and the following disclaimer in the
      documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY COPYRIGHT HOLDER ``AS IS'' AND ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
EVENT SHALL COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

About

Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 76.4%
  • Objective-C 7.7%
  • C 6.9%
  • Objective-C++ 5.6%
  • Shell 1.1%
  • Lua 1.0%
  • Other 1.3%