overview.html 29 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645
  1. <!DOCTYPE html>
  2. <html class="writer-html5" lang="en" >
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Overview &mdash; bgfx 1.0 documentation</title>
  7. <link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
  8. <link rel="stylesheet" href="_static/pygments.css" type="text/css" />
  9. <!--[if lt IE 9]>
  10. <script src="_static/js/html5shiv.min.js"></script>
  11. <![endif]-->
  12. <script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
  13. <script src="_static/jquery.js"></script>
  14. <script src="_static/underscore.js"></script>
  15. <script src="_static/doctools.js"></script>
  16. <script src="_static/language_data.js"></script>
  17. <script type="text/javascript" src="_static/js/theme.js"></script>
  18. <link rel="index" title="Index" href="genindex.html" />
  19. <link rel="search" title="Search" href="search.html" />
  20. <link rel="next" title="Building" href="build.html" />
  21. <link rel="prev" title="Documentation" href="index.html" />
  22. </head>
  23. <body class="wy-body-for-nav">
  24. <div class="wy-grid-for-nav">
  25. <nav data-toggle="wy-nav-shift" class="wy-nav-side">
  26. <div class="wy-side-scroll">
  27. <div class="wy-side-nav-search" >
  28. <a href="index.html" class="icon icon-home" alt="Documentation Home"> bgfx
  29. </a>
  30. <div class="version">
  31. 1.0
  32. </div>
  33. <div role="search">
  34. <form id="rtd-search-form" class="wy-form" action="search.html" method="get">
  35. <input type="text" name="q" placeholder="Search docs" />
  36. <input type="hidden" name="check_keywords" value="yes" />
  37. <input type="hidden" name="area" value="default" />
  38. </form>
  39. </div>
  40. </div>
  41. <div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
  42. <ul class="current">
  43. <li class="toctree-l1 current"><a class="current reference internal" href="#">Overview</a><ul>
  44. <li class="toctree-l2"><a class="reference internal" href="#what-is-it">What is it?</a><ul>
  45. <li class="toctree-l3"><a class="reference internal" href="#supported-rendering-backends">Supported rendering backends</a></li>
  46. <li class="toctree-l3"><a class="reference internal" href="#supported-platforms">Supported Platforms</a></li>
  47. <li class="toctree-l3"><a class="reference internal" href="#supported-compilers">Supported Compilers</a></li>
  48. <li class="toctree-l3"><a class="reference internal" href="#supported-languages">Supported Languages</a></li>
  49. <li class="toctree-l3"><a class="reference internal" href="#project-page">Project Page</a></li>
  50. <li class="toctree-l3"><a class="reference internal" href="#contact">Contact</a></li>
  51. </ul>
  52. </li>
  53. <li class="toctree-l2"><a class="reference internal" href="#debugging-and-profiling">Debugging and Profiling</a><ul>
  54. <li class="toctree-l3"><a class="reference internal" href="#renderdoc">RenderDoc</a></li>
  55. <li class="toctree-l3"><a class="reference internal" href="#intelgpa">IntelGPA</a></li>
  56. <li class="toctree-l3"><a class="reference internal" href="#other-debuggers-and-profilers">Other Debuggers and Profilers</a></li>
  57. </ul>
  58. </li>
  59. <li class="toctree-l2"><a class="reference internal" href="#sdl-glfw-etc">SDL, GLFW, etc.</a></li>
  60. <li class="toctree-l2"><a class="reference internal" href="#getting-involved">Getting Involved</a><ul>
  61. <li class="toctree-l3"><a class="reference internal" href="#contributors">Contributors</a></li>
  62. <li class="toctree-l3"><a class="reference internal" href="#repository-visualization">Repository visualization</a></li>
  63. </ul>
  64. </li>
  65. </ul>
  66. </li>
  67. <li class="toctree-l1"><a class="reference internal" href="build.html">Building</a></li>
  68. <li class="toctree-l1"><a class="reference internal" href="examples.html">Examples</a></li>
  69. <li class="toctree-l1"><a class="reference internal" href="bgfx.html">API Reference</a></li>
  70. <li class="toctree-l1"><a class="reference internal" href="tools.html">Tools</a></li>
  71. <li class="toctree-l1"><a class="reference internal" href="internals.html">Internals</a></li>
  72. <li class="toctree-l1"><a class="reference internal" href="license.html">License</a></li>
  73. </ul>
  74. </div>
  75. </div>
  76. </nav>
  77. <section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
  78. <nav class="wy-nav-top" aria-label="top navigation">
  79. <i data-toggle="wy-nav-top" class="fa fa-bars"></i>
  80. <a href="index.html">bgfx</a>
  81. </nav>
  82. <div class="wy-nav-content">
  83. <div class="rst-content">
  84. <div role="navigation" aria-label="breadcrumbs navigation">
  85. <ul class="wy-breadcrumbs">
  86. <li><a href="index.html" class="icon icon-home"></a> &raquo;</li>
  87. <li>Overview</li>
  88. <li class="wy-breadcrumbs-aside">
  89. </li>
  90. </ul>
  91. <hr/>
  92. </div>
  93. <div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
  94. <div itemprop="articleBody">
  95. <div class="section" id="overview">
  96. <h1>Overview<a class="headerlink" href="#overview" title="Permalink to this headline">¶</a></h1>
  97. <div class="section" id="what-is-it">
  98. <h2>What is it?<a class="headerlink" href="#what-is-it" title="Permalink to this headline">¶</a></h2>
  99. <p>Cross-platform, graphics API agnostic, “Bring Your Own Engine/Framework” style rendering library,
  100. licensed under permissive BSD-2 clause open source license.</p>
  101. <p>
  102. <iframe src="https://ghbtns.com/github-btn.html?user=bkaradzic&repo=bgfx&type=star&count=true&size=large" frameborder="0" scrolling="0" width="160px" height="30px"></iframe>
  103. <iframe src="https://ghbtns.com/github-btn.html?user=bkaradzic&repo=bgfx&type=fork&count=true&size=large" frameborder="0" scrolling="0" width="158px" height="30px"></iframe>
  104. </p><div class="section" id="supported-rendering-backends">
  105. <h3>Supported rendering backends<a class="headerlink" href="#supported-rendering-backends" title="Permalink to this headline">¶</a></h3>
  106. <ul class="simple">
  107. <li><p>Direct3D 9</p></li>
  108. <li><p>Direct3D 11</p></li>
  109. <li><p>Direct3D 12</p></li>
  110. <li><p>GNM (only for licensed PS4 developers, search DevNet forums for source)</p></li>
  111. <li><p>Metal</p></li>
  112. <li><p>OpenGL 2.1</p></li>
  113. <li><p>OpenGL 3.1+</p></li>
  114. <li><p>OpenGL ES 2</p></li>
  115. <li><p>OpenGL ES 3.1</p></li>
  116. <li><p>Vulkan</p></li>
  117. <li><p>WebGL 1.0</p></li>
  118. <li><p>WebGL 2.0</p></li>
  119. <li><p>WebGPU/Dawn (experimental)</p></li>
  120. </ul>
  121. </div>
  122. <div class="section" id="supported-platforms">
  123. <h3>Supported Platforms<a class="headerlink" href="#supported-platforms" title="Permalink to this headline">¶</a></h3>
  124. <ul class="simple">
  125. <li><p>Android (14+, ARM, x86, MIPS)</p></li>
  126. <li><p>asm.js/Emscripten (1.25.0)</p></li>
  127. <li><p>FreeBSD</p></li>
  128. <li><p>iOS (iPhone, iPad, AppleTV)</p></li>
  129. <li><p>Linux</p></li>
  130. <li><p>MIPS Creator CI20</p></li>
  131. <li><p>OSX (10.12+)</p></li>
  132. <li><p>PlayStation 4</p></li>
  133. <li><p>RaspberryPi</p></li>
  134. <li><p>Windows (XP, Vista, 7, 8, 10)</p></li>
  135. <li><p>UWP (Universal Windows, Xbox One)</p></li>
  136. </ul>
  137. </div>
  138. <div class="section" id="supported-compilers">
  139. <h3>Supported Compilers<a class="headerlink" href="#supported-compilers" title="Permalink to this headline">¶</a></h3>
  140. <ul class="simple">
  141. <li><p>Clang 3.3 and above</p></li>
  142. <li><p>GCC 5 and above</p></li>
  143. <li><p>vs2017 and above</p></li>
  144. </ul>
  145. </div>
  146. <div class="section" id="supported-languages">
  147. <h3>Supported Languages<a class="headerlink" href="#supported-languages" title="Permalink to this headline">¶</a></h3>
  148. <ul class="simple">
  149. <li><p><a class="reference external" href="https://bkaradzic.github.io/bgfx/bgfx.html">C/C++ API documentation</a></p></li>
  150. <li><p><a class="reference external" href="https://github.com/bkaradzic/bgfx/tree/master/bindings/cs">C# language API bindings #1</a></p></li>
  151. <li><p><a class="reference external" href="https://github.com/MikePopoloski/SharpBgfx">C#/VB/F# language API bindings #2</a></p></li>
  152. <li><p><a class="reference external" href="https://github.com/GoaLitiuM/bindbc-bgfx">D language API bindings</a></p></li>
  153. <li><p><a class="reference external" href="https://github.com/james4k/go-bgfx">Go language API bindings</a></p></li>
  154. <li><p><a class="reference external" href="https://github.com/haskell-game/bgfx">Haskell language API bindings</a></p></li>
  155. <li><p><a class="reference external" href="https://github.com/LWJGL/lwjgl3#lwjgl---lightweight-java-game-library-3">Lightweight Java Game Library 3 bindings</a></p></li>
  156. <li><p><a class="reference external" href="https://github.com/cloudwu/lua-bgfx">Lua language API bindings</a></p></li>
  157. <li><p><a class="reference external" href="https://github.com/Halsys/nim-bgfx">Nim language API bindings</a></p></li>
  158. <li><p><a class="reference external" href="https://github.com/fbertola/bgfx-python#-----bgfx-python--">Python language API bindings #1</a></p></li>
  159. <li><p><a class="reference external" href="https://github.com/jnadro/pybgfx#pybgfx">Python language API bindings #2</a></p></li>
  160. <li><p><a class="reference external" href="https://github.com/rhoot/bgfx-rs#bgfx-rs">Rust language API bindings</a></p></li>
  161. <li><p><a class="reference external" href="https://github.com/stuartcarnie/SwiftBGFX">Swift language API bindings</a></p></li>
  162. <li><p><a class="reference external" href="https://github.com/Akira13641/PasBGFX">Pascal language API bindings</a></p></li>
  163. </ul>
  164. </div>
  165. <div class="section" id="project-page">
  166. <h3>Project Page<a class="headerlink" href="#project-page" title="Permalink to this headline">¶</a></h3>
  167. <ul class="simple">
  168. <li><p><a class="reference external" href="https://github.com/bkaradzic/bgfx">https://github.com/bkaradzic/bgfx</a></p></li>
  169. </ul>
  170. </div>
  171. <div class="section" id="contact">
  172. <h3>Contact<a class="headerlink" href="#contact" title="Permalink to this headline">¶</a></h3>
  173. <blockquote>
  174. <div><ul class="simple">
  175. <li><p><a class="reference external" href="https://github.com/bkaradzic/bgfx/discussions">GitHub Discussions</a></p></li>
  176. <li><p><a class="reference external" href="https://discord.gg/9eMbv7J">Discord Chat</a></p></li>
  177. <li><p>GitHub <a class="reference external" href="https://github.com/bkaradzic">&#64;bkaradzic</a></p></li>
  178. <li><p>Twitter <a class="reference external" href="https://twitter.com/bkaradzic">&#64;bkaradzic</a></p></li>
  179. </ul>
  180. </div></blockquote>
  181. </div>
  182. </div>
  183. <div class="section" id="debugging-and-profiling">
  184. <h2>Debugging and Profiling<a class="headerlink" href="#debugging-and-profiling" title="Permalink to this headline">¶</a></h2>
  185. <div class="section" id="renderdoc">
  186. <h3>RenderDoc<a class="headerlink" href="#renderdoc" title="Permalink to this headline">¶</a></h3>
  187. <p>Loading of RenderDoc is integrated in bgfx when using DX11 or OpenGL
  188. renderer. You can drop in <code class="docutils literal notranslate"><span class="pre">renderdoc.dll</span></code> from RenderDoc distribution
  189. into working directory, and it will be automatically loaded during bgfx
  190. initialization. This allows frame capture at any time by pressing
  191. <strong>F11</strong>.</p>
  192. <p>Download: <a class="reference external" href="https://renderdoc.org/builds">RenderDoc</a></p>
  193. <p>RenderDoc <a class="reference external" href="https://renderdoc.org/docs/how/index.html">How do I …?</a> documentation.</p>
  194. <p><a class="reference external" href="https://software.intel.com/en-us/articles/shader-debugging-for-bgfx-rendering-engine">Shader debugging</a>
  195. with RenderDoc and MSVC.</p>
  196. </div>
  197. <div class="section" id="intelgpa">
  198. <h3>IntelGPA<a class="headerlink" href="#intelgpa" title="Permalink to this headline">¶</a></h3>
  199. <p>Right click <strong>Intel GPA Monitor</strong> tray icon, choose preferences, check
  200. “Auto-detect launched applications” option. Find <code class="docutils literal notranslate"><span class="pre">InjectionList.txt</span></code>
  201. in GPA directory and add <code class="docutils literal notranslate"><span class="pre">examples-*</span></code> to the list.</p>
  202. <p>Download:
  203. <a class="reference external" href="https://software.intel.com/en-us/vcsource/tools/intel-gpa">IntelGPA</a></p>
  204. </div>
  205. <div class="section" id="other-debuggers-and-profilers">
  206. <h3>Other Debuggers and Profilers<a class="headerlink" href="#other-debuggers-and-profilers" title="Permalink to this headline">¶</a></h3>
  207. <table class="docutils align-default">
  208. <colgroup>
  209. <col style="width: 15%" />
  210. <col style="width: 20%" />
  211. <col style="width: 8%" />
  212. <col style="width: 9%" />
  213. <col style="width: 7%" />
  214. <col style="width: 8%" />
  215. <col style="width: 7%" />
  216. <col style="width: 7%" />
  217. <col style="width: 8%" />
  218. <col style="width: 9%" />
  219. </colgroup>
  220. <thead>
  221. <tr class="row-odd"><th class="head"><p>Name</p></th>
  222. <th class="head"><p>OS</p></th>
  223. <th class="head"><p>DX9</p></th>
  224. <th class="head"><p>DX11</p></th>
  225. <th class="head"><p>DX12</p></th>
  226. <th class="head"><p>Metal</p></th>
  227. <th class="head"><p>GL</p></th>
  228. <th class="head"><p>GLES</p></th>
  229. <th class="head"><p>Vulkan</p></th>
  230. <th class="head"><p>Source</p></th>
  231. </tr>
  232. </thead>
  233. <tbody>
  234. <tr class="row-even"><td><p>APITrace</p></td>
  235. <td><p>Linux/OSX/Win</p></td>
  236. <td><p>✓</p></td>
  237. <td><p>✓</p></td>
  238. <td></td>
  239. <td></td>
  240. <td><p>✓</p></td>
  241. <td><p>✓</p></td>
  242. <td></td>
  243. <td><p>✓</p></td>
  244. </tr>
  245. <tr class="row-odd"><td><p>CodeXL</p></td>
  246. <td><p>Linux/Win</p></td>
  247. <td></td>
  248. <td></td>
  249. <td></td>
  250. <td></td>
  251. <td><p>✓</p></td>
  252. <td></td>
  253. <td></td>
  254. <td></td>
  255. </tr>
  256. <tr class="row-even"><td><p>Dissector</p></td>
  257. <td><p>Win</p></td>
  258. <td><p>✓</p></td>
  259. <td></td>
  260. <td></td>
  261. <td></td>
  262. <td></td>
  263. <td></td>
  264. <td></td>
  265. <td><p>✓</p></td>
  266. </tr>
  267. <tr class="row-odd"><td><p>IntelGPA</p></td>
  268. <td><p>Linux/OSX/Win</p></td>
  269. <td><p>✓</p></td>
  270. <td><p>✓</p></td>
  271. <td></td>
  272. <td></td>
  273. <td></td>
  274. <td><p>✓</p></td>
  275. <td></td>
  276. <td></td>
  277. </tr>
  278. <tr class="row-even"><td><p>Nsight</p></td>
  279. <td><p>Win</p></td>
  280. <td><p>✓</p></td>
  281. <td><p>✓</p></td>
  282. <td></td>
  283. <td></td>
  284. <td><p>✓</p></td>
  285. <td></td>
  286. <td></td>
  287. <td></td>
  288. </tr>
  289. <tr class="row-odd"><td><p>PerfHUD</p></td>
  290. <td><p>Win</p></td>
  291. <td><p>✓</p></td>
  292. <td><p>✓</p></td>
  293. <td></td>
  294. <td></td>
  295. <td></td>
  296. <td></td>
  297. <td></td>
  298. <td></td>
  299. </tr>
  300. <tr class="row-even"><td><p>PerfStudio</p></td>
  301. <td><p>Win</p></td>
  302. <td></td>
  303. <td><p>✓</p></td>
  304. <td><p>✓</p></td>
  305. <td></td>
  306. <td><p>✓</p></td>
  307. <td><p>✓</p></td>
  308. <td></td>
  309. <td></td>
  310. </tr>
  311. <tr class="row-odd"><td><p>PIX</p></td>
  312. <td><p>Win</p></td>
  313. <td></td>
  314. <td></td>
  315. <td><p>✓</p></td>
  316. <td></td>
  317. <td></td>
  318. <td></td>
  319. <td></td>
  320. <td></td>
  321. </tr>
  322. <tr class="row-even"><td><p>RGP</p></td>
  323. <td><p>Win</p></td>
  324. <td></td>
  325. <td></td>
  326. <td><p>✓</p></td>
  327. <td></td>
  328. <td></td>
  329. <td></td>
  330. <td><p>✓</p></td>
  331. <td></td>
  332. </tr>
  333. <tr class="row-odd"><td><p>RenderDoc</p></td>
  334. <td><p>Win/Linux</p></td>
  335. <td></td>
  336. <td><p>✓</p></td>
  337. <td></td>
  338. <td></td>
  339. <td><p>✓</p></td>
  340. <td></td>
  341. <td><p>✓</p></td>
  342. <td><p>✓</p></td>
  343. </tr>
  344. <tr class="row-even"><td><p>vogl</p></td>
  345. <td><p>Linux</p></td>
  346. <td></td>
  347. <td></td>
  348. <td></td>
  349. <td></td>
  350. <td><p>✓</p></td>
  351. <td></td>
  352. <td></td>
  353. <td><p>✓</p></td>
  354. </tr>
  355. </tbody>
  356. </table>
  357. <p>Download:</p>
  358. <ul class="simple">
  359. <li><p><a class="reference external" href="https://apitrace.github.io/">APITrace</a></p></li>
  360. <li><p><a class="reference external" href="http://developer.amd.com/tools-and-sdks/opencl-zone/codexl/">CodeXL</a></p></li>
  361. <li><p><a class="reference external" href="https://github.com/imccown/Dissector">Dissector</a></p></li>
  362. <li><p><a class="reference external" href="http://developer.amd.com/tools-and-sdks/graphics-development/gpu-perfstudio/">GPU PerfStudio</a></p></li>
  363. <li><p><a class="reference external" href="https://developer.nvidia.com/linux-graphics-debugger">Linux Graphics Debugger</a></p></li>
  364. <li><p><a class="reference external" href="https://developer.nvidia.com/nsight-graphics">Nsight</a></p></li>
  365. <li><p><a class="reference external" href="https://blogs.msdn.microsoft.com/pix/">PIX</a></p></li>
  366. <li><p><a class="reference external" href="https://developer.nvidia.com/nvidia-perfhud">PerfHUD</a></p></li>
  367. <li><p><a class="reference external" href="https://github.com/GPUOpen-Tools/Radeon-GPUProfiler/releases">RGP (Radeon GPU Profiler)</a></p></li>
  368. <li><p><a class="reference external" href="https://github.com/ValveSoftware/vogl">vogl</a></p></li>
  369. </ul>
  370. </div>
  371. </div>
  372. <div class="section" id="sdl-glfw-etc">
  373. <h2>SDL, GLFW, etc.<a class="headerlink" href="#sdl-glfw-etc" title="Permalink to this headline">¶</a></h2>
  374. <p>It is possible to use bgfx with SDL, GLFW and similar cross platform
  375. windowing libraries. The main requirement is that windowing library
  376. provides access to native window handle that’s used to create Direct3D
  377. device or OpenGL context.</p>
  378. <p>For more info see: <a class="reference internal" href="bgfx.html"><span class="doc">API Reference</span></a>.</p>
  379. <div class="admonition note">
  380. <p class="admonition-title">Note</p>
  381. <p>You can use <code class="docutils literal notranslate"><span class="pre">--with-sdl</span></code> when runnning GENie to enable SDL2 integration with examples:
  382. <code class="docutils literal notranslate"><span class="pre">genie</span> <span class="pre">--with-sdl</span> <span class="pre">vs2012</span></code></p>
  383. </div>
  384. <div class="admonition note">
  385. <p class="admonition-title">Note</p>
  386. <p><code class="docutils literal notranslate"><span class="pre">--with-glfw</span></code> is also available, but it’s just simple stub to be used to test GLFW
  387. integration API.</p>
  388. </div>
  389. <div class="admonition note">
  390. <p class="admonition-title">Note</p>
  391. <p>Special care is necessary to make custom windowing to work with multithreaded renderer.
  392. Each platform has rules about where renderer can be and how multithreading interacts
  393. with context/device. To disable multithreaded render use <code class="docutils literal notranslate"><span class="pre">BGFX_CONFIG_MULTITHREADED=0</span></code>
  394. preprocessor define.</p>
  395. </div>
  396. </div>
  397. <div class="section" id="getting-involved">
  398. <h2>Getting Involved<a class="headerlink" href="#getting-involved" title="Permalink to this headline">¶</a></h2>
  399. <p>Everyone is welcome to contribute to bgfx by submitting bug reports, testing on different
  400. platforms, writing examples (see <a class="reference external" href="https://github.com/bkaradzic/bgfx/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+needed%22">ideas</a>),
  401. improving documentation, profiling and optimizing, etc.</p>
  402. <div class="admonition note">
  403. <p class="admonition-title">Note</p>
  404. <p><strong>When contributing to the bgfx project you must agree to the BSD 2-clause
  405. licensing terms.</strong></p>
  406. </div>
  407. <div class="section" id="contributors">
  408. <h3>Contributors<a class="headerlink" href="#contributors" title="Permalink to this headline">¶</a></h3>
  409. <p>Chrnonological order:</p>
  410. <blockquote>
  411. <div><ul class="simple">
  412. <li><p>Branimir Karadžić (<a class="reference external" href="https://github.com/bkaradzic">&#64;bkaradzic</a>)</p></li>
  413. <li><p>Garett Bass (<a class="reference external" href="https://github.com/garettbass">&#64;garettbass</a>) - OSX port.</p></li>
  414. <li><p>Jeremie Roy (<a class="reference external" href="https://github.com/jeremieroy">&#64;jeremieroy</a>) -
  415. <a class="reference external" href="examples.html#font">10-font</a>,
  416. and <a class="reference external" href="examples.html#fontsdf">11-fontsdf</a> examples.</p></li>
  417. <li><p>Miloš Tošić (<a class="reference external" href="https://github.com/milostosic">&#64;milostosic</a>) -
  418. <a class="reference external" href="examples.html#lod">12-lod</a> example.</p></li>
  419. <li><p>Dario Manesku (<a class="reference external" href="https://github.com/dariomanesku">&#64;dariomanesku</a>) -
  420. <a class="reference external" href="examples.html#stencil">13-stencil</a>,
  421. <a class="reference external" href="examples.html#shadowvolumes">14-shadowvolumes</a>,
  422. <a class="reference external" href="examples.html#shadowmaps-simple">15-shadowmaps-simple</a>,
  423. <a class="reference external" href="examples.html#shadowmaps">16-shadowmaps</a>,
  424. <a class="reference external" href="examples.html#ibl">18-ibl</a>,
  425. and <a class="reference external" href="examples.html#wireframe">28-wireframe</a> example.</p></li>
  426. <li><p>James Gray (<a class="reference external" href="https://github.com/james4k">&#64;james4k</a>) - Go language API bindings.</p></li>
  427. <li><p>Guillaume Piolat (<a class="reference external" href="https://github.com/p0nce">&#64;p0nce</a>) - D language API bindings.</p></li>
  428. <li><p>Mike Popoloski (<a class="reference external" href="https://github.com/MikePopoloski">&#64;MikePopoloski</a>) - C#/VB/F# language API
  429. bindings, WinRT/WinPhone support.</p></li>
  430. <li><p>Kai Jourdan (<a class="reference external" href="https://github.com/questor">&#64;questor</a>) -
  431. <a class="reference external" href="examples.html#vectordisplay">23-vectordisplay</a> example.</p></li>
  432. <li><p>Stanlo Slasinski (<a class="reference external" href="https://github.com/stanlo">&#64;stanlo</a>) -
  433. <a class="reference external" href="examples.html#nbody">24-nbody</a> example.</p></li>
  434. <li><p>Daniel Collin (<a class="reference external" href="https://github.com/emoon">&#64;emoon</a>) - Port of Ocornut’s ImGui to bgfx.</p></li>
  435. <li><p>Andre Weissflog (<a class="reference external" href="https://github.com/floooh">&#64;floooh</a>) - Alternative build system fips.</p></li>
  436. <li><p>Andrew Johnson (<a class="reference external" href="https://github.com/ajohnson23">&#64;ajohnson23</a>) - TeamCity build.</p></li>
  437. <li><p>Tony McCrary (<a class="reference external" href="https://github.com/enleeten">&#64;enleeten</a>) - Java language API bindings.</p></li>
  438. <li><p>Attila Kocsis (<a class="reference external" href="https://github.com/attilaz">&#64;attilaz</a>) - Metal rendering backend, various OSX
  439. and iOS improvements and bug fixes, <a class="reference external" href="examples.html#assao">39-assao</a> example.</p></li>
  440. <li><p>Richard Gale (<a class="reference external" href="https://github.com/RichardGale">&#64;RichardGale</a>) - Emscripten entry input
  441. handling.</p></li>
  442. <li><p>Andrew Mac (<a class="reference external" href="https://github.com/andr3wmac">&#64;andr3wmac</a>) -
  443. <a class="reference external" href="examples.html#terrain">27-terrain</a> example.</p></li>
  444. <li><p>Oliver Charles (<a class="reference external" href="https://github.com/ocharles">&#64;ocharles</a>) - Haskel language API bindings.</p></li>
  445. <li><p>Johan Sköld (<a class="reference external" href="https://github.com/rhoot">&#64;rhoot</a>) - Rust language API bindings.</p></li>
  446. <li><p>Jean-François Verdon (<a class="reference external" href="https://github.com/Nodrev">&#64;Nodrev</a>) - Alternative deployment for
  447. Android.</p></li>
  448. <li><p>Jason Nadro (<a class="reference external" href="https://github.com/jnadro">&#64;jnadro</a>) - Python language API bindings.</p></li>
  449. <li><p>Krzysztof Kondrak (<a class="reference external" href="https://github.com/kondrak">&#64;kondrak</a>) - OculusVR integration.</p></li>
  450. <li><p>Colby Klein (<a class="reference external" href="https://github.com/excessive">&#64;excessive</a>) - Lua language API bindings.</p></li>
  451. <li><p>Stuart Carnie (<a class="reference external" href="https://github.com/stuartcarnie">&#64;stuartcarnie</a>) - Swift language API
  452. bindings.</p></li>
  453. <li><p>Joseph Cherlin (<a class="reference external" href="https://github.com/jcherlin">&#64;jcherlin</a>) -
  454. <a class="reference external" href="examples.html#picking">30-picking</a>,
  455. and <a class="reference external" href="examples.html#rsm">31-rsm</a> example.</p></li>
  456. <li><p>Olli Wang (<a class="reference external" href="https://github.com/olliwang">&#64;olliwang</a>) - Various NanoVG integration improvements.</p></li>
  457. <li><p>Cory Golden (<a class="reference external" href="https://github.com/Halsys">&#64;Halsys</a>) - Nim language API bindings.</p></li>
  458. <li><p>Camilla Berglund (<a class="reference external" href="https://github.com/elmindreda">&#64;elmindreda</a>) - GLFW support.</p></li>
  459. <li><p>Daniel Ludwig (<a class="reference external" href="https://github.com/code-disaster">&#64;code-disaster</a>) - Lightweight Java Game
  460. Library 3 bindings.</p></li>
  461. <li><p>Benoit Jacquier (<a class="reference external" href="https://github.com/benoitjacquier">&#64;benoitjacquier</a>) - Added support for
  462. cubemap as texture 2D array in a compute shader.</p></li>
  463. <li><p>Apoorva Joshi (<a class="reference external" href="https://github.com/ApoorvaJ">&#64;ApoorvaJ</a>) -
  464. <a class="reference external" href="examples.html#pom">33-pom</a> example.</p></li>
  465. <li><p>Stanislav Pidhorsky (<a class="reference external" href="https://github.com/podgorskiy">&#64;podgorskiy</a>) -
  466. <a class="reference external" href="examples.html#sky">36-sky</a> example.</p></li>
  467. <li><p>云风 (<a class="reference external" href="https://github.com/cloudwu">&#64;cloudwu</a>) - Alternative Lua bindings, bgfx IDL scripts,
  468. <a class="reference external" href="examples.html#bunnylod">42-bunnylod</a> example.</p></li>
  469. <li><p>Kostas Anagnostou (<a class="reference external" href="https://github.com/KostasAAA">&#64;KostasAAA</a>) -
  470. <a class="reference external" href="examples.html#gpudrivenrendering">37-gpudrivenrendering</a> example.</p></li>
  471. <li><p>Andrew Willmott (<a class="reference external" href="https://github.com/andrewwillmott">&#64;andrewwillmott</a>) - ATC and ASTC support.</p></li>
  472. <li><p>Aleš Mlakar (<a class="reference external" href="https://github.com/jazzbre">&#64;jazzbre</a>) -
  473. <a class="reference external" href="examples.html#svt">40-svt</a> example.</p></li>
  474. <li><p>Matt Chiasson (<a class="reference external" href="https://github.com/mchiasson">&#64;mchiasson</a>) - Various fixes and improvements.</p></li>
  475. <li><p>Phil Peron (<a class="reference external" href="https://github.com/pperon">&#64;pperon</a>) - Tutorial how to use bgfx API.</p></li>
  476. <li><p>Vincent Cruz (<a class="reference external" href="https://github.com/BlockoS">&#64;BlockoS</a>) - Wayland support.</p></li>
  477. <li><p>Jonathan Young (<a class="reference external" href="https://github.com/jpcy">&#64;jpcy</a>) - Renderer for ioquake3 that uses bgfx,
  478. minimal bgfx example.</p></li>
  479. <li><p>Nick Waanders (<a class="reference external" href="https://github.com/NickWaanders">&#64;NickWaanders</a>) - shaderc: Metal fixes.</p></li>
  480. <li><p>Vladimir Vukićević (<a class="reference external" href="https://github.com/vvuk">&#64;vvuk</a>) - HTML5 context.</p></li>
  481. <li><p>Daniel Gavin (<a class="reference external" href="https://github.com/DanielGavin">&#64;DanielGavin</a>) - <a class="reference external" href="examples.html#tess">41-tess</a> example.</p></li>
  482. <li><p>Ji-yong Kwon (<a class="reference external" href="https://github.com/rinthel">&#64;rinthel</a>) - Vulkan rendering backend.</p></li>
  483. <li><p>Leandro Freire (<a class="reference external" href="https://github.com/leandrolfre">&#64;leandrolfre</a>).</p></li>
  484. <li><p>Ari Vuollet (<a class="reference external" href="https://github.com/GoaLitiuM">&#64;GoaLitiuM</a>) IDL generator for D language
  485. bindings.</p></li>
  486. <li><p>Sebastian Marketsmueller (<a class="reference external" href="https://github.com/sebastianmunity3d">&#64;sebastianmunity3d</a>).</p></li>
  487. <li><p>Cedric Guillemet (<a class="reference external" href="https://github.com/CedricGuillemet">&#64;CedricGuillemet</a>).</p></li>
  488. <li><p>Pablo Escobar (<a class="reference external" href="https://github.com/pezcode">&#64;pezcode</a>) - Various Vulkan fixes.</p></li>
  489. <li><p>Paul Gruenbacher (<a class="reference external" href="https://github.com/pgruenbacher">&#64;pgruenbacher</a>) - Various bug fixes.</p></li>
  490. <li><p>Jukka Jylänki (<a class="reference external" href="https://github.com/juj">&#64;juj</a>) - Various WebGL optimizations and fixes.</p></li>
  491. <li><p>Hugo Amnov (<a class="reference external" href="https://github.com/hugoam">&#64;hugoam</a>) - WebGPU/Dawn rendering backend.</p></li>
  492. <li><p>Christophe Dehais (<a class="reference external" href="https://github.com/goodartistscopy">&#64;goodartistscopy</a>) - Various bug fixes.</p></li>
  493. <li><p>elvencache (<a class="reference external" href="https://github.com/elvencache">&#64;elvencache</a>) -
  494. <a class="reference external" href="examples.html#denoise">43-denoise</a>,
  495. <a class="reference external" href="examples.html#sss">44-sss</a>,
  496. and <a class="reference external" href="examples.html#bokeh">45-bokeh</a> example.</p></li>
  497. </ul>
  498. </div></blockquote>
  499. <p>and <a class="reference external" href="https://github.com/bkaradzic/bgfx/graphs/contributors">others</a>…</p>
  500. </div>
  501. <div class="section" id="repository-visualization">
  502. <h3>Repository visualization<a class="headerlink" href="#repository-visualization" title="Permalink to this headline">¶</a></h3>
  503. <p>
  504. <iframe width="694" height="390" src="https://www.youtube.com/embed/5ZeN_d_-BHo" frameborder="0" allowfullscreen></iframe>
  505. </p></div>
  506. </div>
  507. </div>
  508. </div>
  509. </div>
  510. <footer>
  511. <div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
  512. <a href="build.html" class="btn btn-neutral float-right" title="Building" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
  513. <a href="index.html" class="btn btn-neutral float-left" title="Documentation" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
  514. </div>
  515. <hr/>
  516. <div role="contentinfo">
  517. <p>
  518. &copy; Copyright 2010-2020, Branimir Karadžić
  519. </p>
  520. </div>
  521. </footer>
  522. </div>
  523. </div>
  524. </section>
  525. </div>
  526. <script type="text/javascript">
  527. jQuery(function () {
  528. SphinxRtdTheme.Navigation.enable(true);
  529. });
  530. </script>
  531. </body>
  532. </html>