BunnyLOD
assimp
Our great sponsors
BunnyLOD | assimp | |
---|---|---|
4 | 37 | |
74 | 10,256 | |
- | 1.9% | |
0.0 | 9.5 | |
almost 4 years ago | 4 days ago | |
C++ | C++ | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
BunnyLOD
-
question about wasted index Buffer data
If you reuse the same index buffer as proposed then you won't be able to share vertices, which can be an important optimization. In my case I use a 323 cache of vert indices and just insert an index rather than a vertex if the vertex already exists and has the same material. I generate normals in the pixel shader to increase what can be shared, and then use a variant of Stan Melax's edge collapse polygon reduction algorithm to combine edges and reduce triangle count.
-
help implementing LOD edge collapse algorithm
You might want to take a look at Stan Melax's easy mesh simplification technique with edge collapse at http://www.melax.com/polychop (read the full article link) - I've ported the code so it runs cross platform on https://github.com/dougbinks/BunnyLOD
-
Mesh optimization algorithms
I use a variant of progressive meshing, but constrained to preserve edges, normals and ambient occulusion in Avoyd based on Stan Melax's work: https://github.com/dougbinks/BunnyLOD
-
Voxel Vendredi 81
My triangle reduction in Avoyd, loosely based on Stan Melax's progressive mesh approach checks that the vertex being removed is internal to a set of triangles by checking that the internal angles add up to roughly 2Pi. This also ensures only flat surfaces are reduced, although I also perform normal checks and that vertex ambient occlusion gradients are preserved.
assimp
- The Asset-Importer-Lib Minor Release Version 5.3.0 is out
-
Quickly setting up a 3D scene?
If you use something like libassimp https://github.com/assimp/assimp it will allow you to import these and access the data to generate your Vertex Array Objects then render to a frame buffer object.
-
Scene organization
If you just want to load other data in a relatively simple fashion, assimp https://www.assimp.org supports loading a bunch of different formats and is pretty easy to use.
-
Noob question: Between WebGL, OpenGL ES and emscripten, what is the recommended usage and relationship between them for creating an interactive browser based graphics app?
The emscripten interface for the assimp library. It runs entirely in the browser, and allows you to import 40+ 3D file formats and access the result in JSON or glTF format. This is not a full port of assimp, but an easy to use interface to access it's functionality.
-
Issues with Assimp Loader and Bones
I ran into what sounds like a similar problem a few months ago. It turns out this was an assimp bug: https://github.com/assimp/assimp/issues/1974
-
What is the best way to read .3DS files?
You could give assimp a go (there is a python version) i've used it for 3DS before then you can export to something else. https://github.com/assimp/assimp/blob/master/port/PyAssimp/README.md
-
How can I retrieve normal scale and occlusion strength properties from GLTF 2.0 PBR materials using Assimp?
I have checked the source code for GLTF for this and it is not handled by Assimp. I created an issue as in their Github.
-
A TRIANGLE!!! with OpenGL! Awesome right? 😅😜
Assimp is your friend
-
Using Assimp library for commercial game development
Have you read the license? It's quite permissive. https://github.com/assimp/assimp/blob/master/LICENSE
-
i wanna turn 3d models into a sprite and a normal map (the same way dead cells does it) Any library recommendations that i can use for this? Simpler and easier to learn the llibrarry the better as this is the only thing i am going to do with it.
There is probably some library more specific to your use case, but you can use assimp to load 3d models in C++.
What are some alternatives?
meshoptimizer - Mesh optimization library that makes meshes smaller and faster to render
tinyobjloader - Tiny but powerful single file wavefront obj loader
chip-8 - Yet another Chip-8 interpreter, but this time with a beautiful interface 💻
cgltf - :diamond_shape_with_a_dot_inside: Single-file glTF 2.0 loader and writer written in C99
magnum - Lightweight and modular C++11 graphics middleware for games and data visualization
android-3D-model-viewer - Android OpenGL 2.0 application to view 3D models. Published on Play Store
Physically-based-deferred-shading - First attempt at writing a good looking 3D renderer. Written in C++ using OpenGL on Ubuntu.
Bplus.jl - A modern OpenGL 4.6 rendering framework, written in Julia.
ozz-animation - Open source c++ skeletal animation library and toolset
stylized_snake_game - A cross-platform desktop stylized version of snake game made from scratch in C++/OpenGL.
tilck - A Tiny Linux-Compatible Kernel