There is no short answer to the problem but have a look at this video. Hopefully that gives some insights.