亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

JSR-184里封裝照相機的look-at方法

2019-11-18 16:14:20
字體:
來源:轉載
供稿:網友

  原文地址鏈接

JSR-184與Mascot Capsule v3主要的不同就是關于照相機的實現。JSR-184支持照相機結合矩陣堆棧處理,例如,我們經常使用transform對象移動照相機。而Mascot Capsule v3依靠”look-at”方法,這是在某些3D API里的通用方法。look-at方法從一個position,一個 look-at direction和一個up vector創建一個照相機轉換矩陣,為了方便Mascot Capsule v3與JSR-184之間的轉換,Digital Chocolate采納了Mascot Capsule v3照相機設計方法,并寫了一個支持JSR-184的包。

在JSR-184 API規范里,NodeTransform類指定了一系列方法。這些方法有利于在JSR-184實現look-at方法。然而,它被認為與JSR-184執行說明規范有所不同,有時甚至會忽略這一系列方法。

自己實現look-at方法其實并不復雜。下面的代碼例子是Digital Chocolate公司如何處理照相機的封裝設計。請注意Digital Chocolate公司在Mascot Capsule v3中使用整數來處理,而在設計更高層的游戲類設計中使用浮點數來處理。

/**
 * Wrapper method for setting look at camera.
 *
 * The method requires that look and up vectors normalized.
 */
public static final void setLookAt(float a_posX, float a_posY, float a_posZ,
   float a_lookX, float a_lookY, float a_lookZ,
   float a_upX, float a_upY, float a_upZ)
{
 // JSR-184 version
 if (USE_M3G)
{
  // Cross PRodUCt to get side vector
  float sideX = (a_lookY * a_upZ) - (a_lookZ * a_upY);
  float sideY = (a_lookZ * a_upX) - (a_lookX * a_upZ);
  float sideZ = (a_lookX * a_upY) - (a_lookY * a_upX);

  float inv_len = 1.0f /
(float) java.lang.Math.sqrt(sideX * sideX
+ sideY * sideY
+ sideZ * sideZ);
  sideX *= inv_len;
  sideY *= inv_len;
  sideZ *= inv_len;
    
  // make up vector perpendicular
  a_upX = (sideY * a_lookZ) - (sideZ * a_lookY);
  a_upY = (sideZ * a_lookX) - (sideX * a_lookZ);
  a_upZ = (sideX * a_lookY) - (sideY * a_lookX);
  // footnote: up is unit size because side and look are perpendicular
 
  sm_mtx[0] = sideX;
  sm_mtx[1] = a_upX;
  sm_mtx[2] = -a_lookX;
  sm_mtx[3] = a_posX; 
  sm_mtx[4] = sideY;
  sm_mtx[5] = a_upY;
  sm_mtx[6] = -a_lookY;
  sm_mtx[7] = a_posY; 
  sm_mtx[8] = sideZ;
  sm_mtx[9] = a_upZ;
  sm_mtx[10] = -a_lookZ;
  sm_mtx[11] = a_posZ; 
  sm_mtx[12] = 0.0f;
  sm_mtx[13] = 0.0f;
  sm_mtx[14] = 0.0f;
  sm_mtx[15] = 1.0f;
 
  sm_m3gTransform.set(sm_mtx); 
 }
 // Mascot version
 if (USE_MASCOT)
{
  sm_mascotTmpVectorA.set((int)a_posX, (int)a_posY, (int)a_posZ);
  sm_mascotTmpVectorB.set((int)(a_lookX * MASCOT_ONE),
(int)(a_lookY * MASCOT_ONE),
(int)(a_lookZ * MASCOT_ONE));
  sm_mascotTmpVectorC.set(0, DajmGraphics.MASCOT_ONE, 0);
  sm_mascotAffineTrans.lookAt(sm_mascotTmpVectorA,
sm_mascotTmpVectorB,
sm_mascotTmpVectorC);
 }
}


