KhronosGroup / KhronosGroup/glTF

Quad support

Open
#1,687 11 comments 25 reactions 0 assignees View on GitHub
Dominant language
HTML
Stars
7.8k
Forks
1.2k
Avg merge
17h 26m
Merged PRs (30d)
5

Description

Quads are an essential part of the modern 3D industry.

[3D Artists make models where quad topology is THE aspect being shown](https://sketchfab.com/3d-models/human-head-topology-female-fcfb9195e1354017b93547f154aaee8b)

For glTF to be more widely used as a cross application 3D viewing format, it needs to easily have an option to be exported/imported as quads.

Sites like sketchfab show wireframe previews on quad meshes, but when you download as GLTF and try to reupload, there is no way to preserve the quad topology of the model.
Likewise you can't export as glTF and upload quads right now

glTF is seen as a viable alternative to FBX, because glTF is one of the first open 3D file formats supporting animation to actually have 3D exporters and viewers that work.

glTF is *huge* on sketchfab, they support glTF for every downloadable assert.
Sketchfab is used by professionals to view, share, and upload 3D models.
In the 3D industry, quad topology is essential to a model review process.

glTF will become FAR more complete of an industry standard if it supports the quad topology storage that the industry has been using for the past 20 years now
[There is already a proposed extension for quads in GLTF](https://github.com/KhronosGroup/glTF/pull/1620):
* Adds no extra filesize
* GLTF viewers display the quad mesh correctly even without implementing the extension
* This is already [implemented](https://github.com/KhronosGroup/glTF-Blender-IO/pull/622) in Blender, and Blender is a significant glTF authoring tool

The earlier GLTF and Quads 'just work', the better

What's preventing this quad support from becoming an accepted extension exactly?
--

Besides topology viewing, Quads for a 3D runtime format has a LOT of use cases like runtime adaptive subdivision level of detail, and [voxel and 3D grid mesh extraction](https://github.com/dominikwodniok/dualmc)
A lot of 3D data inherently is meant to be viewed/processed with quads

Modern 3D modeling workflows are extremely quad oriented for topology and subdivision, projects like [OpenSubdiv](https://github.com/PixarAnimationStudios/OpenSubdiv) from Pixar literally cannot use GLTF because this format doesn't support quads yet. For the purpose of wider 3D industry adoption, GLTF *really* needs to support quads.

Contributor guide

Open the contributing guide

Research direction

No file or test is named in the issue. Start by reading the proposed glTF quad extension in PR #1620 and the Blender glTF-IO implementation in PR #622, then review the discussion here; done would require an accepted, specified extension rather than a localized edit.

Written by the indexing model from the issue text.

Assessment

Domain
computer-graphics
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.