Best way to write pixels with software renderer
Posted: September 21st, 2019, 6:44 pm
I am writing a software based rendering engine (for fun/education) Clearly bottom line speed isn't my goal, but I would like it to be as fast as a can be without gpu/directx help. Using C++ and Windows 10, VS 2017. Win 32 API.
Back in the old days, I would have access to a frame buffer, and would have handled my own swapping to screen memory.
Nowadays, I'm not sure what the best way to actually implement rasterization is.
My gut is just to create a window, and use direct3D to write individual pixels.
Next notion was just to use GDI calls. If the GDI is fast enough, I am fine with this idea.
Considered an OpenGL interface, but doesn't seem suited.
Crazy idea: creating a Bitmap, treating it as a framebuffer, and blitting to the program window each frame.
Any ideas? Last time i did this, you would run your code on DOS with direct access to the hardware.
Back in the old days, I would have access to a frame buffer, and would have handled my own swapping to screen memory.
Nowadays, I'm not sure what the best way to actually implement rasterization is.
My gut is just to create a window, and use direct3D to write individual pixels.
Next notion was just to use GDI calls. If the GDI is fast enough, I am fine with this idea.
Considered an OpenGL interface, but doesn't seem suited.
Crazy idea: creating a Bitmap, treating it as a framebuffer, and blitting to the program window each frame.
Any ideas? Last time i did this, you would run your code on DOS with direct access to the hardware.