Re: [問題] OpenGL 選特定物件配合按鍵移動問題
※ 引述《capucino (是人心在動...)》之銘言:
: : 查了一下用按鍵控制似乎是對整個openGL所畫的物體做反應
: : 比方說按方向鍵→ ,
: : 若程式設定為向右移,假設裡面有一個茶壺 和一個方塊
: : 則茶壺和方塊皆往右移
: : 但如果想要只讓某特定物件作移動或旋轉,
: : 該怎麼辦呢?
: : 是用 glMatrixMode(GL_MODELVIEW);
: : glLoadIdentitt();
: : 指定當前的model
: : 但是按鑑按下去怎麼知道是我只讓"此model" 作反應呢?
: : ps.我是用BCB寫的 感謝
也可以這樣做
class SceneObject
{
...
public:
void Render(void);
void Rotate(double angle, const Vector3& axis);
void Translate(const Vector3& vec);
private:
Matrix4x4 m_WorldMatrix;
};
類似這樣,每個物體自己記自己的位置
這樣畫的時候只要 glLoadIdentity 跟 glMultiMatrix 就好了
也很容易配合 glSelectBuffer 來運算
至於 Vector3 跟 Matrix4x4 這種東西,我覺得如果常寫圖學的程式的話,這種基礎的
數學函式庫都是必備的,網路上很多,隨便拿一個來用就好
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.168.24.177
→
05/13 22:41, , 1F
05/13 22:41, 1F
推
05/13 22:51, , 2F
05/13 22:51, 2F
→
05/13 22:52, , 3F
05/13 22:52, 3F
→
05/13 22:52, , 4F
05/13 22:52, 4F
→
05/13 22:53, , 5F
05/13 22:53, 5F
→
05/13 22:53, , 6F
05/13 22:53, 6F
推
05/13 22:58, , 7F
05/13 22:58, 7F
→
05/14 02:39, , 8F
05/14 02:39, 8F
→
05/14 02:40, , 9F
05/14 02:40, 9F
→
05/14 02:41, , 10F
05/14 02:41, 10F
推
05/14 08:58, , 11F
05/14 08:58, 11F
推
05/14 10:10, , 12F
05/14 10:10, 12F
→
05/14 10:11, , 13F
05/14 10:11, 13F
→
05/14 10:12, , 14F
05/14 10:12, 14F
→
05/14 10:13, , 15F
05/14 10:13, 15F
→
05/14 10:18, , 16F
05/14 10:18, 16F
→
05/14 10:19, , 17F
05/14 10:19, 17F
推
05/14 10:42, , 18F
05/14 10:42, 18F
推
05/14 10:49, , 19F
05/14 10:49, 19F
→
05/14 10:50, , 20F
05/14 10:50, 20F
→
05/14 10:50, , 21F
05/14 10:50, 21F
→
05/14 10:50, , 22F
05/14 10:50, 22F
→
05/14 10:51, , 23F
05/14 10:51, 23F
討論串 (同標題文章)
完整討論串 (本文為第 3 之 3 篇):