All Projects → ozkanyumsak → Mesh Subdivision

ozkanyumsak / Mesh Subdivision

Licence: mit
A collection of common mesh subdivision algorithms

Projects that are alternatives of or similar to Mesh Subdivision

Opentk
The Open Toolkit library is a fast, low-level C# wrapper for OpenGL, OpenAL & OpenCL. It also includes windowing, mouse, keyboard and joystick input and a robust and fast math library, giving you everything you need to write your own renderer or game engine. OpenTK can be used standalone or inside a GUI on Windows, Linux, Mac.
Stars: ✭ 2,284 (+9036%)
Mutual labels:  opengl, graphics, graphics-library
Bgrabitmap
📜 BGRABitmap graphics library made with Lazarus (Free Pascal).
Stars: ✭ 112 (+348%)
Mutual labels:  opengl, graphics, graphics-library
Silk.net
The high-speed OpenAL, OpenGL, Vulkan, and GLFW bindings library your mother warned you about.
Stars: ✭ 534 (+2036%)
Mutual labels:  opengl, graphics, graphics-library
Fbg
Lightweight C 2D graphics API agnostic library with parallelism support
Stars: ✭ 349 (+1296%)
Mutual labels:  opengl, graphics, graphics-library
Tprpix
a Cross-Platform, 2D Survival Sandbox Game Project. Based on C++17/cmake/OpenGL/SQLite3.
Stars: ✭ 448 (+1692%)
Mutual labels:  opengl, graphics
Shadergen
Proof-of-concept library for generating HLSL, GLSL, and Metal shader code from C#,
Stars: ✭ 395 (+1480%)
Mutual labels:  opengl, graphics
Renderhelp
⚡️ 可编程渲染管线实现,帮助初学者学习渲染
Stars: ✭ 494 (+1876%)
Mutual labels:  opengl, graphics
Worldwindjava
The NASA WorldWind Java SDK (WWJ) is for building cross-platform 3D geospatial desktop applications in Java.
Stars: ✭ 526 (+2004%)
Mutual labels:  opengl, graphics
Midivisualizer
A small MIDI visualizer tool, using OpenGL
Stars: ✭ 347 (+1288%)
Mutual labels:  opengl, graphics
Gfx
[maintenance mode] A low-overhead Vulkan-like GPU API for Rust.
Stars: ✭ 5,045 (+20080%)
Mutual labels:  opengl, graphics
Hybridrenderingengine
Clustered Forward/Deferred renderer with Physically Based Shading, Image Based Lighting and a whole lot of OpenGL.
Stars: ✭ 563 (+2152%)
Mutual labels:  opengl, graphics
Easy3d
A lightweight, easy-to-use, and efficient C++ library for processing and rendering 3D data
Stars: ✭ 383 (+1432%)
Mutual labels:  opengl, mesh
Debug Draw
Immediate-mode, renderer agnostic, lightweight debug drawing API.
Stars: ✭ 366 (+1364%)
Mutual labels:  opengl, graphics-library
Rust Skia
Safe Skia Bindings for Rust
Stars: ✭ 450 (+1700%)
Mutual labels:  opengl, graphics-library
Sfml.net
Official binding of SFML for .Net languages
Stars: ✭ 354 (+1316%)
Mutual labels:  opengl, graphics
Pbr
An implementation of physically based shading & image based lighting in D3D11, D3D12, Vulkan, and OpenGL 4.
Stars: ✭ 722 (+2788%)
Mutual labels:  opengl, graphics
Fauxgl
Software-only 3D renderer written in Go.
Stars: ✭ 658 (+2532%)
Mutual labels:  opengl, graphics
Raylib
A simple and easy-to-use library to enjoy videogames programming
Stars: ✭ 8,169 (+32576%)
Mutual labels:  opengl, graphics
Overload
3D Game engine with editor
Stars: ✭ 335 (+1240%)
Mutual labels:  opengl, graphics
Sfml
Simple and Fast Multimedia Library
Stars: ✭ 7,316 (+29164%)
Mutual labels:  opengl, graphics

mesh-subdivision

A collection of mesh subdivision algorithms.

Algorithms that are currently implemented:

  • Butterfly
  • Catmull-Clark
  • Doo–Sabin
  • Root-3 by Kobbelt
  • Peters-Reif
  • Loop

For now, only OFF mesh format is supported. Mesh examples including letters, numbers and common graphical objects (cube, torus, helix etc) can be found in Meshes folder.

Meshes are represented as a variation of Half-Edge data structure. See Mesh class for details.

Demo application is rather simple: You choose a subdivision algorithm and a mesh to apply it to from a console-based user interface. Most of it is implemented in AlgoRunner class.

Used Open Inventor for visualization of subdivision results, given a mesh object. To use another visualization framework, modify files under Inventor folder (FilledShape and WireframeShape classes), Algorunner and Main.

Example subdivision results for 1, 2 and 3 passes are given below for a closed mesh (X) and an open one (helix). Cyan wireframe is the original mesh.

Doo-Sabin

Alt text Alt text

Catmull-Clark

Alt text Alt text

Loop

Alt text Alt text

Butterfly

Alt text Alt text

Root-3

Alt text Alt text

Peters-Reif

Alt text Alt text

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].