No, it doesn't depend on where you're travelling from, but it does depend on your nationality. See the following website for details - http://www.vec.ca/english/9/exemptions.cfm
By the way, whether you need a visa or not, you will need a passport, unless you're American, in which case you'll still need proof of identity.