(出處:http://www.49028c.com)



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲日韩第一页| 国内偷自视频区视频综合| 欧美成人午夜激情| 伦理中文字幕亚洲| 日产精品99久久久久久| 91高清免费在线观看| 欧美疯狂做受xxxx高潮| 久久久欧美精品| 一本大道久久加勒比香蕉| 秋霞成人午夜鲁丝一区二区三区| 亚洲国产成人在线播放| 正在播放欧美视频| 日韩在线视频线视频免费网站| 欧美xxxx做受欧美| 91天堂在线视频| 欧美裸身视频免费观看| 影音先锋欧美在线资源| 中文字幕av一区| 亚洲国产精品一区二区三区| 国产婷婷成人久久av免费高清| 91精品国产自产在线观看永久| 伊人伊成久久人综合网站| 欧美高清不卡在线| 午夜剧场成人观在线视频免费观看| 中日韩午夜理伦电影免费| 亚洲精品白浆高清久久久久久| 久久电影一区二区| 欧美夫妻性生活视频| 色综合久久天天综线观看| 久久视频在线免费观看| 国产精品夜间视频香蕉| 国产一区二区三区直播精品电影| 国产日韩在线视频| 国产精品久久久久久久久久小说| 日韩电影大片中文字幕| 日本国产高清不卡| 91精品国产高清自在线| 成人精品视频99在线观看免费| 91亚洲精品在线观看| 欧美精品在线免费观看| 综合久久五月天| 亚州国产精品久久久| 国产精品日韩在线一区| 国产亚洲激情在线| 久久99精品视频一区97| 欧美精品成人91久久久久久久| 色婷婷久久一区二区| 超碰91人人草人人干| 国产精品免费看久久久香蕉| 亚洲精品中文字幕有码专区| 欧美激情综合色综合啪啪五月| 亚洲欧美国产日韩中文字幕| 欧美大片大片在线播放| 精品久久久久久电影| 国产精品专区第二| 欧美黑人国产人伦爽爽爽| 欧美黄色免费网站| 亚洲天堂网在线观看| 精品视频久久久| 国产91精品久久久| 亚洲精品欧美日韩专区| 亚洲国产日韩欧美在线图片| 91精品在线观看视频| 国产小视频国产精品| 91在线中文字幕| 国内伊人久久久久久网站视频| 久久中文字幕在线视频| 国产精品综合久久久| 92版电视剧仙鹤神针在线观看| 精品久久久久久亚洲精品| 久久久久久久久久国产精品| 自拍偷拍亚洲欧美| 国产一区红桃视频| 日本a级片电影一区二区| 亚洲视频在线观看| 日本欧美国产在线| 精品香蕉一区二区三区| 92版电视剧仙鹤神针在线观看| 久久精品99无色码中文字幕| 97久久久免费福利网址| 精品久久久久久久久久久久久| 亚洲3p在线观看| 在线日韩第一页| 欧美大片欧美激情性色a∨久久| 国语自产精品视频在免费| 97香蕉久久超级碰碰高清版| 91在线精品视频| 亚洲国产日韩欧美在线动漫| 青草热久免费精品视频| 日韩中文字幕网| 曰本色欧美视频在线| 日本一本a高清免费不卡| 久久人91精品久久久久久不卡| 久久人人爽人人爽人人片av高清| 国内精品模特av私拍在线观看| 中文字幕日韩av| 中文精品99久久国产香蕉| 91在线视频九色| 亚洲第一福利网| 国产精品成av人在线视午夜片| 精品国产乱码久久久久酒店| 国产精品电影在线观看| 欧美激情一二三| 91美女片黄在线观看游戏| 久久视频国产精品免费视频在线| 亚洲欧美日韩区| 欧美日韩一区二区三区在线免费观看| 久久久久久成人| 国自在线精品视频| 中文字幕成人精品久久不卡| 国产精品日韩欧美综合| 在线午夜精品自拍| 中文字幕无线精品亚洲乱码一区| 亚洲国产成人精品一区二区| 欧美性高跟鞋xxxxhd| 在线看国产精品| 91av在线视频观看| 国产狼人综合免费视频| 亚洲激情视频网站| 国产伦精品免费视频| 国产精品美女av| 668精品在线视频| 57pao国产精品一区| 97国产一区二区精品久久呦| 亚洲自拍av在线| 国产欧美韩国高清| 精品久久久久久久久久久| 91成人在线观看国产| 日韩久久午夜影院| 国产精品美女www爽爽爽视频| 91麻豆国产精品| 亚洲天堂免费观看| 国产综合色香蕉精品| 久久久久999| 中文字幕av一区中文字幕天堂| 亚洲女人天堂网| 欧美日韩亚洲91| 伊人伊成久久人综合网站| 欧美一区二区大胆人体摄影专业网站| 国产成人av在线| 亚洲乱码一区二区| 欧美成人黑人xx视频免费观看| 久久97精品久久久久久久不卡| 欧美成人全部免费| 国产精品99久久99久久久二8| 国产精品日韩欧美| 亚洲视频网站在线观看| 亚洲天堂成人在线视频| 免费不卡在线观看av| 色综合91久久精品中文字幕| 欧美xxxx做受欧美.88| 亚洲国产精品人人爽夜夜爽| 欧美最猛黑人xxxx黑人猛叫黄| 成人黄色免费片| 欧美最猛黑人xxxx黑人猛叫黄| 日韩专区在线观看| 日韩视频第一页| 久久久之久亚州精品露出| 亚洲无av在线中文字幕| 国产91精品久久久久久久| 最新国产精品亚洲| 亚洲欧洲成视频免费观看| 在线观看视频99| 国产成人一区二区三区小说|