国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網(wǎng)站 > 建站經(jīng)驗 > 正文

iOS Game模板碰撞檢測的一些細(xì)、節(jié)

2019-11-02 14:35:09
字體:
供稿:網(wǎng)友

   我們把需要檢測碰撞的物理設(shè)置物理體(以下我們把這個物理體稱作xx)

  xx.physicsBody=SKPhysicsBody(rectangleOfSize:CGSize(x:100,y:100))

  然后給這個物理體設(shè)置一個標(biāo)識(BitMaskType是自己新建的一個類)

  xx.physicsBody?.categoryBitMask=BitMaskType.xx

  最后設(shè)置會發(fā)生碰撞的物理(比如響應(yīng)與yy發(fā)生碰撞的事件)

  xx.physicsBody?.contactTestBitMask=BitMaskType.yy

  最后添加代碼

  func didBeginContact(contact: SKPhysicsContact) {

  println("發(fā)生碰撞")

  }

  我們可以發(fā)現(xiàn)的確發(fā)生了碰撞(以上部分粗略描述,若有疑問請自行百度)

  有時候我們會發(fā)現(xiàn)兩個物理題還未碰撞,但是系統(tǒng)就已經(jīng)響應(yīng)了碰撞事件,這個時候我們不妨將物理體的size設(shè)置的相對小一些。

  有的時候兩個物理體明明已經(jīng)發(fā)生碰撞了,但是系統(tǒng)并未響應(yīng)碰撞事件,這又是為什么呢?

  請注意我們的第一句代碼,也就是設(shè)置物理體大小的那一句,在這一句中我們設(shè)置了一個100*100的物理體,但是我們并未說明中心點,而默認(rèn)的center為CGPoint(0,0).

  如下圖顯示:

iOS Game模板碰撞檢測的一些細(xì)節(jié) 電腦高手

  紅色的正方形表示你想要創(chuàng)建物理體,而事實上系統(tǒng)創(chuàng)建的物理體則是黃色的正方形。這個物理體在屏幕中并不顯示,但事實上是這個物理體在發(fā)生碰撞。為什么會發(fā)生這樣的情況?原因是Xcode默認(rèn)的以坐標(biāo)的左下角為中心創(chuàng)建了一個100*100的正方形。為了解決這個問題,我們修改創(chuàng)建物理體的代碼。

  xx.physicsBody=SKPhysicsBody(rectangleOfSize:CGSize(x:100,y:100),center:CGPoint(x:0.5, y: 0.5))

  好的在上訴代碼中我們以坐標(biāo)(50,50)為中興創(chuàng)建

十個字網(wǎng)名[www.la240.com/html2017/1/27/]
了一個100*100的正方形,也就是我們想象中的紅色正方形。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 闸北区| 伊通| 葵青区| 和平区| 佛教| 江城| 乌鲁木齐市| 五大连池市| 界首市| 铁力市| 普兰县| 溧阳市| 莱西市| 驻马店市| 宜城市| 磴口县| 磐安县| 福安市| 荔浦县| 长汀县| 天津市| 井研县| 红原县| 丹江口市| 鄂托克前旗| 荆门市| 新巴尔虎右旗| 宜阳县| 秦安县| 南漳县| 满洲里市| 阿瓦提县| 科技| 永修县| 越西县| 新密市| 邵东县| 郎溪县| 铜陵市| 敖汉旗| 永登县|