[x3d-public] [x3d] X3D Working Group minutes 16 AUG2019:PointProperties/PointSet, IIIF 3D, glTF, ISO preps

Joseph D Williams joedwil at earthlink.net
Sat Aug 17 19:24:40 PDT 2019


Wanting to understand this better, I happened to run across an obj and an mtl combination maybe output by Blender. I don’t remember where I got this, but In win10, I click the obj file, it finds the mtl file and displays the artwork as shown in attached ms 3d builder window. 
Well, this is fairly amazing so sure, I think of how to use this in x3d. After all, the data for obj and x3d must be mostly the same to get the thing drawn in a way that for sure it looks like x3d could do that.

I look at the obj file and by luck it is orderly readable text, and sure enough, it is a list of vertices in a common form: 

# Blender v2.78 (sub 0) OBJ File: 'clit_v2_g.blend'
# www.blender.org
mtllib clit_v2_g.mtl
o corpsetracines_clitetracines

it has some ‘v’ list of values, 3 cvalues per line, presumed to be points? 
v 17.010965 1.358307 1.091915
v 17.793938 1.381468 1.885138
v 16.755951 1.534621 1.140289
v 16.226891 1.328808 0.319888
v 17.283596 1.206339 1.040639
…
Hopefully the same number of ‘vn’ items, maybe normals? 
vn -0.4122 -0.7982 0.4393
vn -0.3519 -0.8569 0.3767
vn -0.3624 -0.8545 0.3720
vn -0.4230 -0.7962 0.4326
… 
An ‘s’, maybe how many sides?
s 1
…
Lists of ‘f’ items which seem to advance in some cycle. Maybe how to connect the points to make a face, given by the index in order of appearance of ‘v’ items in the file? 
f 1//1 5//2 6//3 2//4
f 2//4 6//3 9669//5 9670//6
f 5//2 9679//7 9680//8 6//3
f 6//3 9680//8 16087//9 9669//5
f 1//1 2//4 7//10 3//11
… 
f 9098//16230 7255//17316 15790//16233
f 9101//16237 9103//16242 7255//17316
f 9103//16242 15790//16233 7255//17316
f 9101//16237 7255//17316 9104//16238
f 9104//16238 7255//17316 15693//15972

Then there must be two of whatever because next there is another named set of ‘v’ and ‘vn’ and ‘f’ items. Nice to see this in text form, I might usually see it a binary compressed form, not human readable at all, or was it ever actually intended to be.

So, from the obj file it looks like we may have two shapes, defined by points, normal, and some only to be guessed at documentation for how to connect the points to make faces. But it is clear that each point has a coordinate and an index and a normal. 
The main question would be should x3d just go ahead and accept this obj, or have the user run it through a style conversion to make the field data conform to some kind of x3d geometry names and data types? 

The obj file to too big 1.5MB zipped to send by list mail. 
Next to look at the mtl file.

Thanks, 
Joe

From: Joseph D Williams
Sent: Friday, August 16, 2019 7:23 PM
To: Michalis Kamburelis; Brutzman, Donald (Don) (CIV)
Cc: X3D Graphics public mailing list; X3D Graphics Working Group
Subject: Re: [x3d-public] [x3d] X3D Working Group minutes 16 AUG2019:PointProperties/PointSet, IIIF 3D, glTF, ISO preps

➢ - glTF is more efficient to deliver to GPU.

Hi Michalis,
Please let’s more closely compare the data structures in gltf and existing x3d nodes. Since the gltf is likely to transport many of the same fields of data as defined in x3d, it seems reasonable to allow the x3d author to specify what parts of what gltf structures the author wishes to import for use in some x3d field. 
For example I think we found looking at animation examples showed that the typical gltf data represented one frame of some result of some computation involving some number of hierarchal nodes that provided data to the animation computations. 
Relative to realtime x3d, I think some gltf data is packaged for designs to be delivered at some known target frame rate, with new predefined data delivered for each frame, rather than live computation. Any algorithm used to generate the frame data is unknown but frame data is likely result of interpolator and other motion generation techniques set at authortime, aiming at some expected delivery frame rate. 

