Supply an Image-based Light file
At TPAC we agreed that specifying an image-based light (IBL) is an important component of a V1 implementation and specification. In addition to the specific name (environment map, lighting environment, IBL etc), there is the matter of structural representation, i.e. how it resides within the tree structure of the <model> markup itself.
I don't have a strong opinion but some candidates I can see are:
- An attribute on the
<model>tag:
<model environment-map="warehouse.hdr">
<source src="shelf.usdz"/>
</model>
- An attribute on the
<source>tag
<model>
<source src="shelf.usdz" environment-map="warehouse.hdr" />
</model>
- An independent tag inside the
<model>block
<model>
<environment-map src="warehouse.hdr" />
<source src="shelf.usdz"/>
</model>
Or some more complex nesting of <source> elements within such a tag. It should be simple, but my expectation is that the role and complexity of <model> will increase over time, so something expressive enough to meet some obvious needs would be useful.
/agenda
Sharing this new HDR file format for awareness: https://developer.android.com/guide/topics/media/platform/hdr-image-format
I don't remember that we agreed that version 1 needs this. If we add it, my vote is for option 1.
In #72, after finding value in the addition of a JS object for a model's root element, as well as looking forward to a future where a scene graph is appealing, I'm also leaning toward using that rootElement node to specify an IBL as well, among other capabilities.
The main benefit being that many web authors may want to override the IBL on subsets of the scene graph - e.g. a different environment map on the polished stainless steel to the lights affecting the brushed aluminum casing of a high-end desktop computer.
/facetoface
/tpac