1
說我有這樣的:GLSL向量加法VS多浮
float x2 = q.x + q.x;
float y2 = q.y + q.y;
float z2 = q.z + q.z;
VS此:
vec3 q2 = q.xyz + q.xyz;
是向量運算更好/更快,或者這是不是在GLSL水平的擔憂?
說我有這樣的:GLSL向量加法VS多浮
float x2 = q.x + q.x;
float y2 = q.y + q.y;
float z2 = q.z + q.z;
VS此:
vec3 q2 = q.xyz + q.xyz;
是向量運算更好/更快,或者這是不是在GLSL水平的擔憂?
是它的速度更快,GPU可量化操作進行了優化,使用工具,如AMDs ShaderAnalyzer或NVIDIAs nSight你可以看到生成的彙編揭示了你的第一個片段在3個標OPS結果,而你的第二個是一個向量運算。
你可能會發現[這篇文章](http://aras-p.info/blog/2010/09/29/glsl-optimizer/)有趣 – gman
我想我在這個時候以前嘗試過這個隆隆,我不能讓它工作。我會再試一次。我很困惑,但我想從旋轉的答案中拿出工具,但我不知道生成的程序集如何針對不同設備生成不同的相關信息。 – pailhead