[x3d-public] X3D meeting 9 May 2018 minutes: fieldOfView, C/C++/C# data bindings

Don Brutzman brutzman at nps.edu
Wed May 9 09:43:04 PDT 2018


Attendees: Vince Marchetti, Nicholas Polys, Dick Puk, Anita Havele, Don Brutzman.

On 5/8/2018 10:13 AM, Don Brutzman wrote:
> Agenda for X3D Working Group, 9 May 2018, 08-0930 pacific.
> 
> Web3D Teleconference Information
> http://www.web3d.org/member/teleconference-information
> 
> ================================================
> 1. *Web3D 2018 Conference*
> 
> Early registration deadline is Friday.  VR Hackathon registration (free) is also open.  Latest screenshot attached.
> 
>      https://web3d2018.web3d.org

Tutorial and program updates are pretty-darn wonderful and updated online.  We are eager to go!

> ================================================
> 2. *Summary of progress in other working groups*
> 
> http://www.web3d.org/working-groups
> 
> a. Humanoid Animation (HAnim) progress towards Draft International Specification (DIS), public review comments requested by 18 May 2018.  Weekly teleconference Wednesdays 1700-1830 pacific.
> 
> http://www.web3d.org/news-story/review-opportunity-humanoid-animation-hanim-v2-draft-international-specification-dis
> https://twitter.com/Web3DConsortium/status/993891298540118016
> 
> HAnim Video Competition - Submission Deadline: May 11, 2018
> Please send your submission to: competition-submissions at web3d.org.
> 
> H-Anim 3D Animated Music Video Competition​ 2018
> http://www.web3d.org/h-anim-3d-animated-music-video-competition%E2%80%8B-2018
> 
> b. Design Printing Scanning progress on STEP->X3D conversions, tackling Annotations.  Weekly teleconference Thursday 08-0900 pacific.

Vince reports that tomorrow's teleconference meeting will review liaison slides by Christophe Mouton for upcoming SC4 meeting in Beijing later in the month.

> c. Medical Working Group:  HL7 partnership activities, working on metadata and annotations.  Meetings every 2-4 weeks.
> 
> ================================================
> 3. *fieldOfView and screen size*
> 
> Series of interesting discussions on mailing list.  Looking to enter Mantis issues that describe issues and pros/cons tradeoffs, leading towards recommendations for X3D version .
> 
> a. OrthoViewpoint fieldOfView (thread)
>     http://web3d.org/pipermail/x3d-public_web3d.org/2018-May/008716.html
> 
> b. OrthoViewpoint fieldOfView - and display size
>     http://web3d.org/pipermail/x3d-public_web3d.org/2018-May/008722.html
> 
> c. Mantis Issue Tracker
>     http://www.web3d.org/member-only/mantis/view_all_bug_page.php

d. Wikipedia: Orthographic projection
    https://en.wikipedia.org/wiki/Orthographic_projection

e. Wikipedia: Graphical projection
    https://en.wikipedia.org/wiki/Graphical_projection

f. Wikipedia: 3D projection
    https://en.wikipedia.org/wiki/3D_projection

g. OpenGl glOrtho -  multiply the current matrix with an orthographic matrix
    https://www.khronos.org/registry/OpenGL-Refpages/gl2.1/xhtml/glOrtho.xml

h.X3D Abstract Specification, 23.4.5 OrthoViewpoint
    http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/navigation.html#OrthoViewpoint

========================================================================
23.4.5 OrthoViewpoint

OrthoViewpoint : X3DViewpointNode {
   SFBool     [in]     set_bind
   SFVec3f    [in,out] centerOfRotation  0 0 0         (-∞,∞)
   SFString   [in,out] description       ""
   MFFloat    [in,out] fieldOfView       -1, -1, 1, 1  (-∞,∞)
   SFBool     [in,out] jump              TRUE
   SFNode     [in,out] metadata          NULL          [X3DMetadataObject]
   SFRotation [in,out] orientation       0 0 1 0       [-1,1],(-∞,∞)
   SFVec3f    [in,out] position          0 0 10        (-∞,∞)
   SFBool     [in,out] retainUserOffsets FALSE
   SFTime     [out]    bindTime
   SFBool     [out]    isBound
}

