<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:Wingdings;
        panose-1:5 0 0 0 0 0 0 0 0 0;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Verdana;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.5in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:685326233;
        mso-list-template-ids:-1;}
@list l0:level1
        {mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level2
        {mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level3
        {mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level4
        {mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level5
        {mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level6
        {mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level7
        {mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level8
        {mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level9
        {mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1
        {mso-list-id:1289356822;
        mso-list-type:hybrid;
        mso-list-template-ids:1159754350 -1 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l1:level1
        {mso-level-start-at:0;
        mso-level-number-format:bullet;
        mso-level-text:\F0D8;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;
        mso-fareast-font-family:"Times New Roman";
        mso-bidi-font-family:Calibri;}
@list l1:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l1:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l1:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l1:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l1:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l1:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l1:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l1:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l2
        {mso-list-id:1319531086;
        mso-list-type:hybrid;
        mso-list-template-ids:-931640426 -1 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l2:level1
        {mso-level-start-at:0;
        mso-level-number-format:bullet;
        mso-level-text:\F0D8;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;
        mso-fareast-font-family:"Times New Roman";
        mso-bidi-font-family:"Times New Roman";}
@list l2:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l2:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l2:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l2:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l2:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l2:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l2:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l2:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l3
        {mso-list-id:1325662930;
        mso-list-type:hybrid;
        mso-list-template-ids:-1118507446 -1 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l3:level1
        {mso-level-start-at:0;
        mso-level-number-format:bullet;
        mso-level-text:\F0D8;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;
        mso-fareast-font-family:"Times New Roman";
        mso-bidi-font-family:"Times New Roman";}
@list l3:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l3:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l3:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l3:level5
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l3:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
@list l3:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l3:level8
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l3:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0A7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Wingdings;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
--></style></head><body lang=EN-US link=blue vlink="#954F72"><div class=WordSection1><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in;margin-left:.25in;margin-right:0in'><ul style='margin-top:0in' type=disc><li class=MsoListParagraph style='margin-left:-.25in;mso-list:l2 level1 lfo4;border:none;padding:0in'>I was thinking about keyboard input or even about any character stream from external equipment (e.g. game controller)</li></ul></div><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='border:none;padding:0in'><o:p> </o:p></p><p class=MsoNormal style='border:none;padding:0in'>KeySensor for a ‘standard’ keyboard text entry when the scene can use system? <o:p></o:p></p><p class=MsoNormal style='border:none;padding:0in'>Otherwise, communication with external is supposed to be same as if the events were generated internal. <o:p></o:p></p><p class=MsoNormal style='border:none;padding:0in'>The external is sending string(s) of x3d SAI events into the live scene, to be processed just like internal events when the external tells the scene to update. There are certain rules about what is acceptable as an x3d SAI event but essentially, if everything works fine, then you can treat external(s) as Sensor or Script node(s) that expect to trade information in the form of x3d SAI [in,out](s).<o:p></o:p></p><p class=MsoNormal style='border:none;padding:0in'><o:p> </o:p></p></div><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in;margin-left:.25in;margin-right:0in'><ul style='margin-top:0in' type=disc><li class=MsoListParagraph style='margin-left:-.25in;mso-list:l2 level1 lfo4;border:none;padding:0in'>Text input to billboards e.g. if the billboard has the focus then the avatar stands still and concentrates on the text input.<o:p></o:p></li></ul></div><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='border:none;padding:0in'>How does the billboard get focus? Has the user interacted, has author decided? Is the avatar seeing it or are you looking over its shoulder? <o:p></o:p></p><p class=MsoNormal style='border:none;padding:0in'>The billboard has a default behavior that can be controlled. There are a couple of different ways to display scene stuffs on and off. Billboard children can be anything, sensors and all. Both billboard and ‘avatar’ can have some built-in and some triggered behaviors. I think best to upgrade to idea of Avatar to Humanoid, then you can get more functionality from the device. <o:p></o:p></p><p class=MsoNormal style='border:none;padding:0in'>All of x3d is just a supporting structure for the x3d hanim – True, all the rest of vrml/x3d is done just to create a realistic realtime/yourtime environment for a realistic humanoid having realistic features doing realistic interactions. <o:p></o:p></p><p class=MsoNormal style='border:none;padding:0in'><o:p> </o:p></p><p class=MsoNormal style='border:none;padding:0in'>Good Luck, </p><p class=MsoNormal style='border:none;padding:0in'>Joe</p><p class=MsoNormal style='border:none;padding:0in'><o:p> </o:p></p><p class=MsoNormal style='border:none;padding:0in'><b>From: </b><a href="mailto:christoph.valentin@gmx.at">Christoph Valentin</a><br><b>Sent: </b>Wednesday, January 23, 2019 2:47 PM<br><b>To: </b><a href="mailto:joedwil@earthlink.net">Joseph D Williams</a>; <a href="mailto:gpugroup@gmail.com">Doug Sanden</a><br><b>Cc: </b><a href="mailto:x3d-public@web3d.org">x3d-public@web3d.org</a><br><b>Subject: </b>RE: [x3d-public] Fw: Avatar Handling / non-standard movementstrategies/ input of key strokes ------ Was: Mac-unawarePageUp/PageDown,Viewpoint list, navigation keys?</p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Hi there,<br><br>>>>>>Maybe I haven’t looked enough, but I am thinking about Anchors and TouchSensors and Layers?<br><br><br>I was thinking about keyboard input or even about any character stream from external equipment (e.g. game controller)<br><br>Text input to billboards e.g. if the billboard has the focus then the avatar stands still and concentrates on the text input. <br><br>I was thinking of mixing the character stream with special control characters ('left', 'right', 'faster', 'slower') . Control characters would support the X3D navigation paradigm. However the scene author could build avatars with custom semantics ('jump', 'punch', ......)<br><br>Just associating and phantasizing, of course :-)<br>-- <br>Diese Nachricht wurde von meinem Android Mobiltelefon mit GMX Mail gesendet.<o:p></o:p></p><div><p class=MsoNormal>Am 23.01.19, 23:21, Joseph D Williams <joedwil@earthlink.net> schrieb:<o:p></o:p></p><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-top:4.8pt;margin-right:0in'><ul style='margin-top:0in' type=disc><li class=MsoListParagraph style='margin-bottom:12.0pt;margin-left:0in;mso-list:l3 level1 lfo1'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'><field accessType='inputOutput' name=<strong><span style='font-family:"Verdana",sans-serif'>'canHaveFocus' </span></strong>type='SFBool' value='false'/></span><o:p></o:p></li></ul><p> </p><p class=MsoNormal style='margin-left:4.8pt'>Hi Doug, That is real nice demo (I hope I can find it again) and shows a lot of work and understanding. Maybe I haven’t looked enough, but I am thinking about Anchors and TouchSensors and Layers? <o:p></o:p></p><p> </p><p class=MsoNormal style='mso-margin-top-alt:auto;margin-left:40.8pt;text-indent:-.25in;mso-list:l1 level1 lfo2'><![if !supportLists]><span style='font-size:9.0pt;font-family:Wingdings'><span style='mso-list:Ignore'>Ø<span style='font:7.0pt "Times New Roman"'>  </span></span></span><![endif]><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>but the avatar gets the focus any time, when no other geometry has the focus, even, if the avatar is invisible currently.<o:p></o:p></span></p><p style='margin-bottom:0in;margin-bottom:.0001pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Why then, do I want to treat my avatar like any other piece of the scene? I lose focus if nothing else has focus and avatar not visible, then must be no focus available and browser must show Panic button? In any event, nothing should have focus-power over my avatar… rant rant <o:p></o:p></span></p><p style='margin-bottom:0in;margin-bottom:.0001pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>You are doing fine in recommending several layers of automation of select and unselect and taking care of actives and inactives for what might seem to be a specialized application that might be served better as a prototype. I recommend showing some example user code to show how these interfaces are used to aid selection and navigation, even as viewed through the eyes of the avatar, or without the avatar aspect. Especially when you are showing browsers drawing things and working through hierarchies to turn sensors on and off automagically … <o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;margin-left:40.8pt;text-indent:-.25in;mso-list:l1 level1 lfo2'><![if !supportLists]><span style='font-size:9.0pt;font-family:Wingdings'><span style='mso-list:Ignore'>Ø<span style='font:7.0pt "Times New Roman"'>  </span></span></span><![endif]><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>highlighting or by drawing a 2-dimensional "frame" around the geometry.<o:p></o:p></span></p><p> </p><p class=MsoNormal style='margin-left:4.8pt'>Those two suggestions offer a wide range of options which is why there are no default hlghlighting or selection options for anchors or any environmental.  Compared to html, x3d does not have any style in this at all, and the author has to do it all. Same with other sensors. <o:p></o:p></p><p> </p><p class=MsoNormal style='margin-left:4.8pt'>Fine Work and Best Regards.<o:p></o:p></p><p class=MsoNormal style='margin-left:4.8pt'>Joe<o:p></o:p></p><p> </p><p> </p><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='margin-left:4.8pt'><b>From: </b><a href="mailto:christoph.valentin@gmx.at">Christoph Valentin</a><br><b>Sent: </b>Wednesday, January 23, 2019 9:14 AM<br><b>To: </b><a href="mailto:gpugroup@gmail.com">Doug Sanden</a><br><b>Cc: </b><a href="mailto:x3d-public@web3d.org">x3d-public@web3d.org</a><br><b>Subject: </b>[x3d-public] Fw: Avatar Handling / non-standard movement strategies/ input of key strokes ------ Was: Mac-unaware PageUp/PageDown,Viewpoint list, navigation keys?<o:p></o:p></p></div><p> </p><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Hi Doug, Hi all,<o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>After the latest discussions at the thread "Question VR Cafe + X3D", I am feeling free to explain the intentions behind the below cited proposal from last weekend (e-mail "Avatar Handling / non-standard movement strategies / input of key strokes").<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Regarding an avatar that rides a locomotive, I was considering two different approaches:<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>1) Human body avatar is moved by the "WALK" paradigm of X3D.<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>The locomotive contains a "ProximitySensor" and a "Viewpoint" as well as a "NavigationInfo", all of which are moving with the locomotive. Also a <Group> node is contained, which takes the avatar as child. The avatar contains a "Transform" node, whose "translation" and "orientation" are fed by the "ProximitySensor".<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>1.a) The model of the locomotive has got touchable controls ("faster", "power up", "whistle", ......), which are used to control the model.<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>2) As soon as the avatar is attached to the locomotive --> use key strokes to directly control the locomotive<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Thus the "combined" avatar "locomotive + human body avatar" becomes the "real" avatar, which takes the input from the keyboard (or from somewhere else)<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>I am not "riding" the locomotive, but I "am" the locomotive<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>I followed approach (1), but now, when it might come to having "real cockpit" and "virtual cockpit", I am not sure, whether approach (2) wouldn't be better.<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Just to have it nailed down on the mailing list :-)<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Kind regards,<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Christoph<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:4.8pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>  <o:p></o:p></span></p><div style='border:none;border-left:solid #C3D9E5 1.5pt;padding:0in 0in 0in 8.0pt;margin-left:7.5pt;margin-top:7.5pt;margin-right:3.75pt;margin-bottom:3.75pt'><div><div><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-top:4.8pt;margin-right:0in;margin-bottom:5.0pt'><div><div><div><div style='border:none;border-left:solid #C3D9E5 1.5pt;padding:0in 0in 0in 8.0pt;margin-left:7.5pt;margin-top:7.5pt;margin-right:3.75pt;margin-bottom:3.75pt'><div><div><div><div><p style='margin-bottom:0in;margin-bottom:.0001pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Sorry for writing so many e-mails for just one idea. Now I have seized the lunch break to summarize the suggestion, maybe it can explain the idea better:<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;margin-left:60.6pt;text-indent:-.25in;mso-list:l0 level1 lfo3'><![if !supportLists]><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'><span style='mso-list:Ignore'>1.<span style='font:7.0pt "Times New Roman"'>    </span></span></span><![endif]><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Is there anything in X3D that makes the following DRAFT proposal obsolete?<o:p></o:p></span></p><p class=MsoNormal style='mso-margin-top-alt:auto;margin-left:60.6pt;text-indent:-.25in;mso-list:l0 level1 lfo3'><![if !supportLists]><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'><span style='mso-list:Ignore'>2.<span style='font:7.0pt "Times New Roman"'>    </span></span></span><![endif]><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>DRAFT Proposal for simplified handling of keystrokes or other input of character streams via KeySensor and StringSensor.<br>a) Each <strong><span style='font-family:"Verdana",sans-serif'>X3D grouping node</span></strong> defines two additional fields<br><field accessType='inputOutput' name=<strong><span style='font-family:"Verdana",sans-serif'>'canHaveFocus' </span></strong>type='SFBool' value='false'/><br><field accessType='inputOutput' name=<strong><span style='font-family:"Verdana",sans-serif'>'isAvatar' </span></strong>type='SFBool' value='false'/><br>b) the behaviour is as follows:<br>b.1) <strong><span style='font-family:"Verdana",sans-serif'>canHaveFocus == false</span></strong>: well-known "old" behaviour, no change<br>b.2) <strong><span style='font-family:"Verdana",sans-serif'>canHaveFocus == true && isAvatar == false</span></strong>: the browser may select this group together with all static and dynamic children to get the "focus" by some means. Only one group and its children can have the focus at any time. Having the focus means all StringSensor nodes and KeySensor nodes contained in the group are enabled regardless of the value of their "enabled" field. The browser SHOULD graphically indicate, which geometry has got the focus, e.g. by highlighting or by drawing a 2-dimensional "frame" around the geometry.<br>b.3) <strong><span style='font-family:"Verdana",sans-serif'>canHaveFocus == true && isAvatar == true</span></strong>: same behaviour as with b.2), but the avatar gets the focus any time, when no other geometry has the focus, even, if the avatar is invisible currently.<o:p></o:p></span></p><div><p class=MsoNormal style='margin-left:24.6pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Have a nice day<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:24.6pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Christoph<o:p></o:p></span></p></div></div><div><div style='border:none;border-left:solid #C3D9E5 1.5pt;padding:0in 0in 0in 8.0pt;margin-left:7.5pt;margin-top:7.5pt;margin-right:3.75pt;margin-bottom:3.75pt'><div style='margin-bottom:7.5pt'><p class=MsoNormal style='margin-left:32.1pt'><b><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Gesendet:</span></b><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> Donnerstag, 17. Januar 2019 um 09:44 Uhr<br><b>Von:</b> "Christoph Valentin" <christoph.valentin@gmx.at><br><b>An:</b> "Christoph Valentin" <christoph.valentin@gmx.at>, "Leonard Daly" <Leonard.Daly@realism.com>, x3d-public@web3d.org<br><b>Betreff:</b> Re: [x3d-public] Mac-unaware PageUp/PageDown, Viewpoint list, navigation keys?<o:p></o:p></span></p></div><div><div><p class=MsoNormal style='margin-left:32.1pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Maybe its silly, but I thought: 1) I can *ride* a locomotive and * use* its controls or 2) I can *be* a locomotive<br><br>Like a Horse + Rider = a single entity<br>--<br>Diese Nachricht wurde von meinem Android Mobiltelefon mit GMX Mail gesendet.<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:32.1pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Am 17.01.19, 09:28, Christoph Valentin <christoph.valentin@gmx.at> schrieb: <o:p></o:p></span></p><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-top:4.8pt;margin-right:0in;margin-bottom:5.0pt'><div><p class=MsoNormal style='margin-left:36.9pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Plus a "special handling" for avatars, where the pilot avatar can have an "always on" focus to supersede Standard navigation by avatar specific movement Strategy..........<br>--<br>Diese Nachricht wurde von meinem Android Mobiltelefon mit GMX Mail gesendet.<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:36.9pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Am 17.01.19, 07:45, Christoph Valentin <christoph.valentin@gmx.at> schrieb: <o:p></o:p></span></p><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-top:4.8pt;margin-right:0in;margin-bottom:5.0pt'><div><p class=MsoNormal style='margin-left:41.7pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Each grouping node would need a new field:<br><br><field accessType='inputOutput' type='SFBool' name='canHaveFocus' value='false'/><br><br>and the rest was up to the browser.<br>--<br>Diese Nachricht wurde von meinem Android Mobiltelefon mit GMX Mail gesendet.<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:41.7pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Am 17.01.19, 07:25, Christoph Valentin <christoph.valentin@gmx.at> schrieb: <o:p></o:p></span></p><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-top:4.8pt;margin-right:0in;margin-bottom:5.0pt'><div><p class=MsoNormal style='margin-left:46.5pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>And what about a concept of "having the focus":<br><br>If a grouping node "had the focus", then all KeySensor and StringSensor nodes within this group would become "enabled".<br><br>KR<br>Christoph<br>--<br>Diese Nachricht wurde von meinem Android Mobiltelefon mit GMX Mail gesendet.<o:p></o:p></span></p></div><div><p class=MsoNormal style='margin-left:46.5pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Am 16.01.19, 23:22, Christoph Valentin <christoph.valentin@gmx.at> schrieb: <o:p></o:p></span></p><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-top:4.8pt;margin-right:0in;margin-bottom:5.0pt'><div><p class=MsoNormal style='margin-left:51.3pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>Maybe my opinion is not important, but I think these concrete hints which key to use for which navigation function should be completely avoided in X3D Spec.<br><br>Isn't it enough to have the abstract/virtual concepts of "indicating forward/backward/left/right/up/down", "fast/slow", "touch", "drag" by "some means that are up to the Browser"?<br><br>The Events that are created by the sensor nodes have to be specified well, on the other hand. <br><br>A different story is the Network Sensor, where the protocol should be specified to the bits. <br><br>Just my opinion and just Two Cent:-)<br>--<br>Diese Nachricht wurde von meinem Android Mobiltelefon mit GMX Mail gesendet.<o:p></o:p></span></p></div></blockquote><div><p class=MsoNormal style='margin-left:46.5pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'> <o:p></o:p></span></p></div></div></blockquote></div></blockquote></div></blockquote></div></div></div></div></div></div></div></div></div></div></div></blockquote></div></div></div></div><p class=MsoNormal style='mso-margin-top-alt:0in;margin-right:3.75pt;margin-bottom:3.75pt;margin-left:17.1pt'><span style='font-size:9.0pt;font-family:"Verdana",sans-serif'>_______________________________________________ x3d-public mailing list x3d-public@web3d.org http://web3d.org/mailman/listinfo/x3d-public_web3d.org<o:p></o:p></span></p></blockquote></div><p style='margin-left:4.8pt'> </p><p class=MsoNormal><o:p> </o:p></p></div></body></html>