I realize I am nearly 5 years late, but the answer could still be relevant to developers today.
Unfortunately there is no apparent way to distinguish between the two inputs on Mac, as the Input.GetAxis(), Input.mouseScrollDelta, and Event.current.delta methods of receiving scroll delta are all equivalent.
However on Windows there is the following solution:
Since Input.mouseScrollDelta doesn’t pick up on a touchpad scroll and Event.current.type (in the OnGUI method) does, you can detect this and handle them independently.
void OnGUI () {
if (Event.current.type == EventType.ScrollWheel) {
if (Input.mouseScrollDelta.y == 0) {
// Handle touchpad scroll using Event.current.delta.y
} else {
// Handle mouse scroll using Input.mouseScrollDelta.y
}
}
}