I am exploring the idea of programming a territory control based RTS. These territories would be in 3D and I would like their colors to change when captured to represent the faction's color. I would also like if my borders be embossed to separate them more easily. Which brings me to my question. Is there a way to efficiently represent these territories to make them easy to modify and where I could track the borders efficiently and with precision?
For instance, lets say I have a map divided like the classic Risk map (ignore the continental colors):
How can I represent each territory in a way where I could easily modify its properties (color, shape and possibly borders)? Should I engrave the borders in lists of coordinates and draw my territories according to these lists? Should I draw the map in an editor like Photoshop and analyse it pixel by pixel through a code execution to create the actual 3D map? Should I design each piece in a 3D modeling program (which seems insanely time consuming) and import the models when I load my map? Or is there a simpler answer right under my nose that I haven't explored yet?
I'm not sure yet if I'll be using Java or C++ to code, but I know it will be one of these two with OpenGL as my graphics library.
I understand that my question might be confusing, so please do ask for me to explain if it is the case and I'll try to clear any question you might have the best I can.