<div dir="ltr">Thanks for the Background on DIS and links, I missed a few.<div>> 

<span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">Can you wait until then? </span></div><div><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">(I had hoped to reach v3.3 FULL_PROFILE to prove it can be done, not illusive goal -just 6 DIS nodes away from full profile- but ..) </span></div><div><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">Yes, or maybe I can go just a little further and prepare a few more questions / complaints / notes as seen from non-DIS-expert trying to implement, to share with your class. And yes would be great to work with your students on it if I'm available at the time. The great thing about DIS it should work with any tool that can join the exercise. </span></div><div><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">I'll prepare a .msi installer in the next few weeks. Or if any of your students can stomach C they are very welcome to try hacking freewrl.</span></div><div><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">-Doug</span></div><div><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline"><br></span></div><div><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline"><br></span></div><div><span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">PS I do have the simple transform part of espdu working in scenes like </span></div><div><span style="text-align:start;text-indent:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline"><div><span style="font-size:12.8px"><a href="http://dug9.users.sourceforge.net/web3d/tests/DIS/EspduTransformSenderReceiver.x3d">http://dug9.users.sourceforge.net/web3d/tests/DIS/EspduTransformSenderReceiver.x3d</a></span></div><div><span style="font-size:12.8px">(which white-screens for me in x3d-edit embedded xj3d in win10 and Ubuntu)</span></div><div><span style="font-size:12.8px">and tested wtih x3d-edit sender panel</span></div><div><span style="font-size:12.8px">and used the xmlpg to do a CGenerator.java to generate a flat-C .h/.c used in freewrl</span></div><div><span style="font-size:12.8px">x haven't done dead reckoning, geoCoords, collision, fire, detonation, create/remove, manager or radio,</span></div><div><span style="font-size:12.8px">(in large part because of personal confusion about how its supposed to work -never seen professional DIS simm- and no DIS-working xj3d to test hypotheses^ against, lack of specific examples for collision, fire, detonation, manager.)</span></div><div><br></div><div><span style="font-size:12.8px">...</span></div><div><span style="font-size:12.8px">^Hypotheses how geoCoords work for DIS nodes:</span></div><div><span style="font-size:12.8px">like GeoLocation, </span></div><div><span style="font-size:12.8px">Scene</span></div><div><span style="font-size:12.8px">.LCS (local coordinate system as described in precision section of geospatial: shared cartesian)</span></div><div><span style="font-size:12.8px">..(dis node with geoCoords)</span></div><div><span style="font-size:12.8px">... TCS - topocentric coordinate system aka LGS local geodetic system as described in GeoLocation</span></div><div><span style="font-size:12.8px">.... Transform part of espdu</span></div><div><span style="font-size:12.8px">..... children in entity coords</span></div><div><span style="font-size:12.8px">On Send from isWriter/owner, the translation and rotation are combined with TCS translation and rotation, converted to GC and sent as GC</span></div><div><span style="font-size:12.8px">On Receive, GC converted to TCS, TCS to LCS transform is updated, and translation, rotation part of Transform is set to default 000 0100</span></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">Hypothesis for how Manager node works:</span></div><div><span style="font-size:12.8px">- its an isReader, there's no simulation manager in web3d specs, no way to generate create/remove events</span></div><div><span style="font-size:12.8px">- when espdu gets create/remove pdus, it does nothing with them, and the scene needs to route/forward them to the Manager for creating/removing espdus</span></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-transform:none;white-space:normal;word-spacing:0px"><br></div></span></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Apr 6, 2018 at 4:48 PM, Don Brutzman <span dir="ltr"><<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Thanks for your interest and scrutiny Doug.<br>
<br>
Backgrounders:<br>
<br>
IEEE Distributed Interactive Simulation (DIS) protocol is a long-running networking standard used by many DoD systems for creating shared virtual environments, Live Virtual Constructive (LVC) hybrid simulations/exercises, etc.<br>
<br>
    <a href="https://en.wikipedia.org/wiki/Distributed_Interactive_Simulation" rel="noreferrer" target="_blank">https://en.wikipedia.org/wiki/<wbr>Distributed_Interactive_Simula<wbr>tion</a><br>
<br>
As it turns out, NPS has an extensive body of active effort in this arena.  We expect to be able to tackle this with partners sometime after Soft Launch this summer.  Current course work is testing and improving a number of Web-based examples using the OpenDIS library.<br>
<br>
Integration with X3D is relatively easy.  We have a DIS-networked EspduTransform node which can be the scene-graph parent of any moving entity.<br>
<br>
X3D-Edit has pretty good support including sender-receiver-tester-recorde<wbr>r-player tools.  It works, we ran it many times in class last quarter, tested with WireShark, etc. etc.<br>
<br>
Further references for people who want to read ahead:<br>
<br>
a. IITSEC 2017 slideset, DIS 101<br>
   <a href="https://gitlab.nps.edu/Savage/NetworkedGraphicsMV3500/raw/master/presentations/IITSEC2018_DIS_Tutorial.pptx" rel="noreferrer" target="_blank">https://gitlab.nps.edu/<wbr>Savage/NetworkedGraphicsMV3500<wbr>/raw/master/presentations/IITS<wbr>EC2018_DIS_Tutorial.pptx</a><br>
