[x3d-public] X3D AR and LoadSensor node, adding description field to sensors

Brutzman, Donald (Don) (CIV) brutzman at nps.edu
Fri Jan 4 11:47:10 PST 2019


Mitch, thanks for inquiry and discussion on LoadSensor.  Also appreciate your permission to move this discussion to x3d-public list, it is copied below.

I think that the LoadSensor MFNode field "watchList" field is poorly named because it could be well simplified by renaming as "children" instead.

So to be strictly correct in XML syntax, your example below should change from

	<LoadSensor>
		<Inline url="..."/>
	</LoadSensor>

to override the default Inline containerField to match, i.e.

	<LoadSensor>
		<Inline url="..." containerField="watchList"/>
		<!-- and others are possible -->
		<Inline USE="MyOtherModel" containerField="watchList"/>
	</LoadSensor>

This is documented in

	X3dSceneAuthoringHints: containerField, 🔖 Variations from containerField defaults
	http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldVariation

"10. LoadSensor is a parent node that can monitor the loading of one or multiple child nodes having containerField='watchlist'. Such child nodes implement object interface X3DUrlObject and include Anchor, AudioClip, DISEntityTypeMapping, GeoMetadata, ImageCubeMapTexture, ImageTexture, ImageTexture3D, Inline, MovieTexture, PackagedShader, Script, ShaderPart and ShaderProgram."

I think much preferable for content authors, without any problem for implementers, would be to simplify this.  Preferred future example:

	<LoadSensor>
		<Inline url="..."/>
		<Inline USE="MyOtherModel"/>
	</LoadSensor>

	X3dSceneAuthoringHints: containerField, 🔖 Potential future changes for improving containerField
	http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#containerFieldChanges

"* LoadSensor: enter Mantis issue to change unnecessarily different field name containerField='watchList' and rename as containerField='children' instead. Child node restrictions can achieve a functionally equivalent effect and improve the object-oriented design."

To track this and related changes, I expect we will post mantis issues regarding all of these suggested containerField changes.  We can also start tagging issues with #X3Dv4 to identify what is getting sorted out.  Good topic for teleconference discussion.

Thanks for your steady efforts!  I've registered, it will be good to see you at Samsung in Mountain View at W3C WebXR meeting later this month.

v/r Don


On 1/2/2019 12:06 PM, Mitchell Williams wrote:
> Greetings Don,
> 
> Thanks for the info and Happy New Year.
> 
> The <LoadSensor/> has a watchList, but the demo's I see encapsulate <Inline> nodes, such as
> 
> <LoadSensor>
> 	<Inline url-"..."/>
> </LoadSensor>
> 
> It seems easier to implement the watchList though, which is where I think I will start.
> 
> Mitch
> 
> Mitch Williams
> SXR X3D development
> 310-809-4836 (outside line)
> 
> -----Original Message-----
> From: Brutzman, Donald (Don) (CIV) <brutzman at nps.edu>
> Sent: Sunday, December 23, 2018 2:55 PM
> To: Mitch Williams <Mitch.Williams at 3d-Online.com>; Mitchell Williams <m1.williams at partner.samsung.com>
> Cc: X3D Graphics public mailing list <x3d-public at web3d.org>
> Subject: X3D AR and LoadSensor node, adding description field to sensors
> 
> Hi Mitch.  Thanks for the discussion yesterday regarding your impressive GearVR progress using X3D.
> 
> Here is a followup on one topic.  It was good to see that LoadSensor might satisfactorily answer many functional requirements for a scene reacting satisfactorily when url resources are getting loaded.  Not many people have used it, but I think that is pretty powerful node for designing effective response for loading url-based content, thus leading to dynamic interaction.
> 
> * X3D Tooltips: LoadSensor
>     http://www.web3d.org/x3d/tooltips/X3dTooltips.html#LoadSensor
> 
>     "LoadSensor generates events as watchList child nodes are either loaded or fail to load."
> 
> * X3D Architecture 9.4.3 LoadSensor
>     http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/networking.html#LoadSensor
> 
> LoadSensor : X3DNetworkSensorNode {
>     SFBool  [in,out] enabled   TRUE
>     SFNode  [in,out] metadata  NULL [X3DMetadataObject]
>     SFTime  [in,out] timeOut   0
>     MFNode  [in,out] watchList []   [X3DUrlObject]
>     SFBool  [out]    isActive
>     SFBool  [out]    isLoaded
>     SFTime  [out]    loadTime
>     SFFloat [out]    progress
> }
> 
> The only thing that seems missing to me was a "description" field.  Animation chain logic can be involved and sometimes subtle.  Having the ability to add description to a sensor node not only allows them to keep track of what their goal is, and provide persistent documentation about that, but it also allows a browser to inform end users about what sensor activity is currently active.  This proposed field addition is a simple change that can help in several ways.
> 
> Was happy to verify today that we already have an existing Mantis issue covering that topic.
> 
> * Mantis 0000667: 7.3.7 - Need description field for all X3DSensorNode - Web3D MantisBT
>     http://www.web3d.org/member-only/mantis/view.php?id=667
> 
> Users wearing augmented or virtual devices have more 3D interaction opportunities than ever before - "up close and personal" with respect to dynamic content too.  Am keen to track this emerging progress in good practices so that X3D remains fully responsive to author and user needs.
> 
> As you get the VR/AR working group rejuvenated on X3D 4.1, WebXR, demonstrations etc. etc. we will likely see more and more testable capabilities in this arena.  We have a great advantage in that X3D is keeping a "big picture" of Web-scale content, not just a single application domain.
> 
> 	X3D Version 4
> 	http://www.web3d.org/x3d4
> 
> * X3D Version 4.0 Development which shows specific details and planned evolutionary changes to the baseline X3D architecture.
> * X3D Version 4.1 will add Mixed Augmented Reality (MAR) capabilities for diverse virtual and augmented reality (VR, AR) devices.
> 
> Thanks for your continuing great work!  Happy Holidays and Happy New Year.  8)

all the best, Don
-- 
Don Brutzman  Naval Postgraduate School, Code USW/Br       brutzman at nps.edu
Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149
X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman


More information about the x3d-public mailing list