计算机中任何绘图都离不开坐标系只是在每种绘图中坐标系形式有些差异,比如平时做android的View,在自定义View中绘制直线,那么这个时候默认的是采用的是屏幕坐标系,即坐标原点在屏幕左上角,X轴向右,Y向下:
而在opengl中采用的是3维坐标:
坐标原点默认在屏幕的中间,即(width/2,height/2)位置上,z轴是从屏幕"内"指向屏幕外,而且还要注意原点和x,y轴平面是在屏幕的"表面",有引号,这个"表面"刚好是人看不到的面,所以如果你要画一条线,线端点(1,0,0),(0,1,0),直接画到屏幕上,将看不到显示,怎么办?很简单,这个坐标系是三维空间的,那么就将坐标系沿Z轴的负轴方向移动一点,将X,Y平面稍微向屏幕内部移动一点,就能够看到直线了,想象一下在三维空间中,将坐标系往屏幕里面推一下,那么x,y轴形成的平面就在屏幕里面了,在它上面的直线就可以看见了.后面有例子.
纹理坐标系:
一般坐标系都自由操作移动(或旋转).
基本了解了坐标系,后面就可以开始绘图了
根据上面的可以通过画直线画出OPENGL坐标系,这样就可以被看见了:
<1> : android studio新建PumpKinBasicGL10工程:程序如下:
package org.durian.pumpkinbasicgl10;
import android.app.Activity;
import android.opengl.GLSurfaceView;
import android.os.Bundle;
import org.durian.pumpkinbasicgl10.draw2d.PumpKinRenderer;
public class MainActivity extends Activity {
private GLSurfaceView mSurfaceView;
@Override
p