[x3d-public] Sphere subdivision in to X3DV4 standard

Don Brutzman brutzman at nps.edu
Tue Jun 2 10:03:08 PDT 2020


Dick and I discussed this further today and came up with an alternative approach to Mantis 1280.

=====================================
The problem with the preceding two approaches is that they do not cover all use cases. Users may get extremely close to the surface of geometry and only the browser can determine what level of quality is sufficient.

Indeed the names and fields for geometry primitive nodes imply mathematical representations rather than strictly defined polygonal representations.

Some might consider this similar to relationship between vector vs. pixel definitions for graphical presentation.

For Cone Cylinder and Sphere, as well as corresponding Geometry2D nodes, why not a qualitative sentence like:

"Displayed geometry shall have sufficient tessellation quality that surface and silhouette edges appear smooth, including when textures are applied."
=====================================

Discussion and improvements/disagreements please, resolution Friday.


On 5/31/2020 8:54 AM, Don Brutzman wrote:
> 1, Well said Joe, also thanks to John and Mufti for sharing.
> 
> Following that sense of things, I refined the warnings/hints for geometry fields in X3D Tooltips.  For example:
> 
> ==================================
> * X3D 4.0 Tooltips, Sphere, radius
>    https://www.web3d.org/x3d/content/X3dTooltips.html#Sphere.radius
> 
> [radius accessType initializeOnly, type SFFloat CDATA "1"] (0,+∞)
> 
> Size in meters.
> 
> Warning: simple-geometry dimensions are initializeOnly and cannot be changed after initial creation, avoiding the need for potentially expensive tessellation at run time.
> 
> Hint: for size animation, modify the scale of a parent/ancestor Transform node instead.
> ==================================
> 
> Questions/improvements/suggestions always welcome.  In some sense this file is a kind of context-sensitive FAQ for X3D scene graph.
> 
> ----
> 
> 2. Meanwhile, there is a relevant Mantis issue pending for X3D 4.0:
> 
> * Mantis 1280: Add quality parameter for Geometry3D primitives
>    https://www.web3d.org/member-only/mantis/view.php?id=1280
> 
> PDF attached for those without direct access.
> 
> Previous thread:
> 
> * [x3d-public] Add quality parameter to Geometry3D primitives
>    https://web3d.org/pipermail/x3d-public_web3d.org/2020-February/011748.html
> 
> Defining something like "subdivision" field as mentioned there does not pass common-sense test.  Any mechanism must be sensible to new authors, since primitive nodes are typically what they learn first.
> 
> Of note is that browsers are welcome to substitute any geometry they wish at run time, including parametric surfaces (as long as geometric results are a Sphere with correct radius, for example).
> 
> Suggested approach, if included:
> ================================
> [initializeOnly] SFString primitiveQuality "MEDIUM" ["LOW", "MEDIUM", "HIGH"]
> 
> The /primitiveQuality/ field is an authoring hint regarding tessellation resolution expected for this geometry.  Browser implementations may vary.
> ================================
> 
> All feedback welcome.  Will put this on next Friday's agenda for X3D Working Group resolution, either reject or accept with modifications.
> 
> 
> On 5/30/2020 7:33 PM, Joseph D Williams wrote:
>>   * … during models lifetime
>>
>> So much is true, please notice the access type of the field.
>>
>> If it is initialize only, then it is set when the node is initialized or replaced.
>>
>> This has been used as a clue that the browser has to completely redraw the node if the field is changed.
>>
>> Of course the sphere’s shape can be altered by xyz scaling in the parent transform so you can change the shape to most anything without a hole but not the initialized radius in parent space or the number of points in the shape without redrawing it.
>>
>> Thanks,
>>
>> Joe
>>
>> *From: *John Carlson <mailto:yottzumm at gmail.com>
>> *Sent: *Saturday, May 30, 2020 3:47 PM
>> *To: *J. Scheurich <mailto:mufti11 at web.de>
>> *Cc: *X3D Graphics public mailing list <mailto:x3d-public at web3d.org>
>> *Subject: *Re: [x3d-public] Sphere subdivision in to X3DV4 standard
>>
>> Surely you can apply transforms such that the radius changes?
>>
>>> But according to the X3D standards, a sphere may not change its single
>>> parameter (radius)
>>> during models lifetime.
> 
> 
> all the best, Don

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