Well the MU-2 detour work didn't help.....but beyond that, in the world of custom engineering / design work, there are unknowns in the process. Perhaps the results we are able to get out of x-plane might not be what we want and we have to backtrack and try different techniques, or we make conscious choices to implement things we didn't plan on implementing initially. May be the software we use is giving us fits (*cough Substance Painter).
In estimating efforts for stuff like this, I like to call such targets, "personal carrots" we dangle in front of our own faces to keep us moving and motivated. I can reel off a large list of custom efforts that went well beyond time and cost estimates ....by Boeing, NASA, Icon aircraft, Cirrus, Space-X ...really smart folks with billions of bucks to work with etc...so it just comes with the territory. We're happy when we get it right...and just keep our heads down when we don't.
One example though....we have working cabin doors. You can open these doors via the GUI by clicking a checkbox to have the doors open/close. BUT....I guarantee some folks will want to open these doors more like the real thing, by grabbing the handles and rotating them. So....I put that feature in, and it was a bit more work than clicking my heels together 3 times....and when I did that, now the checkboxes via the GUI need to reflect the door state if opened by mouse first. If you open the door halfway with the mouse and then open the GUI dialog....what do you see then, what should the checkboxes show? What feels natural and logical? This disconnect between possible actuation methods caused animating 'jumps' and I had to run a bunch of tests to see what worked and felt logical and natural, and add custom code to handle all that and it just added some extra time, etc. But in the end, I know that the customers that like to move stuff with the mouse will be happy and those that don't care can still use the checkboxes. But until I tried it, I wasn't exactly sure what worked best. I have to view the interactivity in this example from the perspective of a LOT of customers with different preferences and expectations. In the end, its a win-win for all customers, at the expense of my time estimate being delayed because I decided to add in a feature I didn't before, etc.
There's been a few other areas regarding lighting that didn't quite work out like I hoped, eating up too many FPS and I had to backtrack and make some changes there also. Until I tried it though, I wasn't sure what the performance cost would be..and the alternative method turned out to be quite a bit of work. So...its stuff like this that stretches the time estimates.
Your comment though, that you love the product gives me confidence that my choices when doing the work are mostly the right ones, and taking the time to do it right, even if it goes past my estimates, are usually worth it.
-tkyler