1
着色器進/出變量的順序和/或大小是否會影響內存使用或性能?例如,有這些:glsl着色器進/出變量包裝
相當於// vert example:
out vec4 colorRadius;
// tess control example:
out vec4 colorRadius[];
// frag example:
in smooth vec4 colorRadius;
這些:
// vert example:
out vec3 color;
out float radius;
// tess control example:
out vec3 color[];
out float radius[];
// frag example:
in smooth vec3 color;
in smooth float radius;
是否存在與第二種形式的任何額外費用或將編譯器在內存中把它們捆綁在一起,並把它們完全一樣?
總的來說,我同意「優化瓶頸」哲學,但同時我也學會盡可能地儘量優化,只要它不會對易讀性產生不利影響。 – atb
@atb:不可能「在編寫時進行優化」,因爲幾乎不可能評估代碼的所有不同類型的副作用。如果通過分析發現,還有一些不成熟的優化很可能會使您陷入死衚衕,您最好優化一些不同的東西,但是您的早期「優化」需要完全重寫才能做到這一點。 – datenwolf