2010-08-21 71 views
2

我想自定義來自FlowCover(Cover Flow翻拍)示例代碼的反射。現在,反射(紋理)只是透明的,但我希望它具有漸變,以便紋理變得完全透明。iPhone OpenGL - 如何漸變淡出質感?

如何用OpenGL實現這種效果?這是處理紋理的代碼。

glPushMatrix(); 
glBindTexture(GL_TEXTURE_2D,fcr.texture); 
glTranslatef(trans, 0, 0); 
glScalef(sc,sc,1.0); 
glMultMatrixf(m); 
glDrawArrays(GL_TRIANGLE_STRIP,0,4); 

// reflect 
glTranslatef(0,-2,0); 
glScalef(1,-1,1); 
glColor4f(0.5,0.5,0.5,0.5); 
glDrawArrays(GL_TRIANGLE_STRIP,0,4); 
glColor4f(1,1,1,1); 

glPopMatrix(); 

歡迎提供任何提示或關鍵詞。

非常感謝。

回答

1

我對這個問題的解決方案是去除openGL反射和路徑圖像反射和漸變到FlowCower。 Here是創建圖像反射的一個很好的例子。

1

用漸變方式繪製反射是個好主意。^_^

我覺得你可以放一個光源,並改變項目視圖的法向量。光源會產生一些漸變效果。

1

你可能想看看多紋理。您可以使用第一種顏色和第二種顏色的alpha值組合基礎紋理和漸變紋理。看看glTexEnvi命令。