- (void)setupcontext
//被繪製物件引數的設定
glkview *view = (glkview *)self.view;
view.context = context;
//顏色格式:rgba每個顏色通道站8位
view.drawablecolorformat = glkviewdrawablecolorformatrgba8888;
//深度格式:24位精度
view.drawabledepthformat = glkviewdrawabledepthformat24;
//設定當前上下文
[eaglcontext setcurrentcontext:context];
//開啟深度測試
glenable(gl_depth_test);
//清理螢幕(相當於設定螢幕顏色)
glclearcolor(1.0, 0.4, 0.3, 1.0);
}
- (void)setvertex;
//開闢緩衝區
gluint buffer;
glgenbuffers(1, &buffer);
glbindbuffer(gl_array_buffer, buffer);
//將頂點資料拷貝至緩衝區(相當於將頂點資料從cpu轉到gpu)
glbufferdata(gl_array_buffer, sizeof(vertexs), vertexs, gl_static_draw);
//開啟位置屬性並賦值至頂點著色器的位置屬性(glkvertexattribposition)
glenablevertexattribarray(glkvertexattribposition);
glvertexattribpointer(glkvertexattribposition, 3, gl_float, gl_false, sizeof(glfloat) * 5, (glfloat *)null+0);
//開啟紋理座標屬性並賦值至頂點著色器的紋理屬性(glkvertexattribtexcoord0)
OpenGL載入DDS壓縮紋理
網路上的影象庫很多,如 freeimage devil 等,庫很強大且支援多種格式,當然也包括 dds紋理。例如 freeimage 但是它這裡所說的支援 dds格式是指將壓縮格式的資料重新解壓成 rgba 畫素資料,將資料解壓後再繫結到 opengl 中就失去了其作為壓縮紋理的高效性 因 open...
iPhone OpenGL ES載入紋理的方法
載入一張名為xiezi.png的紋理 void loadtexture nsinteger texwidth cgimagegetwidth textureimage nsinteger texheight cgimagegetheight textureimage glubyte textured...
OpenGL載入紋理深入詳解。
opengl進行紋理對映的基本流程 1,首先要開啟紋理對映的功能。glenable gl texture 2d 2,載入位圖資源。3,將位圖資源轉化成紋理。4,釋放位圖資源。5,使用紋理,繪圖。閒話不多說,直接上 這裡插一句,在opengl裡面,申明乙個紋理 位圖轉化成紋理 需要三個步驟 1,首先我...