編輯:初級開發
public static final int CWJ_UP = 0;
public static final int CWJ_DOWN = 1;
public static final int CWJ_LEFT = 2;
public static final int CWJ_RIGHT = 4;
public static final int CWJ_FORWARD = 8; //向前
public static final int CWJ_BACKWARD = 16; //向後
下面我們做精確的角度旋轉修正值定義,我們用到yaw、pitch和roll,相信學過3D開發的網友不會對這些陌生的,我們就把他們對應為繞y、x、z軸的角度好了,如果你們沒有學過3D相關的知識這裡android開發網推薦大家可以通過Cube例子自定義Render來觀察這三個值對應立方體的旋轉角度。
Yaw在(0,0,0)中, 以xOz的坐標平面中圍繞y軸旋轉,如果是負角則我們定義為CWJ_YAW_LEFT 即往左邊傾斜,同理我們定義如下:
public static final int CWJ_YAW_LEFT = 0;
public static final int CWJ_YAW_RIGHT = 1;
public static final int CWJ_PITCH_UP = 2;
public static final int CWJ_PITCH_DOWN = 4;
public static final int CWJ_ROLL_LEFT = 8;
public static final int CWJ_ROLL_RIGHT = 16;
我們通過加速感應器可以獲得SensorEvent的四個值,今天android123給大家一個簡單示例,不考慮其他因素,在public int accuracy 、public Sensor sensor 、public long timestamp 和
public final float[] values 中,我們獲取values的浮點數組來判斷方向。
int nandroid123=CWJ_UP //向上
float ax = values[0];
float ay = values[1];
float az = values[2];
float absx = Math.abs(ax);
float absy = Math.abs(ay);
float absz = Math.abs(az);
if (absx > absy && absx > absz) {
if (ax > 0) {
nandroid123 = CWJ_RIGHT;
} else {
nandroid123 = CWJ_LEFT;
}
} else if (absy > absx && absy > absz) {
if (ay > 0) {
nandroid123= CWJ_FORWARD;
} else {
nandroid123= CWJ_BACKWARD;
}
} else if (absz > absx && absz > absy) {
if (az > 0) {
nandroid123 = CWJ_UP;
} else {
nandroid123 = CWJ_DOWN;
}
} else {
nandroid123 = CWJ_UNKNOWN;
}
有關偏向角度問題,我們將在下一次詳細講述,對於一般的2D游戲,我們可以參考本文來實現重力控制,所以總體來說android游戲開發比較簡單易懂,android平台使用的Java語言還是很適合做游戲的。在邏輯表達上更清晰。
最近逛其它論壇的時候看到有這樣一個問題,需要界面加載完成後自動彈出軟鍵盤。開始我認為沒有那麼麻煩,最後自己做了一個小例子,還真不好搞定,直到昨天再想這個的問題的時候,想
android SDK提供了一個強大的類Drawable,Drawable這個抽象類到底代表了什麼,如何使用?Drawable是個很抽象的概念,通過簡單的例子程序來學習
在經過長時間的等待之後我們在今天終於看見了看見了全新的Google Reader軟件,當然更為難能可貴的是這款軟件竟然是Google官方推出的,目前廣大的用戶已經可以在
谷歌於去年12月底正式推出了Android 2.3姜餅系統,支持NFC近場通訊功能成為該系統最大亮點之一。今日,谷歌正式發布了android 2.3.3 SDK,實現了