[問題] 請問3D物件移動及碰撞的問題(OpenGL)…

看板C_and_CPP作者 (Ascii)時間15年前 (2009/08/19 11:05), 編輯推噓7(704)
留言11則, 6人參與, 最新討論串1/1
大大們好…是這樣的…小的現在在練習OpenGL… 目前已經會在畫面上畫數張相框…相框以45度角整齊排列…框中有相片… 小的是利用指定材質再 glBegin(GL_QUADS); ... glEnd(); 來逐項畫出相框… 也知道如何利用glTranslatef(sx,sy,sz)來移動視角… 或利用glRotatef(an,rx,ry,rz)來翻轉角度… 我目前將畫圖的程式做在OnTimer裡…並將上面的變數依滑鼠的動作做加或減… 每次重畫時,再根據加減過後的變數來實現翻轉和視角的變化… 接下來小的想要實現一些動畫和碰撞…卻怎麼也想不到該怎麼做… 我想做的是當我點選到某張照片(A)時,此張照片會逐漸翻轉至正面… 而(A)以外的照片要向左或向右移…讓出位子給(A)翻轉… 若大大們不懂…請見下圖… http://asciiss.myweb.hinet.net/ACDOC.gif
想請問3D物件的碰撞該怎麼實做呢? 另外請問我該如何實現這種動畫的效果呢? 應該不會是要把翻轉的步驟一步一步的坐標寫出來吧? 請大大們幫我解答了…或有現成的類似範例可以借小的參考…WinAPI或MFC都可… 先謝謝大大們嘍…感激不盡… -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.128.209.50 ※ 編輯: Asciiss 來自: 220.128.209.50 (08/19 11:07) ※ 編輯: Asciiss 來自: 220.128.209.50 (08/19 11:07)

08/19 11:25, , 1F
你的點選是說用 滑鼠?
08/19 11:25, 1F

08/19 12:26, , 2F
這個不需要做碰撞,你需要的只是 selection buffer
08/19 12:26, 2F

08/19 12:30, , 3F

08/19 17:49, , 4F
嗯嗯…抱歉忘了說明…是用滑鼠點選沒錯…
08/19 17:49, 4F

08/19 23:35, , 5F
二樓正解 OpenGL就是用select buffer來點物件
08/19 23:35, 5F

08/20 10:34, , 6F
我會試試的…謝謝各位大大…
08/20 10:34, 6F

08/20 10:35, , 7F
那…請問…動畫的部分該怎麼做呢?感激不盡…
08/20 10:35, 7F

08/20 13:27, , 8F
預設的動畫就自己把軌跡算出來,然後隨frame更新.
08/20 13:27, 8F

08/22 11:44, , 9F
如果是用OpenGL ES ..selection buffer是不support的..
08/22 11:44, 9F

08/22 19:24, , 10F
其實原po這個case, 理論上可以靠window message與自訂自
08/22 19:24, 10F

08/22 19:25, , 11F
記的struct計算/處理click的位置, OpenGL只負責畫這樣XD
08/22 19:25, 11F
文章代碼(AID): #1AYsm0vC (C_and_CPP)