Please, feel free to ask anything, I'll try my best to answer. Note though, that that's only my opinion
As for a good read, nothing comes to mind atm. But generally, since you're asking about OOP in terms of graphics, I would suggest sacrificing OOP, as well as composition-over-inheritance, in favor of DOD (Data Oriented Design). Additional keywords to lookup: ECS (Entity Component System). OOP is really unfriendly to batch processing. DOD turns OOP completely inside out, so to accept this you'll have to forget about OOP completely =). When you start thinking DOD (that will likely take some time), you'll suddenly notice that DOD is a lot more suitable approach for lots of programming problems. It makes your systems not only blazing fast but also makes it easier to reason about your code and your dataflow.