I wish to write a c++ program with the goal of "baking" a 3D normal texture map. A user must input a low poly and high poly model with the option to add a 3d cage mesh model. The program will run once the user press "run". What is the best approach to get started? What libraries can I use to speed up the process? What data types are needed to handle in order to build such a program?