You will have to rebuilt a lot of things to support this, the standard material class is quite extensive.
No, number/vector/color fields can be updated in the update
callback, it doesn’t matter. What I need to do is hack the texture related shader chunks. Such as diffusePS
, emissivePS
etc.