So, if I have some access to some gltf structures that I want to use in my x3d, then I should be able to just name a gltf asset and somehow tell the authortime which parts of a gltf file are used by runtime. 
The gltf asset is just that to x3d, it is just some structured and maybe highly processed data that might be able to be used in an x3d scene, if you know enough about the content.

Maybe the animation example is up for grabs, but what if I want to use some geometry that is some or all of the information stored in in one or more gltf files, or even collada maybe. Then, for this what should hopefully be a simple example, then I want to have a geometry node that looks simple, so if the gltf contained a set of triangles, or lines or points, maybe some coord, index, colors, etc, then instead of listing all the info as text, I just include a direction to the gltf.filename.dataname that I want to use for some fields of one of the X3DGeometryNode forms, for example. Maybe then the authortime can compose the data into what the target runtime expects for content. 
 
Thanks for all your work on this,
Joe


From: Michalis Kamburelis
Sent: Friday, August 16, 2019 11:09 AM
To: Brutzman, Donald (Don) (CIV)
Cc: X3D Graphics public mailing list; X3D Graphics Working Group
Subject: Re: [x3d-public] [x3d] X3D Working Group minutes 16 AUG 2019:PointProperties/PointSet, IIIF 3D, glTF, ISO preps

Some time ago I also wrote personal "comparison X3D vs glTF". It
contains some biased (from my point of view, i.e. developer of game
engine) notes. Attaching it as txt file, in case you find it useful.

My personal conclusion from the thoughts in this document was

"""I want to support glTF format in Castle Game Engine as first-class
citizen (all features, full support), because it's a great 3D model
format with bright future. But I also want to keep using X3D nodes to
express 100% of  the scene graph in CGE, because X3D defines really
good (well-thought and documented, in most cases) and rich (in
features) scene graph. And where X3D scene graph is lacking some
feature, I can easily fix it.
"""

I am working towards this goal since ~year within CGE :) Some results
include glTF support in CGE and view3dscene (not full yet, but
in-progress). And all my thoughts about PBR :)

Regards,
Michalis

Brutzman, Donald (Don) (CIV) <brutzman at nps.edu> wrote:

