<div dir="ltr"><a href="http://WEB3D.ORG">WEB3D.ORG</a> SPEC COMMENT RULES APPLY, PUBLIC CHECKBOX CHECKED >>><div>near / far clipping planes > geo tearing ></div><div>in freewrl I detect geo range automatically and iterate over up to 3 depth slices </div><div>default: .1 21000</div><div>geo - 3 slice:</div><div>.1 10000</div><div>9999 - 10,000,000</div><div>9,999,999 10,000,000,000</div><div>or something like that.</div><div>By iterate I mean there's a loop, from 1 to n slices.</div><div>Before that loop I clear screen</div><div>And on each depth slice I clear depth buffer, and re-draw the whole scene with a different depth slice / range<br></div><div>- working from far slice to near slice</div><div>So drawing can be slower by up to 3 times(although not quite - routing/node compiling done once per frame). But no tearing from lack of depth buffer depth. (might have tearing from float coordinate precision issues).</div><div>Its debatable - others say if you're careful one 24bit depth buffer should be sufficient. Myself - I'm too impatient to try tuning or on-the-fly direction-based range adjustments as the avatar is moving. </div><div>-Doug</div><div><< WEB3D SPEC COMMENT RULES APPLY<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Fri, Jul 20, 2018 at 11:07 AM, 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">Attendees: John Carlson, Anita Havele, Vince Marchetti, Nicholas Polys, Dick Puk, Don Brutzman<br>
<br>
==============================<wbr>===<br>
<br>
1. *Near and far clipping planes*. Initial discussion of a new possibility.<br>
<br>
Interesting review of OrthoViewpoint by Design Printing and Scanning Working Group in reviewing/resolving:<br>
<br>
        Clarify ambiguous functional specification for OrthoViewpoint<br>
        <a href="http://www.web3d.org/member-only/mantis/view.php?id=1238" rel="noreferrer" target="_blank">http://www.web3d.org/member-on<wbr>ly/mantis/view.php?id=1238</a><br>
<br>
Relevant reference from OpenGL:<br>
<br>
        glOrtho — multiply the current matrix with an orthographic matrix<br>
        <a href="https://www.khronos.org/registry/OpenGL-Refpages/es1.1/xhtml/glOrtho.xml" rel="noreferrer" target="_blank">https://www.khronos.org/regist<wbr>ry/OpenGL-Refpages/es1.1/<wbr>xhtml/glOrtho.xml</a><br>
<br>
A long-term point of awkwardness in X3D (dating all the way back to VRML97) is author setting of near and far clipping planes.  These fields are exposed via NavigationInfo, which is bound independently from Viewpoint/OrthoViewpoint/GeoVi<wbr>ewpoint.  Thus it is difficult to "get" current NavInfo to modify values.  Further, the near clipping plane is first value of a triple, making any modification require elaborate node-discovery and then elabobrate scripting.<br>
<br>
        X3D Tooltips: NavigationInfo avatarSize,visibilityLimit<br>
        <a href="http://www.web3d.org/x3d/tooltips/X3dTooltips.html#NavigationInfo.avatarSize" rel="noreferrer" target="_blank">http://www.web3d.org/x3d/toolt<wbr>ips/X3dTooltips.html#Navigatio<wbr>nInfo.avatarSize</a><br>
        <a href="http://www.web3d.org/x3d/tooltips/X3dTooltips.html#NavigationInfo.visibilityLimit" rel="noreferrer" target="_blank">http://www.web3d.org/x3d/toolt<wbr>ips/X3dTooltips.html#Navigatio<wbr>nInfo.visibilityLimit</a><br>
<br>
Here is a thought: if we add something like<br>
<br>
X3DViewpointNode : X3DBindableNode {<br>
<br>
   SFVec3f [in,out] nearClippingPlane -1 with range -1, [0,infinity]<br>
   SFVec3f [in,out]  farClippingPlane -1 with range -1, [0,infinity]<br>
}<br>
<a href="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/navigation.html#X3DViewpointNode" rel="noreferrer" target="_blank">http://www.web3d.org/documents<wbr>/specifications/19775-1/V3.3/<wbr>Part01/components/navigation.<wbr>html#X3DViewpointNode</a><br>
<br>
then authors could easily/optionally provide context-sensitive clipping as part of any viewpoint.  Backwards compatibility not a problem: illegal sentinel value of -1 for range from viewer indicates that current NavigationInfo settings prevail.<br>
<br>
This is very important in geospatial models with terrain, where anti-aliasing is a common problem.  From prior tooltips:<br>
<br>
        Warning: important design thumbrule is to keep (visibilityLimit / avatarSize.CollisionDistance) < 10,000<br>
        to avoid aliasing artifacts (i.e. polygon "tearing").<br>
