Antes de utilizar o preload nós criamos uma variável para cada imagem ( let imagemX; ) mas não atribuímos nada às variáveis, para só então carrega-las no preload ( imagemX = loadImage("imagens/imagemX.png"); ) quando atribuímos cada imagem à variável.
Há algum motivo para ser feito dessa forma? Ao testar o código sem criar as variáveis antes do preload o mesmo continua funcionando normal.
Editado:
Acredito que talvez seja mais fácil explicar com imagens
https://imgur.com/fZ6X78z
https://imgur.com/SBhbRx9