SQL Server 2012 High Availability on VMware virtualization
It really depends on what you are trying to protect from and what your SLAs are.  If your goal is to protect against hardware failure and you can handle a few minutes of downtime in the event of a hardware failure then stick with the native VMware options.

If you need to protect yourself from blue screens then clustering on AlwaysOn AGs will be the way to go.  If you are just trying to protect yourself from hardware failures but you can't afford to have even a few minutes of downtime then clustering of AlwaysOn AGs will again be the way to go.

Choosing between FCI (Fully Clustered Instance) and AG will depend on what you are trying to do.  If you need to scale out reads for reporting then AG.  If storage costs are not an issue then AG.  Keep in mind that FCI will require RDMs if you are using fiber channel or iSCSI.  If you use RDMs then you have to deal with not having vMotion while the VMs are online.  With AGs you don't need RDMs so you don't have this issue.  

There are lots of options available to you, it just depends on which way to go.

As for clustering under VMware, it works just fine.  I've got lots of clients who have virtualized most or all of their SQL Servers and have plenty of Windows clusters inside of VMware.