<br>
Thanks for discussion today, comments welcome.  Expect a future Mantis issue here for further consideration.<br>
<br>
==============================<wbr>===<br>
<br>
2. *Python language binding*. Thanks to John Carlson for his extensive work and for joining us today.<br>
<br>
a. First we created a new wiki page similar to<br>
<br>
        X3D JSON Encoding<br>
<br>
If you go to the top of the following page<br>
<br>
        Web3D Public Wiki<br>
        <a href="http://www.web3d.org/wiki/index.php/Main_Page" rel="noreferrer" target="_blank">http://www.web3d.org/wiki/inde<wbr>x.php/Main_Page</a><br>
<br>
then scroll to the very bottom, you see a link<br>
<br>
        Create New Page<br>
        <a href="http://www.web3d.org/wiki/index.php/Create_New_Page" rel="noreferrer" target="_blank">http://www.web3d.org/wiki/inde<wbr>x.php/Create_New_Page</a><br>
<br>
which says<br>
==========<br>
Do a search for an article page that doesn't exist.<br>
<br>
Click on the "this exact title" link at the top of the page.<br>
<br>
You will see a big white space to type in it.<br>
<br>
Click the "Save page" button... and voila. You've created a new article page!<br>
==========<br>
<br>
So we did.  There is now a new page<br>
<br>
        X3D Python Language Binding<br>
        <a href="http://www.web3d.org/wiki/index.php/X3D_Python_Language_Binding" rel="noreferrer" target="_blank">http://www.web3d.org/wiki/inde<wbr>x.php/X3D_Python_Language_Bind<wbr>ing</a><br>
<br>
Initial contents that our discussion assembled are an impressive first pass:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Motivation<br>
<br>
Why:<br>
<br>
    multiple language bindings provide equivalent implementations of X3D Scene Access Interface (SAI) Specification, which in turn accesses the X3D Architecture Specification<br>
    Python is widely used, so many tools and applications might then easily create/use/produce X3D<br>
    We are not afraid of programming languages that depend on whitespace!<br>
<br>
The X3D Specification Relationships diagram shows how the various programming-language bindings and file encodings are related.<br>
Resources<br>
<br>
    Python script interfaces<br>
        H3D<br>
        Blender has an independent interface<br>
        NIH has written a series of Python scripts that exercise Blender<br>
        pyOCC python interface to Open Cascasde geometry kernel<br>
<br>
John Carlson has produced<br>
<br>
    <a href="https://github.com/coderextreme/pythonSAI" rel="noreferrer" target="_blank">https://github.com/coderextrem<wbr>e/pythonSAI</a><br>
<br>
Deliverables<br>
<br>
    Draft 19777-6 specification added in GitHub<br>
        Follow examples of other X3D language bindings<br>
        Reach proof-of-capability initial draft<br>
        New Work Item Proposal (NWIP) by Web3D Consortium for ISO<br>
<br>
    Example scenes<br>
        Test scenes to demonstrate design patterns<br>
<br>
    Implementations<br>
        Conversion stylesheet, X3dToPython.xslt<br>
        PyJnius cross-compilation conversion of X3DJSAIL java classes<br>
        Possibly another library, X3DPSAIL or X3DPYSAIL perhaps?<br>
<br>
    Validation by compilation<br>
        are special tests needed, written in Python, to test program validity?<br>
        Compatible with X3D Unified Object Model (X3DUOM)<br>
<br>
    Plan of Action Milestones (POAM)<br>
<br>
TBD<br>
<br>
To Be Determined:<br>
<br>
    Is it possible to run Python scripts in a Web browser?<br>
    Python support for DOM?<br>
    Masaki Aono produced some speculative code a few years ago<br>
</blockquote>
<br>
(Lots) more to follow.  We will be having fun with X3D Python!<br>
<br>
==============================<wbr>===<br>
<br>
3. *Medical*<br>
<br>
DICOM discussion on medical mailing list.  Still working to get X3D added with STL.<br>
<br>
Vince and Nicholas and Anita are tracking/leading this.  Dialog is on the medical working group list.<br>
<br>
Working group leadership opportunities are available for Web3D Consortium members.<br>
<br>
        <a href="http://www.web3d.org/working-groups/medical" rel="noreferrer" target="_blank">http://www.web3d.org/working-g<wbr>roups/medical</a><br>
