[x3d-public] Hyperlink and form support

Brutzman, Donald (Don) (CIV) brutzman at nps.edu
Sun Dec 16 07:49:19 PST 2018


On 12/16/2018 4:07 AM, Albert Jan Wonnink wrote:
> Thank you Donald for your answer. I can understand it is undoable to wait for browser company permission. But at the same time I would think that these companies are at some point involved in the discussion on how to shape the future of the 3D web, aren't they (again, I am quite new to this)?

Again correct.  Web3D Consortium has a number of individuals who work to encourage adoption.  It is part of our mission.

Liaison and interoperability with standards organizations (ISO, W3C, others) is our long-term strategy.  Indeed showing XForms mappings to X3D is an excellent case to make.  (Note that XForms appears quite simple on first inspection, but immense work and practice has guided its evolution from HTML practice towards crisp design.)

> Let me focus on one of the problems we encountered to make my point. On out platform, as example on one of the 3D websites, we wanted to allow text chats among visitors in the 3D environment. Therefore we needed an equivalent of a textarea to popup in the 3D space, with text wrapping, scrollbars and the possibility to set the text cursor at any required place by clicking on the text.
> It seems to me that such a basic feature should be included in a future X3D version, and not be left as a quite challenging JavaScript implementation.
> To me, it is in the very nature of the declarative approach to supply tags for these common features, although they will only become common when 3D will be used more for business implementations (not only as part of a 2D page).
> 
> Albert Jan Wonnink

I think that you present an excellent use case, and the X3D Working Group should consider defining such a node along the lines of what you propose.  It might be a straightforward design progression from KeySensor to StringSensor to TextAreaSensor (for example).  A new Prototype node with a JavaScript implementation might even demonstrate exemplar capability now - this is a good way to convince everyone of its utility and feasibility.  Implementation, evaluation, examples and multiple implementations is then our path to long-term success.  Long-term progress is driven by community needs and member activity.

However X3D design principles do insist upon general device-independent reuse, and further strive for language terseness, and so finding the common-denominator tech interface that supports all needs can sometimes be tricky.  In this case, a few starting points:

a. Can well-defined HTML5 textarea and forms be used in concert with an X3D scene to provide such functionality?  Note that the HTML page itself might have a minimalist or non-visible display since X3D can float within, alongside or over the page.  Existing browser implementations provide a huge degree of support for these capabilities already.

	https://www.w3.org/wiki/Html/Elements/textarea
	https://www.w3.org/TR/html5/sec-forms.html#the-textarea-element
	https://www.w3.org/TR/html5/forms.html

b.  How is extended text entry practical when interacting in 3D?  That task can range from easy to impossible, depending on devices provided to user.  A useful development is that voice entry (speech to text) might leapfrog such barriers in the general case.

c. How does basic functionality for buttons, checkboxes, menues etc. map to the modalities of VR/AR?XR devices?  Preserving interface semantics provides greatest effect.

d. Are there good examples of textarea use in immersive 3D already?  Observing existing practice and good solutions can illuminate essential functional goals.

d. Should we think of this as a "plain old 3D interface" problem or perhaps better considered a Mixed Augmented Reality (MR) integration challenge?  Maybe it gets best solved as part of the X3D v4.1 design space.  Of course we all want to avoid solving a few problems in isolation that can't work together well.  Mitch Williams is rejuvenating that working group and no doubt has insights already on this particular challenge.

e. Are further improvements possible (and more easily defined) through alignment with XForms?

So there is a lot to consider.  Further, please observe that with this public group interchange we are exploring a good problem and worthy alternatives.  That matches the mission of Web3D Consortium and underlines the importance of the X3D community.  No single person and no single company is smarter that everyone working together on a shared open standard.

X3D has most of the functionality you seek now, but I agree with your analysis that textarea is also important for achieving common use and good business-application support.  How best to accomplish that is our shared challenge.

