How should I pursue my passion?
prospero: It sounds like we have similar interests; I've been working on a library for Clojure which wraps OpenGL and allows for shader programming in an idiomatic DSL.  It's been a lot of fun to develop, and I agree that graphics programming has a tremendous amount of incidental complexity.  Trimming away the fat is a deeply satisfying experience.I don't really have the same commercial ambitions as you, but a few things to consider w.r.t. your first option (developing a graphics engine):* Lots of people have a vague ambition to create a game.  The number of those who will spend money towards that end is much, much smaller.* Any graphics engine worth purchasing will need to implement a lot of "boring" stuff.  You can probably punt on AI, but fonts, audio, and menu systems are non-negotiable.* It will be pretty hard to sell a graphics engine if there's not a prominent success story to go along with it.  That means you'll have to create a popular-ish game, or convince someone else to.If you can support yourself on part-time consulting, go for it.  But make sure any work you do on your own time is worthwhile in and of itself, rather than with respect to some future payoff that may never happen.