You could simply prepare few several designs with different color combinations, perfectly pre-rendered, so the user could choose from the fixed set of options. I do understand that this is not cool at all, but this is what you can do immediately. Everything else is orders of magnitude more complicated. If you are asking such a questions, it's hard to believe you have enough experience to leverage and develop more advanced techniques.
It's possible that you kept in mind some bitmap color transformation software. I can tell you for sure: it can work, but then forget about any quality. You don't have a freedom to change colors in an arbitrary way, as the design-grade software requires, no matter how good the software is; this is not because of software, but because of informational science concern and nature of things (3D objects you want to cell): those bitmaps don't carry the information on the 3D structure of the objects really needed for rendering the object in arbitrary colors.
So, we're coming to the conclusion: the minimal technology you may need would always include having 3D models of your skateboards and other objects, and rendering of these 3D models on request. Note that only the best software does this rendering realistically. I would say, you may need some good-quality engine which you would need to leverage on your server side. And it's hard to believe that a mere PHP library, no matter how good, can cope with this problem really well. First of all, PHP is
interpretive it may provide inferior performance. Besides, it has been created not as some serious language; many would call it
ersatz-language, which became popular mainly because it is cheap, not very resource-demanding. However, you can try to find something:
http://sourceforge.net/directory/graphics/graphics/3drendering/os:windows/freshness:recently-updated/?q=php+3D+rendering[
^],
http://www.phpclasses.org/package/3364-PHP-Compose-and-render-3D-object-models.html[
^],
http://bfy.tw/PQt[
^].
I need to warn you: I never tried anything of the above, but I saw some samples; they are too primitive to my taste, hardly can impress the users of a skateboard site, set aside a desire to order their custom designs.
You can consider using some more advanced server-side technologies, but it might make your project more realistic. Still, you are going to have a lot of problems, but the whole thing is really doable.
—SA