<br>
Many crucial partnerships emerging, including HL7 and coordination with HAnim for medical records.<br>
<br>
==============================<wbr>===<br>
<br>
4.ISO Meeting Preparations.<br>
<br>
Dick and Don will be attending annual meeting of our ISO Standards Committee (SC) 14 in Toulouse France, 6-10 August 2018.<br>
<br>
a. HAnim Draft International Specification (DIS) parts 1 and 2, including Motion Animation.<br>
b.X3D topics include annual summary, recent NWIPs for C C++ C#, planned work for the coming year in X3Dv4, JSON Python and Java.<br>
c. Collaboration of Design Printing Scanning Working Group in SC4 STEP with SC24 in Joint Working Group on CAD Presentation.<br>
d. InterestingISO efforts for 3D Printing and Scanning interoperability, Smart Cities.<br>
e. Review of Web3D Consortium specification process and Class A Liaison relationship with ISO.<br>
<br>
==============================<wbr>==<br>
<br>
5. SIGGRAPH Preparations.<br>
<br>
Anita Nicholas and Don will be attending SIGGRAPH in Vancouver Canada, 12-16 August.<br>
<br>
<a href="http://www.web3d.org/event/siggraph-2018" rel="noreferrer" target="_blank">http://www.web3d.org/event/sig<wbr>graph-2018</a><br>
<br>
We will have several Birds of a Feather (BoF) sessions.<br>
<a href="https://s2018.siggraph.org/conference/conference-overview/birds-of-a-feather" rel="noreferrer" target="_blank">https://s2018.siggraph.org/con<wbr>ference/conference-overview/<wbr>birds-of-a-feather</a><br>
<br>
* ACM SIGGRAPH Cartographic Visualization (Carto) Birds of a Feather<br>
  (Polys 3D Blacksburg Urban Planning, Brutzman SPIDERS3D)<br>
  Monday, 13 August 2018, 12pm - 1:30pm<br>
  ACM SIGGRAPH Theater, West Building, Room 102, Vancouver Convention Centre<br>
<br>
* Web3D Korea Chapter Standardization Meeting<br>
  Monday, 13 August 2018, 3pm - 5pm<br>
  Gallery Board Room, Pan Pacific Hotel<br>
<br>
* Design Printing and Scanning: Web3D Makers Making More!<br>
  Wednesday, 15 August 2018, 11am - 12:30pm<br>
  West Building, Room 116-117, Vancouver Convention Centre<br>
<br>
* WebVR Evolution for a Larger Web<br>
  Wednesday, 15 August 201812:30pm - 2pm<br>
  West Building, Room 116-117, Vancouver Convention Centre<br>
<br>
* Immersive Media BOF (Nicholas presenting multiple VT applications)<br>
  Wednesday, 15 August 2018, 11am - 12pm<br>
  East Building, Room 12, Vancouver Convention Centre<br>
<br>
==============================<wbr>==<br>
<br>
6. Meeting plans.<br>
<br>
Monday 23 July: Communications Team updating public messaging.<br>
<br>
Friday 27 July: second pass on Python language binding, technical issues review.<br>
<br>
Friday 3 August: no meeting (Don and Dick en route).<br>
<br>
Friday 10 August: no meeting (ISO meeting conclusion).<br>
<br>
Friday 17 August: post-SIGGRAPH initial discussion, list of new technical issues from conference.<br>
<br>
As ever, member teleconference information is at<br>
<br>
        Web3D Teleconference Information<br>
        <a href="http://www.web3d.org/member/teleconference-information" rel="noreferrer" target="_blank">http://www.web3d.org/member/te<wbr>leconference-information</a><br>
<br>
If someone needs to join as an invited expert for some call(s), please just ask to get the connection information.<br>
<br>
If you want to join Web3D Consortium and support these important efforts, please do.  You can have excellent influence in support of your interests.<br>
<br>
        Join the Web3D Consortium<br>
        <a href="http://www.web3d.org/join" rel="noreferrer" target="_blank">http://www.web3d.org/join</a><br>
<br>
Comments and feedback are always welcome, this is how we all progress together.<br>
<br>
Thanks everyone for another superb meeting today.  8)<br>
<br>
Have fun with X3D!<br>
<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>
<br>
______________________________<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>
</font></span></blockquote></div><br></div>