I managed to incorporate reading and writing of the PhysX 'cooked' triangular meshes and convex hull meshes in plGenericPhysical. I wrote a wrapper class around the PhysX calls. The code I inserted into plGenericPhysical's IReadPXPhysical() and IWritePXPhysical() methods make use of the wrapper class, so no PhysX SDK code is in the libPlasma code base. I put the wrapper class's library and header files into a new subdirectory of 3rdPartyLibs.
To test this, I used prcdc before and after the modification to decompile some PRPs into XML files, then compared the two. They are identical, and there's no more of those "[003f:*] Size-Read difference" error messages. I also used PageConvert to generate a MOUL version of some simple POTS-exported ages; now it no longer complains about plPhysical not being supported.
I haven't yet tested this with PlasmaShop, namely because I'm still wrangling with qmake/nmake compiling. Also, I only have libraries for Windows; the nVidia PhysX SDK archives page only provides the Windows version for v2.6.4 (the one used by MOUL).
I wanted to know whether I should create a branch within the branches subdirectory of the Plasma SVN repository, or within Contrib. [Either way, I won't be able to check in the source code to the wrapper class, at least on an open code base.]