Recently I’m developing an application to adjust the 3D model (for example, texture scaling, texture offset) which the users upload.
However, I encountered a problem, that is, dynamically and independently adjust the color of each texture image (hue, saturability, and brightness) and preview it in real-time, just like the color adjustment tool of Photoshop (see the following figure), users often quickly drag the slider to adjust color, so that need to immediately Real-time preview with high frame rate, which needs to be implemented with high performance.
I found some solutions:
Use Image Filter and ImageProcessingPostProcess to adjust the color of texture image by creating some independent canvas for each texture, and output canvas image to Texture. I think the performance of this way should be a little bad.
Creating some stencils for each texture and using ImageProcessingPostProcess or custom shader to change color for special texture. I think it should be very difficult.
Is there have a better solution? Any help would be much appreciated.