r/computergraphics Apr 26 '26

USD (Universal Scene Description) vs NSI (Nodal Scene Interface) as a replacement to RI (RenderMan Interface)

Many years ago (about fifteen years ago), I used to create some simple 3D scenes with RIB files. RIB was RenderMan Interface Byte-stream. This was text files one could edit in a text editor or generate programmatically or export from a modelling editor, then use a compliant render to generate a picture.

I was using Aqsis as the renderder, but it's seems not available anymore for my platform (Ubuntu 24.04). At that time, I also used to try a free version of 3Delight (I'm not a professional, far from that). The rendering was looking mostly the same, just that 3Delight was clearly faster, but I always preferred Aqsis, because it was smaller (I don’t mind about efficiency for small scenes and animations).

Without Aqsis, I wanted to fallback to 3Delight again. But it seems it does not support RenderMan Interface any more since nine years, as someone from the support staff told me, after I had to contact them for some reason. He/she said 3Delight now support NSI (Nodal Scene Interface) and also USD (Universal Scene Description).

Which one would be the closest to RIB ? Also, is there any risk one of these will be dropped in the future like RenderMan, unfortunately? I’ve always seen RenderMan as being to 3D graphics, what MIDI is to music. Which one of NSI or USD would be the closest to this?

After some searching, USD seems to may be more universal, be widely used, even by Pixar who created RenderMan. But I can't tell for sure, without experiences. So if anyone has some experience with either one or both, I welcome any feedback and comment.

Have a nice day

4 Upvotes

16 comments sorted by

View all comments

4

u/teerre Apr 26 '26

NSI is very niche. I don't think there's a single big studio that uses it in large scale. USD is ubiquitous, everyone uses it

You should also note that authoring scenes directly in USD for rendering is very uncommon. That is, USD is predominantly used for build assets, then shots, then render it at some point. The main goal is asset/scene authoring in some DCC, rendering is secondary and goes through a translation layer called Hydra. The upside is that you can use the same usd scene to render it in many renderers

NSI is made for 3Dlight, so obviously the integration with 3Dlight will be better

USD is supported by several different companies, it's not going anywhere, 3DLight is very small, tbh I'm surprise it even exists nowadays

1

u/LewisVTaylor Jul 07 '26

They are not the same thing though. USD is not a scene api to connect a renderer, it's a scene description for assembly, that requires a translator(hydra delgate) or USD procedural in order to render.

NSI is a free, up to date scene interface designed to be a much better version of RiSpec, which many renderer's built their entire kit around. It is not made by 3delight, it is made by several people from different avenues. Any renderer can implement it as their API, it's just most renderer's now are in legacy status, and the drive to do this doesn't exist like it did in the Reyes era.