I am new to Magento 2 and also new to StackExchange.
I observed that there are so many images generated in the cache directory.
Why do I need this?
How can I stop creating these images?
What would happen if I delete all images in this directory?
This is not a bug, it's a feature of Magento.
When you upload an image for a product with specific image sizes, like 1200x1200 and you use it on the thumbnail with the size 60x60 and small image like 200x200 and large image like 600x600. It creates cache images according to your given size.
For 2nd question:
You can stop it by creating. And why anyone wants to stop it, its a feature: The benefit of this is, the user will not suffer in rendering large size images all over the website, it will show small image or thumbnail image on the web page, and that results with the high performance of the website.
For the 3rd question:
If you delete images from this directory, then Magento will create images again in it whenever someone opens your website it will create images automatically and saved it in the cache directory
Reference of my previous answer on almost the same question: What is the use of Magento 2.2.6 product image cache?