Again thanks Albert Jan Wonnink (and Phillip Fennell too).  Hope this helps.  Good luck with ongoing efforts here.

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> *Van:* Brutzman, Donald (Don) (CIV) <brutzman at nps.edu>
> *Verzonden:* zondag 16 december 2018 06:15
> *Aan:* Albert Jan Wonnink
> *CC:* vmarchetti at kshell.com; X3D Graphics public mailing list
> *Onderwerp:* Re: [x3d-public] Hyperlink and form support
> Since X3D is presentation layer, and since X3D content can coexist within HTML and alongside SVG and exchange events throughout (see X3DOM and X_ITE implementations), there are many possibilities.  Given the flexibility of both HTML Script code and embedded X3D Script nodes, as well as common use of Javascript, all manner of integration appears to be possible today with more forthcoming.  Since the Anchor node activates the the powerful and diverse functionality of a url, much responsiveness is available even without scripting.
> 
> The X3D v4 specification evolution is aimed at good coexistence of 2D/3D/behavior markup for authors, emphasizing HTML5/DOM integration while adding a number of additional excellent features.  The X3D v4.1 specification will follow closely afterwards, adding functionality for virtual/augmented/mixed reality applications.  All this work is steadily progressing.  As ever with these specifications, hardware and software independence is achieved by defining page and model functionality rather than attempting to legislate browser software patterns (which morph regularly).  We no longer wait for "browser company permission" and instead utilize the shared declarative power of open standards.
> 
> More on X3D v4.0 and v4.1 is found at
> 
>          X3D Version 4
> http://www.web3d.org/x3d4
> 
>          X3D version 4.0 Development
> http://www.web3d.org/wiki/index.php/X3D_version_4.0_Development
> 
>          X3DOM: instant 3D the HTML way!
> https://www.x3dom.org
> 
>          X_ITE X3D Browser: Have you seen this?
> http://create3000.de/x_ite/getting-started
> 
> Meanwhile for what you describe, the Anchor node is a powerful way to achieve form capabilities by associating url links with selectable geometry.  Vince is providing great guidance, you may also find KeySensor to be an even simpler variant that accepts single keystrokes, rather than strings.
> 
> Further links to resources for each node are found in X3D Tooltips.  X3D Scene Authoring Hints should also be useful.
> 
> http://www.web3d.org/x3d/content/X3dTooltips.html#Anchor
> http://www.web3d.org/x3d/content/X3dTooltips.html#TouchSensor
> http://www.web3d.org/x3d/content/X3dTooltips.html#StringSensor
> http://www.web3d.org/x3d/content/X3dTooltips.html#KeySensor
> 
> http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#urls
> http://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Scripts
> 
> Please don't get stuck, trouble reports and progress reports are all welcome.
> 
> Good luck with your work, it sounds interesting!  8)
> 
> On 12/11/2018 2:52 AM, Albert Jan Wonnink wrote:
>> If one can only have planes (or maybe even curved surfaces) having 2d browser content in a 3D SceneGraph a large part of the described issue would be resolved.
>> I thing the 2D and 3D browsing environment should be reciprocal to be most effective. But I couldn't find this described yet, and I can imagine this is viewed and tackled another way.
>> 
>> Albert Jan Wonnink
>> 
>> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>> *Van:* Albert Jan Wonnink <awonnink at hotmail.com>
>> *Verzonden:* maandag 10 december 2018 00:09
>> *Aan:* vmarchetti at kshell.com
>> *CC:* X3D Graphics public mailing list
>> *Onderwerp:* Re: [x3d-public] Hyperlink and form support
>> Thank you Vince for your reply.
>> 
>> The Anchor is indeed what I somehow failed to find earlier in the specification.
>> 
>> The situation we envision is when XR glasses will be commonly used to access 3D websites that have similar possibilities for businesses as the current 2D sites. This means that 3D website builders should be able surround a (part of a) text, an image or a  3D object with an anchor. Also one needs normal text fields, radio- and checkboxes etc. for users to be able to fill-in their choices and post back to the server.
>> 
>> Is this already possible to do in X3D?
>> 
>> Regards,
>> 
>> Albert Jan
>> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>> *Van:* vmarchetti at kshell.com <vmarchetti at kshell.com>
>> *Verzonden:* zondag 9 december 2018 22:43
>> *Aan:* Albert Jan Wonnink
>> *CC:* X3D Graphics public mailing list
>> *Onderwerp:* Re: [x3d-public] Hyperlink and form support
>> Albert
>> 
>> X3D does supports responding to mouse clicks on an elements of a 3D scene graph through the TouchSensor node (http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/pointingsensor.html#TouchSensor) , and there is also  functionality of following a URL attached
>> to a shape in the Anchor node: http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/networking.html#Anchor
>> 
>> There is a basic example of the Anchor node on the X_ITE website: http://create3000.de/users-guide/components/networking/anchor/#example
>> 
>> I'm not sure what form support would mean in the context of a 3D Scenegraph, but there is a specification for capturing and responding to keyboard presses in the StringSensor node:  http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/keyboard.html#StringSensor
>> 
>> Can you say more about how you would like to extend the familiar interface patterns of hyperlinks and input forms into the 3D and VR worlds?
>> 
>> With Regards.
>> Vince Marchetti
>> 
>> 
>>> On Dec 9, 2018, at 3:36 PM, Albert Jan Wonnink <awonnink at hotmail.com <mailto:awonnink at hotmail.com>> wrote:
>>>
>>> About a year ago we started a proof of concept of a browser suitable for HoloLens and supporting business processes. We choose X3D as basic format, but because of lack of knowledge of the full specification, and having the focus on the technology, we added  our own tags using a separate namespace.
>>>
>>> The most important features for which we couldn't find the X3D implementation where hyperlinks- and form support.
>>>
>>> Does X3D support these? If so, where can I find the specification?
>>>
>>> Regards,
>>>
>>> Albert Jan Wonnink
>>> _______________________________________________
>>> x3d-public mailing list
>>> x3d-public at web3d.org <mailto:x3d-public at web3d.org>
>>> http://web3d.org/mailman/listinfo/x3d-public_web3d.org

On 12/14/2018 6:37 AM, Philip Fennell wrote:
> Hello Albert,
> 
> With specific regard to forms, have you looked at XForms <https://www.w3.org/community/xformsusers/>.
> 
> The XForms 2 Recommendation <https://www.w3.org/community/xformsusers/wiki/XForms_2.0> is currently being finalised but you might find XForms as a suitable extension to X3D as there is a clear separation between the form definition and the rendered appearance of controls which lends itself to being used within a variety of host mark-up languages like (X)HTML, SVG and potentially X3D.
> 
> Regards
> 
> Philip

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