Yes, there is a VM2 extension to do this!
Our Breezing Forms Custom Fields extension offers a viable approach for complex custom fields, as long as you don't need parent/child products or to track stock by each of the options.
What we have is an extension that seamlessly integrates a completely custom Crosstec Breezing Form into the custom field area of a VirtueMart 2 product. Because BreezingForms is a fully featured form development component, this means that you can do all those great things you expect from best selling form design software, then use that form as the way to capture product options and attributes for a VM2 product.
And because you are using a form design component, you can control the way the fields depend on one another for the values and the final pricing.
If you think this sounds like it might help you, here's a link to our documentation to learn more:
http://docs.polishedgeek.com/wiki/display/BFCUSTOM . There's a also a YouTube video there on the doc homepage that explains it a bit more.
We have a simple demo page here:
http://klarna.polishedgeekdev.com/index.php/shop/eyeglasses/awesome-eyeglasses-detail (still working on a demo site with several different products and examples)
You can learn more about the form component our extension integrates here: Crosstec BreezingForms
http://crosstec.de/en/extensions/joomla-forms-download.html (You have to have both VM2 and BreezingForms to use our extension).
I'm happy to answer any questions you have. Feel free to pose them in the forum here, or if you would prefer to discuss your requirements more privately, just open a ticket:
https://polishedgeek.com/clients/submitticket.php?step=2&deptid=3 Or if you will be at Joomla World Conference 2012 this weekend, chat with our CTO Donald Champion about your needs. He's presenting the Cart-Agnostic Design Principles for Joomla eCommerce session.
Let me know if you think this might be helpful for you!