Added material cache to avoid creating new materials for the same material assets
Added material cache to avoid creating new materials for the same material assets

--HG--
branch : feature/merge-model-primitive

shinate/engine,H1Gdev/engine,sanyaade-teachings/engine,shinate/engine,nizihabi/engine,guycalledfrank/engine,MicroWorldwide/PlayCanvas,horryq/engine-1,guycalledfrank/engine,RainsSoft/engine,maxwellalive/engine,3DGEOM/engine,sanyaade-teachings/engine,SuperStarPL/engine,aidinabedi/playcanvas-engine,nizihabi/engine,shinate/engine,SuperStarPL/engine,RainsSoft/engine,maxwellalive/engine,playcanvas/engine,3DGEOM/engine,sereepap2029/playcanvas,aidinabedi/playcanvas-engine,playcanvas/engine,RainsSoft/engine,SuperStarPL/engine,sereepap2029/playcanvas,sereepap2029/playcanvas,H1Gdev/engine,3DGEOM/engine,horryq/engine-1,horryq/engine-1,maxwellalive/engine,nizihabi/engine,sanyaade-teachings/engine,MicroWorldwide/PlayCanvas