immersive-web / immersive-web/model-element

Need for Planning and Justification

Open
#70 10 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
HTML
Stars
86
Forks
12
Avg merge
7h 12m
Merged PRs (30d)
1

Description

/tpac

I have read through the issues opened/modified in the last year (at least as my eyes could identify them). A number of issues address details of what the <model> element should or should not do. There is one (#55) that seems to address overall issues and several (#54, #57, #63, #67) that are asking for more fundamental design steps to be carried out.

I agree that there needs to be more fundamental design, but I would like to see use cases (#67) and a analysis of what some existing (mentions in #55 and #63) do or don't do that needs to be included in a new element. I am not claiming that the existing display systems are perfect, but it would be good to know what this proposed element would/could do that is not currently supported.

We can argue about the fine points at each TPAC; but without an agreement on what a new element is trying to achieve, we are discussing vaporware.

To help kick-start this effort and not claiming to be an expert in any of these systems/options; I present a starting list of items for comparison. By no means is this list complete, and I am not going to evaluate the various systems.

  1. Supports glTF Core (V2.0)
  2. Supports glTF PBR extensions
  3. Supports glTF geometry compression extensions
  4. Supports glTF image compression (KTX) extensions
  5. Anticipated time from extension release to support
  6. Consistent rendering across browsers
  7. Control (using attributes or equivalent) of model features (animation, lighting, etc)
  8. Methods for setting scene lighting
  9. ... (add more items below)

The systems that should be compared include (add others below)

  1. <model-viewer>
  2. <model>
  3. <x3d> (as implemented in x3dom, x-ite or others -- all support loading glTF files)

A filled-out comparison table along with use cases describing features not yet available would go a long way to helping everyone figure out what is important and where to spend time & effort.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Begin by reviewing issues #55, #54, #57, #63, and #67, then examine the listed systems: , , and implementations such as x3dom or x-ite. Produce a comparison table covering the proposed criteria and document use cases for features not yet available. Done means the comparison and use cases support agreement on the element's goals.

Written by the indexing model from the issue text.

Assessment

Tech stack
html
Domain
design, documentation, web-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.