Thank you all for your super useful advice!
So, a few hours of unity tutorial later, I feel like unity isn't my thing. If I made a game from scratch, perhaps, but now I'm porting and restructuring a current game, and everything that makes unity user friendly seems like it will get in my way big time. For example, the built in physics engine (basically a checkbox "yes I want physics on this object") will most definitely collide with my game. Also I don't want to drag scripts to objects etc, I want to build a proper inheritance tree with classes (this is what I've been missing in Lingo, and I'd like to try it because I think it'll save me the hassle of writing the same thing over and over).
My question is this: Is it possible to strip unity of every bit of pre-defined animation handling etc, and only use it for:
* Rendering sprites
* Handling input
* Audio
* Debugging
Basically I want to create all game behaviors myself, and only use pre-defined stuff for the stuff that isn't Rain World specific, such as interacting with the OS etc.
@Gimym JIMBERT
I see your point, and I won't make that mistake. Right now though, it's a question of what platform I should choose, and if I make the wrong choice I won't be able to go back, which means that I have to look some distance down the road despite it being premature. If I pick the wrong platform and it turns out the optimization I want to do
can't be done when it's time to do it - trouble.
Last optimization question for unity: From how I understand it Unity has a lot of cool optimization and handles some functionality on the GPU, which is from what you guys have said basically free extra performance?
That's one hand - Unity does cool technical optimization stuff automatically that I wouldn't be able to do myself.
The other hand - Unity does a lot of things I won't use. Light, physics, cameras that can rotate and zoom, etc etc etc. I feel like I've just scratched the surface. All of those things take time, right? Even if I don't use them, I'm afraid they'll eat away milliseconds unnecessarily. My game is mostly just 1-bit graphics being stretched and re-colored, and it might be a bad bargain to also have all of them be lit and zoomed etc every frame, without it even being visible. Also some of this stuff might really get in the way, eg can I even rotate a sprite without it being anti-aliased?
Which of those two hands weight the heaviest? Does the fact that Unity does cool optimized GPU stuff make up for the fact that it also does a lot of cool optimized GPU stuff that won't even be visible? Or will the net be slower than if I just stripped away everything and wrote my own, clumsier, solutions?
Or even simpler put: Which is slower? 10000 super professionally optimized functions of which I only use 4, or 4 super clumsily written functions but nothing else?