You can pass a texture to GUI.Button to set the button image, but you can’t control the shape of the clickable area (so that you can have circular buttons packed close together, say). You would need to construct this yourself by getting mouse clicks and positions, checking the clicked area, animating the button presses, etc.