I have designed my graphics pipeline, actually similar to what exists now, you know, vertex shader, then rasterizer, interpolation, fragment shader and so on. But, some stuff are changed in my pipeline. Like the rasterization stage. Currently, as I have understood from Computer Graphics From Scratch book ( which I really recommend ) is that, rasterizer interpolates pixel coords, UVs, depth, Normals and etc. on (almost) every pixel. But I want to change that, I want to define how the rasterizer should act and how it should interpolate, but I have no idea how to. Some people on the web said it's impossible unless you are a driver programmer, then you might have a chance. I want to make sure that it is possible to distort that code, and maybe edit the whole code of current pipeline.
$\begingroup$
$\endgroup$
5
-
$\begingroup$ Are you asking for interpolation methods? Therefore take a look at barycentric coordinates and barycentric interpolation. $\endgroup$– ThomasSep 3 at 7:56
-
$\begingroup$ @Thomas No, actually. I want to know how can I change the method for interpolation and interpolate using my algorithm. It looks like rasterization stage is immutable according to some graphics APIs like OpenGL and Vulkan. $\endgroup$– maziarSep 3 at 8:52
-
$\begingroup$ Why would you want to do this ? We should avoid an XY problem. $\endgroup$– user1703Sep 7 at 17:43
-
$\begingroup$ @YvesDaoust it may sound funny, but I think if I could implement my algorithm, that would be a lot more efficient that the current algorithm. The difference is like rendering a whole object normally, and only rendering the object as wire frame. A LOT of pixels will be discarded, while the rest contain information that will be used to generate the final image, $\endgroup$– maziarSep 8 at 8:59
-
$\begingroup$ Rendering a wireframe is possible, of course. If you mean "I have a way better algorithm than the classical ones", I can't believe you. $\endgroup$– user1703Sep 8 at 13:51
Add a comment
|