C++ 3D

Open-source C++ projects categorized as 3D | Edit details

Top 23 C++ 3D Projects

  • GitHub repo tinyrenderer

    A brief computer graphics / rendering course

    Project mention: It is so boring | reddit.com/r/GraphicsProgramming | 2022-01-19
  • GitHub repo 3d-game-shaders-for-beginners

    🎮 A step-by-step guide to implementing SSAO, depth of field, lighting, normal mapping, and more for your 3D game.

    Project mention: Game Engine From Scratch | reddit.com/r/cpp | 2022-01-17

    Some tutorials I have looked at (well nor originally, as I learned the basics when we were still at DX9 :D): - https://lettier.github.io/3d-game-shaders-for-beginners/index.html

  • OPS

    OPS - Build and Run Open Source Unikernels. Quickly and easily build and deploy open source unikernels in tens of seconds. Deploy in any language to any cloud.

  • GitHub repo FreeCAD

    This is the official source code of FreeCAD, a free and opensource multiplatform 3D parametric modeler. Issues are managed on our own bug tracker at https://www.freecadweb.org/tracker

    Project mention: If you were enormously wealthy and could fund the development of a new open-source software program or radically improve an existing one, what would you do? | reddit.com/r/linux | 2022-01-17

    Shout out to FreeCAD! since you didn't mention it.

  • GitHub repo Open3D

    Open3D: A Modern Library for 3D Data Processing

    Project mention: Creating a simple 3d engine to render a car for ML, how hard is it? Sim | reddit.com/r/cpp | 2021-12-16

    http://www.open3d.org/ seems like a good choice. Is there anything better I'm missing?

  • GitHub repo openscad

    OpenSCAD - The Programmers Solid 3D CAD Modeller

    Project mention: Can OpenSCAD do something similar to Fullcontrol Gcode Designer? | reddit.com/r/openscad | 2022-01-14

    https://github.com/openscad/openscad/commits/master there are commits at least weekly, if not nearly every day.

  • GitHub repo tinyraytracer

    A brief computer graphics / rendering course

    Project mention: It is so boring | reddit.com/r/GraphicsProgramming | 2022-01-19
  • GitHub repo magnum

    Lightweight and modular C++11 graphics middleware for games and data visualization

    Project mention: Game Engine From Scratch | reddit.com/r/cpp | 2022-01-17

    It's not a tutorial, but magnum is a modern C++11/14 graphic engine actively developed by a small team.

  • SonarLint

    Deliver Cleaner and Safer Code - Right in Your IDE of Choice!. SonarLint is a free and open source IDE extension that identifies and catches bugs and vulnerabilities as you code, directly in the IDE. Install from your favorite IDE marketplace today.

  • GitHub repo meshlab

    The open source mesh processing system

    Project mention: How to batch process 3D models? Cost to have done? | reddit.com/r/Unity3D | 2021-12-19


  • GitHub repo tinyobjloader

    Tiny but powerful single file wavefront obj loader

    Project mention: Texture UV issue | reddit.com/r/opengl | 2021-12-16

    I don't think this is an issue with tinyobjloader but I'm unsure of how to troubleshoot from here. I've been following this tutorial to learn opengl.

  • GitHub repo UEViewer

    Viewer and exporter for Unreal Engine 1-4 assets (UE Viewer).

    Project mention: How to decompile (and open in unreal engine 4) security breach? | reddit.com/r/technicalFNaF | 2022-01-01
  • GitHub repo PyMesh

    Geometry Processing Library for Python

    Project mention: help with generative art on Magicavoxxel | reddit.com/r/MagicaVoxel | 2022-01-04

    Great question, and one I’m interested in too. I planned to look at a solution over the next couple of weeks. I was going to look at a library like this, https://github.com/PyMesh/PyMesh, which could automate it.

  • GitHub repo pioneer

    A game of lonely space adventure

    Project mention: Looking for open source projects well suited for beginners | reddit.com/r/cpp | 2022-01-21

    pioneerspacesim maybe. Probably not ideal, but that's the only thing I can think about now.

  • GitHub repo curv

    a language for making art using mathematics

    Project mention: Ten Steps to Becoming a Synth Dynamo | news.ycombinator.com | 2022-01-18
  • GitHub repo vive-diy-position-sensor

    Code & schematics for position tracking sensor using HTC Vive's Lighthouse system and a Teensy board.

    Project mention: DIY steam vr trackers? | reddit.com/r/SteamVR | 2022-01-18

    I was considering (and still am considering) building slimeVR trackers. However, I do own steamvr basestations and I kind of want to take advantage of that if possible. So I was curious whether there is a cheap diy method to base station based trackers. I did come across this: https://github.com/ashtuchkin/vive-diy-position-sensor However I have no clue to how well this actually works. Any ideas of what to do?

  • GitHub repo oce

    OpenCASCADE Community Edition (OCE): a community driven fork of the Open CASCADE library.

    Project mention: 3MF file format and why it’s great | news.ycombinator.com | 2021-11-22

    Some parts of the 3MF are actually good. I like the spec documents winding order of the meshes. The format includes units, and these optional 4x4 transformation matrices — both are useful.

    As for need of the new formats, for one, modern CAD formats are insanely complex. These IGES/STEP/BREP files require many megabytes of very complicated code to deal with, such as this library https://github.com/tpaviot/oce These formats may even contain proprietary extensions. Also, they need non-trivial processing power to handle. Many people wouldn’t want a Core i7 with gigabytes of RAM in their 3D printers, inflates hardware cost and software complexity.

    Besides, we now have high-resolution 3D scanners, and CAE software which algorithmically optimizes models by running numerical simulations. They both output triangle meshes instead of CAD files. Scanners often output point clouds one can convert into triangles, but hard to convert into CAD formats.

    I just don’t like the 3MF implementation too much. XML is fine for kilobytes of data, but not many megabytes. If I would be designing that format, I would probably made it binary. Maybe EBML https://en.wikipedia.org/wiki/Extensible_Binary_Meta_Languag... would work for that; it does fine for MKV videos, which is also a huge pile of structured data with non-trivial performance constraints for producers and especially parsers.

    Another minor thing, it was not the best idea to make name start with a digit. Most programming languages forbid identifiers like that for their classes / functions / namespaces / modules.

  • GitHub repo Klein

    P(R*_{3, 0, 1}) specialized SIMD Geometric Algebra Library

  • GitHub repo vircadia

    Vircadia open source metaverse platform. ("Project Athena")

    Project mention: I know programming: How do I help the Linux community? | reddit.com/r/linux | 2021-12-09

    We're building a 3D/VR open source virtual world

  • GitHub repo f3d

    A fast and minimalist 3D viewer.

    Project mention: trying to open a 3d file on my mac | reddit.com/r/3DScanning | 2022-01-03
  • GitHub repo Yave

    Yet Another Vulkan Engine

    Project mention: Rendering Mip Levels of Image | reddit.com/r/vulkan | 2021-04-21

    Alternatively, you can create a view per mip and use a compute shader to compute the whole cube at once. This is what I have been doing

  • GitHub repo pangolin

    Python binding of 3D visualization library Pangolin (by uoip)

  • GitHub repo deko3d

    Homebrew low level graphics API for Nintendo Switch (Nvidia Tegra X1)

    Project mention: Is opengl good for writing game engines or is the smth better? C++ | reddit.com/r/cpp | 2021-01-22

    Unfortunately not much info is publicly available about it. Recently a homebrew rendering API was released that builds upon reverse engineering efforts: https://github.com/devkitPro/deko3d.

  • GitHub repo TerraForge3D

    3D Procedural Terrain Generation and Texturing Tool in OpenGL/C++

    Project mention: OpenGL Mesh Mesh splitting up in triangles When trying to apply modification by addting normal*factor | reddit.com/r/opengl | 2022-01-17
  • GitHub repo Fractal_Engine

    3D game engine with editor and other stuff

    Project mention: My Custom Game Engine written in C++ and OpenGL | reddit.com/r/gamedev | 2021-05-20

    Source Code : https://github.com/kacperks/Fractal_Engine

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2022-01-21.

C++ 3D related posts


What are some of the best open-source 3D projects in C++? This list will help you:

Project Stars
1 tinyrenderer 11,980
2 3d-game-shaders-for-beginners 11,881
3 FreeCAD 10,554
4 Open3D 6,034
5 openscad 4,515
6 tinyraytracer 4,007
7 magnum 3,766
8 meshlab 2,681
9 tinyobjloader 2,392
10 UEViewer 1,371
11 PyMesh 1,338
12 pioneer 1,123
13 curv 995
14 vive-diy-position-sensor 805
15 oce 691
16 Klein 555
17 vircadia 316
18 f3d 307
19 Yave 237
20 pangolin 199
21 deko3d 164
22 TerraForge3D 130
23 Fractal_Engine 128
Find remote jobs at our new job board 99remotejobs.com. There are 29 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
Less time debugging, more time building
Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.