The OrthoViewpoint node defines a viewpoint that provides an orthographic view of the scene. An orthographic view is one in which all projectors are parallel to the projector  from centerOfRotation to position.

The fieldOfView field specifies minimum and maximum extents of the view in units of the local coordinate system. A small field of view roughly corresponds to a telephoto lens; a large field of view roughly corresponds to a wide-angle lens. The minimum an maximum values in each direction of the field of view shall have the relationship minimum < maximum. The value of fieldOfView represents the minimum viewing extent in any direction axis perpendicular to the view.

A browser with a rectangular viewing projection has the following relationship:

     display width    (maximum_x - minimum_x)
     -------------- = -----------------------
     display height   (maximum_y - minimum_y)
========================================================================

Extensive discussion: someone needs to write this up in some detail, emphasizing prose for specification.

Words in specification need to describe the 4-tuple fieldOfView in more detail.  Interface doesn't say.  Equation is included for display width/height using min/max x/y. Apparent intended order is min_x min_y max_x max_y - but OpenGl is xmin xmax ymin ymax, or left right bottom top?  Definitely needs to be confirmed/added to spec.

We discussed scaling/zooming effects when changing values.  Better explanation likely needed - but what to say...  Noted that a view frustum exists, but the sides of the view frustum are parallel.  One might consider that it is mathematically consistent with a perspective projection with a look-at point at an infinite distance away.

Incorrect statement, should remove: "A small field of view roughly corresponds to a telephoto lens; a large field of view roughly corresponds to a wide-angle lens."

Having an off-center FOV can emphasize certain objects more than others, by shifting camera left/right/up/down and effectively provide non-uniform scaling.  Better description would help.

Dick noted that in early days of computer graphics, a number of systems only had Orthographic viewpoints because division to achieve perspective was computationally expensive.

Regarding 2-tuple or 4-tuple, definitely think 4-tuple is appropriate.  Given that this is strictly provided in OpenGl, it is not necessary to consider potential alignments with HTML/SVG/etc.

Am hoping to more strictly validate by making type SFVec4f but there was not agreement regarding these boundaries constituting a vector.  So the prose should say that "The fieldOfView array shall either have 4 values or else be empty, which reverts to default value."  Schematron rule can also be added for validation.

Vince volunteered to create and accept assignment for this issue.  Thanks!

> ================================================
> 4. *Language Bindings for C/C++/C# Programming*
> 
> Continued from past two weeks.  Implementer engagement invited.
> 
> We will continue scrutinizing the X3D C and C++ language bindings New Work Item Proposals (NWIPs) as outlined in prior working group meeting minutes.
> 
> In particular am hoping to discuss how to encourage engagement by various implementers of X3D/VRML using C, C++ and C#.
> 
> On 4/18/2018 9:24 AM, Don Brutzman wrote:
>> 2. At face value, each draft specification document for C/C++/C# looks quite thorough and well prepared, but important concerns remain.
>>
>> - Concern: one of the original contributors is no longer available to participate.
>> - Concern: there is no plan of action outlined and no list of direct participants.
>> - We could create a zip of each specification and request member review, asking for member commitment.
>> - Section edit problem: duplicate prose need
>> - Opportunity: several opportunities [for existing and new members to match X3D Unified Object Model progress being achieved by X3DJSONLD and X3DJSAIL implementations].
>>
>> Summary: this has every indication of potential success, but who is willing to work on implementing it?  If we had one or two more experts willing to work with Dr. Lee, that would be enough tip these forward to recommending NWIP submission.
>>
>> Our report to board:  we are close but don't have consensus to submit NWIP.  Member participation is essential.  Please help.
>>
>> Meanwhile the working group is happy to continue helping on whatever improvements are requested.

Much constructive strategic discussion.  Distribution limited to Web3D Consortium and X3D Working Group.

> Additions and questions welcome, plenty of progress to discuss.
> 
> Have fun with X3D!  8)

Next week's agenda: focus on all activities at Web3D 2018 Conference, and a look ahead at SIGGRAPH, to ensure that we are preparing fully.

Remember, early registration ends Friday!  It will be an amazing conference.

	https://web3d2018.web3d.org/registration

Thanks everyone for all participation and insights today.

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