ProsperLOADED
Newcomer
My question is simple though more subtle than it may first seem : should I use 3 or 4 components vectors for my vertices data (position, normals...) ?
With 4 components vectors, I can use SSE instructions to speed up the computations done on the CPU side but obviously I'm going to waste some GPU memory if I send ma data "as is".
I could convert my vectors to 3 component vectors before sending them but the process seems like a waste of time for streamed data sent each frame to the GPU.
And on the other hand, 3 components vectors aren't properly aligned so I can't use SSE on these. However, I can send them to the GPU "as is" without wasting GPU memory.
Neither solution feels good to me. I know I could do some benchmarking (and I probably will) but I suspect results may vary widely depending on the situation and I'd like to know how this scopes with full scale applications.
That's why I'd be glad to know how you handle this in your projects.
PS : if it wasn't clear I'm targeting PC architectures, though hearing about how this applies to consoles would be interesting too.
With 4 components vectors, I can use SSE instructions to speed up the computations done on the CPU side but obviously I'm going to waste some GPU memory if I send ma data "as is".
I could convert my vectors to 3 component vectors before sending them but the process seems like a waste of time for streamed data sent each frame to the GPU.
And on the other hand, 3 components vectors aren't properly aligned so I can't use SSE on these. However, I can send them to the GPU "as is" without wasting GPU memory.
Neither solution feels good to me. I know I could do some benchmarking (and I probably will) but I suspect results may vary widely depending on the situation and I'd like to know how this scopes with full scale applications.
That's why I'd be glad to know how you handle this in your projects.
PS : if it wasn't clear I'm targeting PC architectures, though hearing about how this applies to consoles would be interesting too.