<br>
b. X3D and Distributed Interactive Simulation (DIS)<br>
   <a href="http://x3dgraphics.com/slidesets/X3dForAdvancedModeling/DistributedInteractiveSimulation.pdf" rel="noreferrer" target="_blank">http://x3dgraphics.com/slides<wbr>ets/X3dForAdvancedModeling/Dis<wbr>tributedInteractiveSimulation.<wbr>pdf</a><br>
<br>
c. X3D v3.3 Distributed interactive simulation (DIS) component<br>
   <a href="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/dis.html" rel="noreferrer" target="_blank">http://www.web3d.org/document<wbr>s/specifications/19775-1/V3.3/<wbr>Part01/components/dis.html</a><br>
  d. IEEE Standards Maintained by SISO SAC<br>
   <a href="https://www.sisostds.org/ProductsPublications/Standards/IEEEStandards.aspx" rel="noreferrer" target="_blank">https://www.sisostds.org/Prod<wbr>uctsPublications/Standards/<wbr>IEEEStandards.aspx</a><br>
<br>
The protocol is quite mature, evolving since early 1990s.  Multiple commercial players.<br>
<br>
Our team is "getting back up on the horse" and gradually rejuvenating the OpenDIS implementation.  It has code generators for API binding in multiple programming languages (Java JavaScript C++ C# others).  We are working through examples and fixing them in a pair of courses, 3-months into a 12-month cycle.  Initial bindings existed in X3DOM at some point, not sure of their current status.<br>
<br>
You are asking good questions, n.b. that good answers exist too.  Too bad others didn't follow through "back in the day" but certainly happy that you are pursuing this.  IMO it has huge potential value, especially as we make progress on using Javascript inside HTML to bridge to web services or other connections rather than UDP multicast.<br>
<br>
I expect that sometime after Web3D 2018 Conference we will have our internal work ready for broader sharing.  Can you wait until then?  We will be keen to help and test together - sounds like a great student team project actually.  Topmost priorities right now include HAnim spec and Motion node, other OpenDIS work is slowly progressing and will help.<br>
<br>
Step by step, again thanks...<br>
<br>
v/r Don<div><div class="h5"><br>
<br>
On 4/6/2018 11:33 AM, GPU Group wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<a href="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/dis.html" rel="noreferrer" target="_blank">http://www.web3d.org/documents<wbr>/specifications/19775-1/V3.3/<wbr>Part01/components/dis.html</a><br>
Q1. should DIS be dropped from future specs<br>
Q2. is there a more web3d-like way to do something like it?<br>
-Doug<br>
<br>
<br>
I can see why this isn't widely implemented.<br>
x half-baked - looks like student papers - just a prototype or proof of concept<br>
x only one implents it -xj3d-, and I have yet to see it run with DIS nodes (it whitescreens on me when run from x3d-edit), so difficult to reverse engineer fuzzy concepts<br>
x the flavor of some nodes like radio transmitter, receiver, signal seems too specific/high level compared to the rest of web3d which is more about general capabilites that can be combined flexibly in many permutations<br>
x the DIS specs are very 1990s like<br>
x DIS specs are big<br>
<br>
But it also seems to fill some gaps versus EAI:<br>
* node level synchronization (versus EAI access via rootnode > tree)<br>
**- so easier to bury inside proto bodies<br>
* wireline protocol<br>
** so compatible among any browsers or utilities that implement the protocol<br>
* no server -peer-to-peer, nothing bad happens if peers join or leave<br>
<br>
And it has problems:<br>
- using broadcast udp means no ACK / resend if packet lost<br>
- better at regular / heartbeat updates<br>
-- if one is dropped, just wait a few seconds<br>
-- if peer joins late, just wait a few seconds<br>
x, poor at one-time state intializations / transfers<br>
xx if packet lost, DIS spec full of bandaids for this issue<br>
xx if peer joins late, awkward<br>
</blockquote>
<br>
</div></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
______________________________<wbr>_________________<br>
x3d-public mailing list<br>
<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a><br>
<a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" rel="noreferrer" target="_blank">http://web3d.org/mailman/listi<wbr>nfo/x3d-public_web3d.org</a><br>
</blockquote>
<br>
all the best, Don<span class="HOEnZb"><font color="#888888"><br>
-- <br>
Don Brutzman  Naval Postgraduate School, Code USW/Br       <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a><br>
Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149<br>
X3D graphics, virtual worlds, navy robotics <a href="http://faculty.nps.edu/brutzman" rel="noreferrer" target="_blank">http://faculty.nps.edu/brutzma<wbr>n</a><br>
<br>
</font></span></blockquote></div><br></div>