I need to implement glDrawArrays function in FPGA. I understand it's part of the OpenGL library. I'm trying to get to its source code to figure out what it contains. Does anyone know of a tool that can convert functions from OpenGL to RTL?
-
Given that this question has an upvoted answer, perhaps that one should be closed as a duplicate of this one, instead of vice versa. – user253751 Jul 29 '21 at 14:52
-
I am voting to reopen because the linked duplicate was deleted. Perhaps this should still be closed, but with a different reason. A deleted duplicate link is not helpful to anyone. – user253751 Aug 10 '21 at 10:19
1 Answers
This question shows a fundamental lack of understanding about how all these things relate, and is therefore unanswerable, except to explain why the question doesn't make sense. It's like you asked:
I need to implement a toilet flush lever in my bicycle. I understand it's part of the cistern. I'm trying to get technical drawings of flush levers to figure out how they work. Does anyone know of a tool that can convert cistern parts so they fit on bicycles?
This question doesn't make sense because adapting a few cistern parts onto your bicycle won't magically make it flush. You have to have the whole toilet and a water supply to be able to flush a toilet. There's no individual part that makes it flush by itself. If you think there is some little piece that you can copy/paste onto the side of your bike and then you'll be able to flush your bike, then you are wrong. I don't know how to explain it better.
glDrawArrays is useless without the rest of OpenGL. You need most of OpenGL, or none of it. Copying one function won't help, because that function talks to all the rest. By only copying glDrawArrays, you are saying "When I pull this lever, the toilet flushes. So how can I stick this lever onto my bicycle?" Sure, you can weld the flush lever to your bike, but it won't flush when you pull it. It's just the lever. It's not the rest of the toilet.
There are lots of different OpenGL libraries that all have completely different code, so you're not even sure which toilet's flush lever you want. "Can I find a technical drawing of flush lever?" - well, my toilet has a different one to your toilet, which one do you want?
And bikes and houses are just completely different beings, just like processors and FPGAs. Asking for a tool that converts C libraries to RTL is like asking for a tool that will let you modify house plumbing fixtures so they fit on a bike. There is no such tool. Not even for a really big bike. Sure, you might be able to fit a kitchen sink where the cargo basket goes, but it'll be completely custom work. There's no general procedure for that. You have to get out your sink and your bike and design them specifically to go together. You did specify OpenGL (not just any C library) which is like asking for a tool that will let you modify toilets, specifically, so they fit on bikes. Still doesn't exist.
If you want to know how to design 3D rendering hardware (like a mini graphics card), ask that instead. But "how do I design 3D rendering hardware?" is too broad - you have to try it yourself and ask about the specific thing you get stuck on.

- 11,998
- 2
- 21
- 37