<div dir="ltr"><div dir="ltr">I can't comment on rendering the x3d.py scenegraph to ANARI. I can't even remember how to render polygons to pixels right now...BSP? Watkins? Warnocks? SEEDS? I think the idea would be to break the scenegraph into triangles, but with raytracing, curved objects can also be handled. So as Doug suggested, probably the primary thing would be going from x3d.py scenegraph to ANARI scenegraph, or go from x3d.py scenegraph to triangles to ANARI scenegraph. You may have to do some twiddling with Groups and Transforms to fit ANARI<div><br></div><div>Any rendering work on either x3d.py or X3DJSAIL would be way cool, but that wasn't my proposal, which I don't see any interest in, so any complementary work would be welcome!</div><div><br></div><div>I'm messing around with WSL 2 and Ubuntu on Windows 10, eventually trying to get Mesa (OpenGL) output from WSL 2.</div><div><br></div><div>Right now I'm working on getting InterViews (Remember Mark Linton and John Vlissides?) working.</div><div><br></div><div>John</div><div><br></div><div>John</div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Nov 28, 2023 at 10:49 AM Brutzman, Donald (Don) (CIV) via x3d-public <<a href="mailto:x3d-public@web3d.org">x3d-public@web3d.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="msg1837651912682782369"><div lang="EN-US" style="overflow-wrap: break-word;"><div class="m_1837651912682782369WordSection1"><p class="MsoNormal">Hi Doug. Thanks for sharing this idea about BVhacker.<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><ul style="margin-top:0in" type="disc"><li class="m_1837651912682782369MsoListParagraph" style="margin-left:0in"><a href="https://bvhacker.com" target="_blank">https://bvhacker.com</a><u></u><u></u></li></ul><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Not understanding “don't think x3d.py is useful as a scene graph” since it is simply a pure python library for creating valid X3D scene graphs.<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">No one as reported looking at Khronos ANARI with respect to X3D.<u></u><u></u></p><ul style="margin-top:0in" type="disc"><li class="m_1837651912682782369MsoListParagraph" style="margin-left:0in">Anari Cross-Platform 3D Rendering Engine API<u></u><u></u></li><li class="m_1837651912682782369MsoListParagraph" style="margin-left:0in">ANARI significantly simplifies the development of applications in domains such as scientific visualization by providing high-level functionality to build an in-memory scene representation to be rendered without need for low-level graphics code, and enabling the use of any 3D rendering engine that supports the ANARI API. ANARI has already been widely integrated into scientific visualization applications, and is expected to be used by diverse applications needing portable access to multiple rendering engines delivering sophisticated 3D functionality such as ray tracing and global illumination. <u></u><u></u></li><li class="m_1837651912682782369MsoListParagraph" style="margin-left:0in"><a href="https://www.khronos.org/anari" target="_blank">https://www.khronos.org/anari</a><u></u><u></u></li></ul><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Hopefully there will be an update to x3d.py sometime in December addressing some noted issues – our recently updated X3DUOM helps. The emails about x3d.py (and also Blender) are so scattered that it is hard to tell what is going on, am bracing for a long period of spelunking when the time comes.<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">If there is anything in particular that x3d.py might do to complement your efforts, perhaps helping with a potential adaptation of bvhacker functionality, all issues/examples/insights will be welcome.<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Have fun with X3D!<u></u><u></u></p><p class="MsoNormal"><span style="font-size:9pt;font-family:"Courier New""><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:9pt;font-family:"Courier New"">all the best, Don<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:9pt;font-family:"Courier New"">-- <u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:9pt;font-family:"Courier New"">Don Brutzman Naval Postgraduate School, Code USW/Br <a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a><u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:9pt;font-family:"Courier New"">Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA +1.831.656.2149<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:9pt;font-family:"Courier New"">X3D graphics, virtual worlds, navy robotics <a href="https://faculty.nps.edu/brutzman" target="_blank">https://faculty.nps.edu/brutzman</a><u></u><u></u></span></p><p class="MsoNormal"><u></u> <u></u></p><div style="border-right:none;border-bottom:none;border-left:none;border-top:1pt solid rgb(225,225,225);padding:3pt 0in 0in"><p class="MsoNormal"><b>From:</b> x3d-public <<a href="mailto:x3d-public-bounces@web3d.org" target="_blank">x3d-public-bounces@web3d.org</a>> <b>On Behalf Of </b>GPU Group via x3d-public<br><b>Sent:</b> Tuesday, November 28, 2023 8:21 AM<br><b>To:</b> Extensible 3D (X3D) Graphics public discussion <<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>><br><b>Cc:</b> GPU Group <<a href="mailto:gpugroup@gmail.com" target="_blank">gpugroup@gmail.com</a>><br><b>Subject:</b> Re: [x3d-public] ANARI+x3d = standard x3d raytracing?<u></u><u></u></p></div><p class="MsoNormal"><u></u> <u></u></p><div><p class="MsoNormal">I was thinking of porting BVhacker to python for platform portability, adding some functions including loading hanim, and using opengl in python to render.<u></u><u></u></p><div><p class="MsoNormal">But what's missing is a scene graph. I don't think x3d.py is useful as a scene graph. Perhaps x3d.py could work like Blender x3dv - as an import/export intermediary, and anari2x3d (a2x_) and x3d2anari (x2a_) would be like the b2x_ functions in blender x3dv exporter. And once those functions are developed then the anari scene graph could be used in other applications.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">-Doug<u></u><u></u></p></div></div><p class="MsoNormal"><u></u> <u></u></p><div><div><p class="MsoNormal">On Tue, Nov 28, 2023 at 2:57 AM John Carlson via x3d-public <<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>> wrote:<u></u><u></u></p></div><blockquote style="border-top:none;border-right:none;border-bottom:none;border-left:1pt solid rgb(204,204,204);padding:0in 0in 0in 6pt;margin-left:4.8pt;margin-right:0in"><p class="MsoNormal">Have you wanted to do raytracing in x3d across a range of graphics cards, but had no way to do low level stuff? Consider the ANARI industry standard 1.0 API SDK:<u></u><u></u></p><div><p class="MsoNormal"><u></u> <u></u></p></div><div><div><p class="MsoNormal"><a href="https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FKhronosGroup%2FANARI-SDK&data=05%7C01%7Cbrutzman%40nps.edu%7Cb551838a1a884a6ba56e08dbf02e21e7%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C638367853627193970%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C2000%7C%7C%7C&sdata=ubLBMViLuKo0Q%2FqHUiOAghsoLelFt1X0B4G1x9XoaSA%3D&reserved=0" target="_blank">https://github.com/KhronosGroup/ANARI-SDK</a><u></u><u></u></p></div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">ANARI is close to X3D Interchange profile, including cameras and lighting.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">I’m open to requests for X3DJSONLD JSON inputs to ANARI python, C and C ++ output, but I’m not going to do it unless someone wants it, and can test my products. I don’t have a raytracing card myself. I will probably render X3D to USD for my testing. My preference would be to use Python output, since that is allied with USD.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">If you want to start with XML or VRML and skip X3D JSON, seek elsewhere. I can provide assistance to those who need conversion to JSON.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Since ANARI is close to Interchange format, there’s probably no reason to write an ANARI renderer for other X3D profiles, but someone else may want to try. I don’t believe there is an X3D Loader for ANARI either. I’m not interested, as I am interested in program synthesis. X3DJSONLD is my X3D Loader, which comes before program synthesis.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">I don’t believe there is animation with ANARI, but there is an ANARI addon renderer for Blender and an ANARI backend to USD converter for Omniverse (or something like that).<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">ANARI does have PBR, I’ve heard.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">I have heard of people using ANARI with OpenXR.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">I’m just looking for an excuse to try it out and no marketing or sales implied. I’m a volunteer, with quite a bit 3D training in college, including writing a raytracer.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">John <u></u><u></u></p></div><p class="MsoNormal">_______________________________________________<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" target="_blank">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><u></u><u></u></p></blockquote></div></div></div>_______________________________________________<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/listinfo/x3d-public_web3d.org</a><br>
</div></blockquote></div>