日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

cocos2d-x游戏实例(3)-获得地图索引

發布時間:2024/4/11 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 cocos2d-x游戏实例(3)-获得地图索引 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

小滿(bill man)個人原創,歡迎轉載,轉載請注明地址,小滿(bill man)的專欄地址http://blog.csdn.net/bill_man

我們不僅要顯示地圖,還要對地圖進行一些邏輯操作,比如地圖的碰撞等,要獲得地圖的屬性,必須要獲得地圖的索引,就是地圖的行列值,那么我們如何根據坐標獲得地圖的索引值呢?本文將介紹Tiles工具支持的兩種地圖中根據坐標獲得地圖的索引值,普通地圖和45度角地圖

首先普通地圖比較簡單,就是用坐標值除以圖素的寬高即可,這也是一種比較常用的地圖表現方法。

下面介紹45度角的根據坐標獲得地圖的索引值,首先來看一下45度角地圖


就是一個菱形,我們從幾何的角度來轉換坐標,得到的像素寬高并不是真實的圖素寬高,而是每個小圖素塊的菱形的對角線的長,這樣一來問題就轉變為求解這個菱形中點對應的菱形棱長的問題


首先抱歉,我的圖畫的不好,A就是我們的坐標點,整個地圖就是這個菱形我們求出DCCB就分別就可以除以圖素菱形棱長就可以求得對應索引坐標,這里要說明的是ABCD是個平行四邊形(雖然看起來......),所以,對于三角形ADC,我們只要獲得ADDC的長就可以(AD等于BC),我們可以通過正弦定理解得(AD/sinACD?=?AC/sinADC?=?DC/sinCAD)因為我們可以求出AC(兩點距離公式),我們可以獲得AC關于水平線的角,通過差角公式可以獲得角ACD,角CAD,然后角CDA也就獲得了,三角形也就解開了,我們分開A點在C點左和C點右的情況,代碼如下mystatic5是根號5?mystatic2是根號2?mystatic是菱形棱長(圖素高*根號5)

如有錯誤之處,希望大家多多指正

下一篇繼續游戲實例。

總結

以上是生活随笔為你收集整理的cocos2d-x游戏实例(3)-获得地图索引的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。