How do NFT projects combine their assets with all possible combinations? e.g. Cryptokitties: you have like 10 skin colors, 10 eyes shape ...etc. to combine these assets, you get let's say 10000 combinations, each one is unique.
My question is, which software (if any) can I use to combine specific assets into all possible unique combinations? or do I have to create my own software for that?