The scales are all done procedurally using Geo-scatter. I modeled 20, textured using photos I took of a crocodile, and then scattered them across the model. By adding a realize instances node, they’ll then suck up the vertex colors of the surface mesh, which I then mix with the scale textures to create high-detail skin.
Additional 3d assets from Polygoniq, Quixel, Tiny Eye, and mrjeong on Blendswap.
And then in post I mixed in some 2d stock elements by Brenda Timmermans, Roger Brown, and Vlad Kutepov.