I'm a beginner in Java, but have moderate programming skills. I want to program a basic game(engine) but don't have enough experience with Java 2D or OpenGL to really do what I want to do. So I thought about making my own API so I have full control and understanding over what's happening. But I have two questions regarding this:
1) To make an API for graphics, is basic understanding about coloring individual pixels enough to get started?
Because as far as I can figure, all that you would ever have to do is assign RGB and alpha values to an array of pixels, add or subtract them from other arrays to perform color/alpha blending and then draw the individual pixels from the final composite with a function that draws an individual pixel. Is this the proper way or a possible (basic) way to do this? Or is it far more complex than how I described it?
2) Will custom/improvised API's for graphics inherently be less efficient than established ones like Java 2D and OpenGL?
Are the functions that are accessible to me in a Java SDK enough to make a proper API? Or do the established API's make use of very sophisticated/inaccessible thingies that make them valid or more efficient to use as functional drawing tools?
I hope you could all understand what I meant and I hope that some of you have some good answers for me!
(...and I hope my use of the term 'API' is correct, lol.)
Thanks for reading!