История изменений
Исправление panzerito, (текущая версия) :
реализацию GPU с OpenGL (хотя бы ES)
Я не нашел годной софтварной имплементации opengles 2.0, а ты хочешь hdl. Только недоделанную от Vincent-а, а у него там, например, такое
gl/gl/render.c: state->drawFunction = &DrawPoints;
gl/gl/render.c: state->drawFunction = &DrawLines;
gl/gl/render.c: state->drawFunction = &DrawLineStrip;
gl/gl/render.c: state->drawFunction = &DrawLineLoop;
gl/gl/render.c: state->drawFunction = &DrawTriangles;
gl/gl/render.c: state->drawFunction = &DrawTriangleStrip;
gl/gl/render.c: state->drawFunction = &DrawTriangleFan;
gl/gl/render.c: state->drawFunction = NULL;
Где state это opengl контекст. И я привел все ф-ии рисования из реализации. drawFunction из контекста вызывается, например, при glDrawArrays. Как-то костыльно, по-моему, такая диспетчеризация по примитивам. Хотя я не видел других реализаций и сравнить не с чем. Vincent обещал переписать на verilog, но уже можно не надеяться.
Реализации opengles 2.0 поверх opengl, direct3d или vulkan, с точки зрения реализации акселлератора в железе, неинтересны.
Исправление panzerito, :
реализацию GPU с OpenGL (хотя бы ES)
Я не нашел годной софтварной имплементации opengles 2.0, а ты хочешь hdl. Только недоделанную от Vincent-а, а у него там, например, такое
gl/gl/render.c: state->drawFunction = &DrawPoints;
gl/gl/render.c: state->drawFunction = &DrawLines;
gl/gl/render.c: state->drawFunction = &DrawLineStrip;
gl/gl/render.c: state->drawFunction = &DrawLineLoop;
gl/gl/render.c: state->drawFunction = &DrawTriangles;
gl/gl/render.c: state->drawFunction = &DrawTriangleStrip;
gl/gl/render.c: state->drawFunction = &DrawTriangleFan;
gl/gl/render.c: state->drawFunction = NULL;
Где state это opengl контекст. И я привел все ф-ии рисования из реализации. drawFunction из контекста вызывается, например, при glDrawArrays. Как-то костыльно, по-моему, такая диспетчеризация по примитивам. Хотя я не видел других реализаций и сравнить не с чем. Vincent обещал переписать на verilog, но уже можно не надеяться.
Реализации opengles 2.0 поверх opengl, direct3d или vulkan, с точки зрения для реализации акселлератора в железе, неинтересны.
Исходная версия panzerito, :
реализацию GPU с OpenGL (хотя бы ES)
Я не нашел годной софтварной имплементации openges 2.0, а ты хочешь hdl. Только недоделанную от Vincent-а, а у него там, например, такое
gl/gl/render.c: state->drawFunction = &DrawPoints;
gl/gl/render.c: state->drawFunction = &DrawLines;
gl/gl/render.c: state->drawFunction = &DrawLineStrip;
gl/gl/render.c: state->drawFunction = &DrawLineLoop;
gl/gl/render.c: state->drawFunction = &DrawTriangles;
gl/gl/render.c: state->drawFunction = &DrawTriangleStrip;
gl/gl/render.c: state->drawFunction = &DrawTriangleFan;
gl/gl/render.c: state->drawFunction = NULL;
Где state это opengl контекст. Vincent обещал переписать на verilog, но уже можно не надеяться.
Реализации opengles 2.0 поверх opengl, direct3d или vulkan, с точки зрения для реализации акселлератора в железе, неинтересны.