I'm kind of lost. Say I want to create a top-down hardware accelerated shooter with vector graphics. Exactly what do I need?
I'm comfortable working with 2d raster images (i.e. Graphics2D in Java, SDL, etc...), and I have the background in mathematics to handle basic vector graphics. I'm assuming that I will need some sort of library that exposes OpenGL/DirectX Shader API to the language I'm using, but other than that I'm not really sure how to approach this.
First off, is my assumption that 2d sprites are drawn as textures on rotated 3d quads correct?
Next, I'm plotting the parametric curve x=sin(t) y=2t+1 for t between [2,4]. Do I render the equation directly to the screen on top of everything else? Or do I rasterize it to a 2d surface first, then apply the surface as a texture on a 3d quad? Or do I create a bunch of vertexes at points along the curve then draw the mesh between the vertexes?
Now say I want to draw a beam along the curve that's a few pixels wide that's a certain color gradient that I set from code or a config file. Do I render the gradient to a 2d surface then either draw the surface directly on the screen multiple times along the beam, or apply the surface as a texture on a 3d mesh that I distort to match the beam's path? Or something else entirely, like drawing the beam purely through shader language?