KhronosGroup / KhronosGroup/glTF-Asset-Generator
Feature Roadmap
- Dominant language
- C#
- Stars
- 180
- Forks
- 45
- PR merge metrics
- No merged PRs in 30d
Description
These are the attributes that should have tests created next. They are listed in order of priority.
- [x] Materials and PBR
- [x] Samplers
- [x] Primitives_Attributes
position
normal
tangent
TexCoord_0
TexCoord_1
Color_0
- [x] Spec gloss material
- [x] Assets: Version checking
Version/Min version
Extensions required
- [x] Mesh
indices (on/off)
indices mode
Single primitive
multiple primitives (Split into 2 triangles. PrimitiveAttributes: All on - all off)
- [ ] ~~Color Space
sRGB
linear~~
- [x] Nodes
Node w/ child
Node w/ children
Node w/ deep node hierarchy
Node with transformations (Combo?, Axis flip, negative scale, etc.)
matrix (transformation)
rotation
scale
translation
- [x] Interleaved buffers
Position, UV0, Vertex Color
- [x] Node Animation
- [x] Skin Animation
- [x] Animation Sampler component types #533
- [x] Instancing #419
- [x] Accessors - sparse
- [x] Buffers
Individual buffers for POSITION, INDEX, NORMAL, animation channels #440
multiple buffers
BufferViews byteStride (undefined, two or more accessors)
BufferViews target (ArrayBuffer, ElementArrayBuffer)
- [ ] .Glb
Data packed
No data packed
Some data packed
- [ ] Texture Source
.jpeg
url
- [ ] URI tests #451
- [ ] Material test w/ normals, vertex colors, base color factor + base color texture #438
- [x] Alpha mask tested with different alpha factors (1, 0, 0.8)
- [ ] Alpha blend tested with different alpha factors (1, 0, 0.8)
- [ ] Max, min values of floats. Only ones with limited ranges?
- [ ] Test engine limits #283
- [ ] Unsigned indices with values high enough that they have negative values if treated as signed #316
- [ ] Points w/ normals, w/o indices. w/ texture cords #371
- [ ] Lines w/ normal #371
- [ ] Lines w/ normals, tangent, normal texture, and texture coords #371
- [ ] Alpha_blend, alpha_mask w/ double sided
- [ ] Morph Targets
Support of at least eight morphed attributes
Add instancing model
- [ ] Scenes
Zero scenes
One Scene
Multiple Scenes
One Scene w/ multiple nodes
Multiple Scenes w/ multiple nodes
Multiple Scenes w/ the same node
Multiple Scenes/no scene attribute
- [ ] Material test using ORM texture #405
- [ ] Non-power of 2 textures #318
- [ ] Node Parent-child hierarchy transform #363
- [ ] MSFT LODs #353
- [ ] KHR_materials_unlit (extension) #446
- [ ] KHR_light_punctual (extension) #452
- [ ] KHR_tex transform (extension) #531
- [ ] Outside of range for attributes that have float values (Negative test)
- [ ] Model missing a top level feature. E.g. Missing material, or node, etc… Won't render anything. (Negative test)
- [ ] Test tangent space of normal map #472
- [ ] Name field with special cases (null string, duplicated)
- [ ] Node with negative scale and double sided (should work if both features work separately, so low pri).
NON-FEATURE WORK
- [ ] Model, MeshPrimitive, and Modelgroup should have separate .cs files #510
- [ ] Add data for validating animations (Blocked. Need external requirements) #456
- [ ] Create MD detailing the base model used #140
- [ ] Separate and display occlusion, roughness, and metallic textures in readme #198
- [ ] Mesh_Primitives has only a single model (add models or consolidate) #421
- [ ] Move glTF-Assets-Viewer to glTF-Asset-Generator #447
- [ ] Only display the skybox for models that have attributes that require a skybox #519
Contributor guide
Research direction
This is a broad roadmap rather than a single task; start by choosing one unchecked test area and reading its referenced issue where available, such as .Glb, URI tests, or the listed material and animation cases. Define completion as adding validation coverage for that one scoped area and marking only that roadmap item complete; the issue does not name specific files or test entry points.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- csharp
- Domain
- testing-qa
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100