En GameMaker, las colisiones se manejan como eventos, que se producen entre objetos. Cuando un pixel de un objeto coincide en posición con un pixel de otro, se produce un evento de colisión entre estos objetos. El usuario debe programar lo que el objeto hará en respuesta a este evento, recibiendo como parámetro el objeto con el cual colisionó.
Los eventos se definen en el editor gráfico, al editar un objeto, se agrega un evento indicando el tipo, en este caso sería colisión, se indica el objeto con el que al colisionar se disparará el evento, y entonces se agregan las acciones (bloques arrastrables o código) a ejecutar.
Para las colisiones, se detectan en base a los sprites asociados a los objetos, todos los sprites tienen una máscara de colisión, la forma o tipo de máscara depende de algunas opciones:
- Precise collision checking (por defecto), la máscara corresponde con toda la imagen (los pixeles no transparentes).
- Bounding box, la máscara es una caja de colisión de diferentes formas regulares (rectángulo, disco, rombo) o una que se introduzca de manera manual (se dibuja sobre el editor de sprites).
También, al editar los objetos, se puede indicar si se desea usar un sprite diferente al asignado para dibujar como máscara para colisión.
Básicamente es así, si alguien está más fresco con GM que lo rectifique

.