>
> Attendees: Anita Havele, Vince Marchetti, Nicholas Polys, Dick Puk, Don Brutzman.
> Last-minute regrets/reschedule: Michalis Kamburelis.
>
> Last week's minutes:
>
>         [x3d-public] X3D meeting minutes 9 AUG 2019
>         http://web3d.org/pipermail/x3d-public_web3d.org/2019-August/011188.html
>
> ====================================================
>
> 1. *Topics*
>
> We are looking to discuss the following items today:
>
> - PointProperties signature, Mantis 1252
>    http://www.web3d.org/member-only/mantis/view.php?id=1252
>
> - PointSet containing Normal node
>
> - Upcoming ISO Standards Committee (SC) 24 meeting in Takamatsu Japan
> -- specification update strategies
> -- HAnim 2 additional parts for human organs
>
> Deferred to next Wednesday 21 AUG, 08-1000 pacific:
>
>         Michalis Kamburelis, glTF, Physically Based Rendering (PBR) and Advanced Lighting Model.
>
>         [x3d-public] My proposal of changes to X3D to enable PBR and other material improvements
>         http://web3d.org/pipermail/x3d-public_web3d.org/2019-May/010864.html
>
> ----
>
> 2.  *IIIF 3D Community Group*
>
> Vince Marchetti attended a meeting of IIIF 3D Community Group
>         https://iiif.io/community/groups/3d
>
> "A IIIF 3D community group provides an opportunity for institutions interested in interoperability to coordinate strategies and facilitate conversations about open standards that support 3D use cases. Many of the desired operations and interactions with 3D data are similar to the 2D and A/V use cases of IIIF for sharing images and annotation, and organizations are increasingly looking to integrate exhibits, displays, and comparisons of 3D data with other file types.
> We welcome participation in the IIIF 3D community group by anyone interested in exploring the prospects and promise of 3D data interoperability on the web."
>
> Vince's reactions and take-aways can be found at
>
>         [heritage] Teleconference with IIIF 3D Community Group
>         http://web3d.org/mailman/private/heritage_web3d.org/2019-August/000098.html
>
> As practitioners with a special focus on heritage issues, he thinks they might be natural partners and a community who can use X3D model publishing capabilities.  He is on the agenda for their next meeting 12 SEP to describe our many related activities.
>
> ----
>
> 3. *PointProperties signature: attenuation*
>
>         Mantis 1252
>         http://www.web3d.org/member-only/mantis/view.php?id=1252
>
> We had an interesting discussion about tradeoffs between backwards compatibility and consistency.
>
> We decided to change the signature of PointProperties attenuation to SFVec3f, matching X3DLightingNode.
>
> Details at comment 2460
>         https://www.web3d.org/member-only/mantis/view.php?id=1252#c2460
>
> As a result the prose needs to be adjusted a bit.  At that point Dick and I will enter in draft X3Dv4 spec, hopefully next Wednesday on our weekly specification editors call.
>
> ----
>
> 4. *PointSet signature: Normal*
>
> Useful discussion of issues.  Have added to Mantis.  Nicholas has offered to lead on this one, VT has relevant work in progress.
>
>         0001261: PointSet field for Normal node
>         https://www.web3d.org/member-only/mantis/view.php?id=1261
>
> Description
> Document use cases and then decide whether to include Normal node as a contained node of PointSet (similar to FaceSet and related nodes).
> Additional Information
> - Many scanners provide normal information when scanning points.
> - Mesh construction algorithms sometimes utilize normal information.
> - Normal information can be useful as part of X3D data structure.
> - Meshlab can include normal information in outputs (perhaps inputs)
> - A point set might be used to derive a mesh, or come from a mesh, so a scene should be able to include this information in a model if it is appropriate.
>
> Need to get clear on terminology, don't want to confound "angle of incidence" or related terms that are from the perspective of sensor. Normals (perpendicular vectors) are from the perspective of the geometric shape.
>
> Simply applying existing design patterns for X3DNormalNode to PointSet will be most implementable, if possible. The application context may vary somewhat from model to model - we can describe some of that - but hopefully the X3D scene graph representations.
>
> Further information on Normal
> * https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#Normals
> * https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#Normal
> * https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#X3DNormalNode
> * https://www.web3d.org/x3d/tooltips/X3dTooltips.html#Normal
>
> Lots of related information can be found via search, e.g.
> https://www.google.com/search?q=meshlab+normals+on+point+clouds
>
> Also needed: test content and 1-2 test scenes for conformance.
>
> ----
>
> 5. Future issues for scanning:
>
> - whether a Scanning Profile (or 3D Printing and Scanning Profile) is needed, likely oriented towards hardware and use cases.  Don will take this for action.
>
> - whether anything needs to be said about input/output operations.
>
> ----
>
> 6. *glTF X3D Features Comparison*
>
> * Attachment [3]: glTF X3D Features Comparison (3 NOV 2017)
>    https://www.web3d.org/sites/default/files/page/X3D%20Version%204%20Strategy/glTfX3dFeaturesComparison.pdf
>
> source at
>    https://docs.google.com/spreadsheets/d/12ebxqfQoFPuNhaz8wZkNE6G-w_bqt98iy6p5F9IazVM/edit#gid=0
>
> * IEEE 3D Body Processing Group comparison chart has additional formats.  Vince is tracking that activity.
>
> - Are these entries still up to date?  glTF has continued to evolve since November 2017.
>
> - We need to add a column for X3Dv4.
>
> We agreed to work towards an update to our table for expected X3Dv4 support over the next month.  This is also timely as we review our glTF and Physically Based Rendering (PBR) plans with Dr. Kamburelis.
>
> ----
>
> 7. *ISO SC24 meeting*
>
> Dick and Don are carrying forward much progress to report to the upcoming ISO Standards Committee (SC) 24 meeting in Takamatsu Japan.
> -- specification update strategies
> -- HAnim 2 additional parts for human organs
>
> Several items are not being shared satisfactorily to enable Web3D Consortium activity:
> - Mixed Augmented Reality (MAR) progress is not yet workable.
> - Software for C, C++, C# bindings shared as open source or other work can't continue.
>
> There is a LOT of development work going by the Web3D Korea Chapter - happily - but we want to ensure that requirements are well stated too.
>
> We will express our deep appreciation, with correspondingly deep motivation to do better.  The deadlines for X3Dv4 are especially relevant as both opportunity and forcing function.
>
> ----
>
> 8. *Real Soon Now*
>
> Release announcement imminent: coordinated refinements to X3D Unified Object Model (X3DUOM) with corresponding updates to
> - X3D XML Schema
> - X3D Python Language Binding
> - X3D Ontology
> - X3DJSAIL: X3D Java Scene Access Interface Library and Java 8/Java 12 testing
> - X3D Tooltips
>
> ----
>
> 9. *Upcoming Topics for X3D Group*
>
> Lots of interesting work planned for this month.  Participation welcome.
>
> In addition to these frequent minutes, you can track "big picture" and "details" for X3Dv4 at
>
>         X3Dv4 Implementations
>         https://www.web3d.org/x3dv4-implementations
>
>         Web3D.org > MEMBERS > CONTENT > MANTIS ISSUE TRACKER
>         https://www.web3d.org/member-only/mantis/view_all_bug_page.php
>
> Unless otherwise stated, teleconferences are 1-2 hours duration starting at 0800 pacific.
>
> a. 19 AUG Monday:  X3D Semantic Web Working Group
>
> b. 21 AUG Wednesday: Michalis Kamburelis, glTF, Physically Based Rendering (PBR) and Advanced Lighting Model.
>
> c. 21 AUG Wednesday 16-1700: X3Dv4 specification editor review for github spec and mantis resolution.
>
> d. 22 AUG Thursday: Design Printing Scanning Working Group, PointProperties and PointSet/Normal refinements.
>
> Unless otherwise announced, we will skip X3D Working Group meetings for the next two Fridays.
>
> e. Next X3D meeting in 3 weeks, 6 SEP 2019.
>
> September  plans:
> - ISO update report.
> - Nicholas Polys and Ander Arbelaiz, spec prose for volume component extensions (ImageAtlas and MPR).
> - Andreas Plesch, Custom elements in HTML5 and X3D prefixes.
> - Annotations Component next steps.  Suggest consider a possible reset: hold on current spec draft, confirm requirements/goals, see what is possible with HTML5+X3D.
> - newly proposed User Experience (UX) Working Group: formative discussions on goals have begun, when those individuals are ready with a draft UX Working Group Charter please present summary to X3D Working Group for cooperative development.
>
> Expect plenty of email traffic and progress in the coming weeks.
>
> Review confirmation by group: all information here is reviewed as satisfactory for public release.
>
> ----
>
> I never cease to be impressed at the depth of knowledge and breadth of activity that is ongoing.  What a learning opportunity we all share.
>
> Have fun with X3D!  8)
>
> 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
> _______________________________________________
> x3d mailing list
> x3d at web3d.org
> http://web3d.org/mailman/listinfo/x3d_web3d.org


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20190817/e7d40c8d/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: objmtlexample.png
Type: image/png
Size: 385074 bytes
Desc: not available
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20190817/e7d40c8d/attachment-0001.png>


More information about the x3d-public mailing list