[x3d-public] ANARI+x3d = standard x3d raytracing?

John Carlson yottzumm at gmail.com
Tue Nov 28 09:56:17 PST 2023


ANARI has a scenegraph, but it’s at the Interchange profile level, or close
to it.  Maybe HAnim nodes could be subclassed from Group or Transform.

My idea is to do an X3dToAnari.js to convert X3D JSON Interchange code to
the equivalent in ANARI Python and/or C/C++.  There wouldn’t be an x3d
scenegraph, just DOM.

ANARI is centered around Frames, so it might be suitable for BVH, given the
above, but I’m not aware of animation APIs beyond motion blur, so it would
be a frame-by-frame thing, which might be enough.  There is a “commit” for
parameter settings, but I’m not currently familiar with rendering calls
(send a frame to a device?)

I have skimmed the spec and the Python example, so i have more than a total
newb idea.

I would think that x3d.py is suitable as a graph, but I don’t know how to
plug rendering into it.  Maybe someone could give some hints how to do that
with Interchange profile?

Personally, I would be happier with X3DJSAIL rendering. Maybe we can link
the ANARI code C/C++ to X3DJSAIL?  I have done JNI before.  Then we could
donate to Khronos for brownie points.

As for cross-platform GUIs for Python, I found Toga.

We don’t have x3d.py import that I know of.  Am I missing something?

Afaik, ANARI is one way, so there wouldn’t be a2x_

I don’t plan on doing any import/export in Python, way too hard.  My JSON
to ANARI will be in JavaScript, if I do it.

On Tue, Nov 28, 2023 at 10:22 AM GPU Group via x3d-public <
x3d-public at web3d.org> wrote:

> I was thinking of porting BVhacker to python for platform portability,
> adding some functions including loading hanim, and using opengl in python
> to render.
> 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.
>
> -Doug
>
> On Tue, Nov 28, 2023 at 2:57 AM John Carlson via x3d-public <
> x3d-public at web3d.org> wrote:
>
>> 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:
>>
>> https://github.com/KhronosGroup/ANARI-SDK
>>
>> ANARI is close to X3D Interchange profile, including cameras and lighting.
>>
>> 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.
>>
>> 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.
>>
>> 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.
>>
>> 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).
>>
>> ANARI does have PBR, I’ve heard.
>>
>> I have heard of people using ANARI with OpenXR.
>>
>> 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.
>>
>> John
>>
> _______________________________________________
>> x3d-public mailing list
>> x3d-public at web3d.org
>> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>>
> _______________________________________________
> x3d-public mailing list
> x3d-public at web3d.org
> http://web3d.org/mailman/listinfo/x3d-public_web3d.org
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20231128/6531f330/attachment.html>


More information about the x3d-public mailing list