The answer: SOFTIMAGE Plug-in Description Language
The question: What does SPDL stand for?
Cover page from the original SPDL specification:
The origins of SPDL go back to at least 1997. The original SPDL parser was written with BISON and FLEX (GNU versions of yacc and lex), and at one point I think there where three different parsers, two based on BISON/FLEX, and one C++/COM (that was back in the early Twister/Sumatra/DS days). I remember going through the BISON/FLEX files in order to write up a SPDL syntax doc…fun times!
FUN FACT: There are 1,511 spdl files in the Softimage 2013 SP1 installation folder.
Considering there are still “1,511 spdl files in the Softimage 2013 SP1 installation” I still don’t understand why the SPDL description has been completely removed from the documentation. I understand using SPDL for shaders is deprecated, but knowing what makes up a SPDL file can still be considered useful knowledge, when dealing for instance with legacy files, I’d say.
Yes, there are SPDL files in the installation, but we don’t support or recommend that you edit those spdl files, so their existence doesn’t necessarily justify the continued publication of SPDL documentation.
For legacy SPDL-based shaders (or even operators or properties) I agree there may be a need for SPDL documentation. I see [now that I looked harder] that the legacy stuff is still on the wiki:
Some other legacy docs, like Behavior, the 5.0 tutorials, and the old particles were moved to the wiki proper.
If the SPDL is depricated, then what is the recommended method?
For custom shaders, you write a shader definition plugin.
There are two different of SPDLs languages, shaders and non-shaders, plus a property layout definition language embedded in the spdl that is common. So, there are three different parsers. The first two were unified, but it doesn’t change the fact that there are two different languages, one for shaders, and another one for operator/properties, etc. This whole area is confusing to explain because some keywords only work in some cases and not others.
spdl originally stood for Shader Preset Definition Language.
I agree the SPDL documentation needs to hang around a bit longer. We’re trying to migrate from Softimage 7.5 up to Softimage 2013 SP1 and realtime shaders have enough bugs in the shader definition system we cannot migrate away from SPDL yet.
small tip: when trying to censor something in a document, make sure you use a black marker (or in the digital world, a black color to multiply.) I can still read the name of the author (C.B.)
I’ll keep that in mind when redacting things in the future 😉