Point sprites.
Discarding fragment if rotated texture coord is outside texture.
Initializing size in vertex shader.
alpha attribute to vertex shader.
Cleanup.
Don't need shaders after attaching to program.