安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

从零开始做一个俄罗斯方块游戏5形状碰撞检测(下)

5月21日 楚倾云投稿
  我是会做游戏也会教你做游戏的小蚂蚁,欢迎关注我,每天学点儿做游戏的知识。
  嗨!大家好,我是小蚂蚁。
  今天,我们来继续学习形状碰撞检测的剩余两个部分。
  两侧的碰撞
  如图,形状1不论是向左还是向右移动,只要形状上的任何一个方块两侧有其它的方块,就会发生碰撞,此时形状就不能再向左或者右移动。
  其实,两侧的碰撞判断跟我们上一节讲过的向下移动的碰撞判断原理是一样的,向下碰撞检测的是每一个方块下方的位置是否有其它方块,那么向左右碰撞检测的就是每个方块左右侧的位置是否有其他的方块。
  关于什么是计算点,如何获取计算点在数据表格中的行列位置,以及如何遍历当前图形的数据,我们在上一节中已经详细讲过了,这里就不再赘述了。总之,我们从计算点的位置开始,依次的遍历形状上的每一个格子位置,只要有任何一个格子左右方的数值为1,就证明发生碰撞了。
  来看一下向左和向右移动的积木逻辑。
  向左移动处理:
  左侧的碰撞检测:
  向右移动处理:
  右侧的碰撞检测:
  形状切换时的碰撞
  接下来,我们再来看一下最后的一种碰撞检测:形状切换时的碰撞。
  什么是形状切换时的碰撞呢?请看下面这张图。
  形状1由状态2切换到状态3时,右侧的方块会覆盖在已有的红色方块上,此时就发生了碰撞。在游戏中这种情况是不允许发生的,也就是说,我们需要预先判断将要切换的状态是否会与已有的方块发生碰撞,如果是的话,就不允许当前的形状切换状态。
  具体的碰撞检测过程是这样的:
  首先,获取将要切换的那个状态的形状数据,然后逐个的进行检查,只要有一个方块位置上的数据为1,并且在数据网格中的相同位置的数据也是1,就证明发生了碰撞。
  这里的碰撞跟之前讲过的几种碰撞大体流程上是类似的,只不过有两点不同。第一,用于碰撞检测计算的形状数据是下一个状态的形状数据;第二,碰撞检测的位置不是左边,右边或者下边,而是当前方块的位置。
  接着,来看一下具体的实现。
  首先,为形状创建两个变量,一个是当前状态,一个是目标状态。
  然后,来看切换状态的积木逻辑。
  最后,来看一下状态碰撞检测积木的逻辑。
  切换的碰撞检计算:
  这里重点需要理解的是预判断,即我们假设形状切换到了下一个状态,然后使用这个状态的数据进行计算判断,如果有碰撞的话,则不允许当前的形状进行状态切换,如果没有碰撞的话,则允许当前的形状进行状态切换。
  其实,前面的三种碰撞检测也都是预判断,我们先判断形状下方,左方或者右方是否有碰撞,有的话则不能移动,没有的话则可以移动。
  对于碰撞的检测很像是进行一场演习,如果演习出了问题(发生碰撞),就要立刻停止正式行动,如果演习顺利的话(没有碰撞),再进行正式行动。
  关于形状碰撞检测的内容很多,所以分了两篇来讲解。这里我只以形状1为例进行了讲解,但是在俄罗斯方块游戏中一共是有7种形状,对于其它的几种形状,碰撞检测的原理也都是一样的,个别形状稍有差异而已。
  碰撞检测的实现方法是多种多样的,甚至是不停变化的,但是其中的原理是不变的,希望你能够理解并掌握其中的原理,这样才能更好的应对变化。
投诉 评论 转载

从零开始做一个俄罗斯方块游戏5形状碰撞检测(下)我是会做游戏也会教你做游戏的小蚂蚁,欢迎关注我,每天学点儿做游戏的知识。嗨!大家好,我是小蚂蚁。今天,我们来继续学习形状碰撞检测的剩余两个部分。两侧的碰撞……今年流行的100件T恤,照着穿还没有正式进入夏天,就已经开始渴望夏至傍晚的夕阳、蝉鸣、以及微风吹过T恤留下的绵绵情意。都说没有T恤的夏天,是不完整的。从超模到各大博主,纷纷都用一件简单的T恤穿出……广东送走2人,辽宁接近补强!北京无缘捡漏,山东确定3外援CBA休赛期,虽然说外界的关注度都在男篮征战世预赛,亚洲杯上,但对于俱乐部的老总们,却是一年当中,最为繁忙的时间段,外援的挑选,年轻球员是否符合上调一队的标准,以及围绕如今的阵……童瑶长得美,演技过关,为何口碑越来越差?犯了很多演员的通病《心居》自从开播以来就热度不断讨论不断,包括剧中的诸多选角也成为大家追剧后热议的话题,比如童瑶和她饰演的顾清俞,网上就隔三差五出现话题和讨论,像什么童瑶演技啊顾清俞人设啊等等,……美白的路上,你都踩过哪些坑?成分控来帮你揭开科学美白的秘密暑夏渐消,秋意已来。经过一整夏的曝晒,你的皮肤是否黑了几度?美白始终是爱美人士的追求,民间亦有一白遮百丑的说法。为了更安全健康地美白,近几年成分控大行其道,你是否也是其中一员?……乔治帕里西论生物学与统计物理学相遇之美妙!2021年诺贝尔物北京时间10月5日下午5:45左右,2021诺贝尔物理学奖评选结果揭晓美籍日裔气候学家真锅淑郎(SyukuroManabe)、德国海洋学家克劳斯哈塞尔曼(KlausHas……夏天吃辣的正确打开方式,建议收藏2022年已过去三分之一,马上就要迎来夏季了,小龙虾、烧烤、火锅等等都开始摆出来了。很多喜欢吃辣的朋友一年四季都是无辣不欢,但是到了夏季,天气炎热,很多人担心在夏天吃辣会对身体……成功者具备的20个人性思维1、利他思维一个人能有多大的成功,取决于有多少人希望他获得成功。因为这种成功,是对他人有利的。这一点,哪怕是一些伟人也是如此(比如说打士豪、分田地)。2、分钱思维……老皮奎特道歉声明永远不会对汉密尔顿种族歧视此前言论被谣传北京时间6月29日消息,尼尔森皮奎特为他针对刘易斯汉密尔顿的不当言论发表道歉声明,并否认有其有有任何种族歧视的意图。皮奎特解释说,他使用的这个词在巴西葡萄牙语中被广泛地用作‘家……和猪小发看遍人间风景,尝尽人间美味美食可以说是数不胜数,美景可以说是形形色色。人生最大的快乐莫过于看遍人间风景,尝尽人间美味。在很多人的潜意识里面,都认为一边旅游,一边尝尽人间美味才是最快乐的事情。我认为……目前最优秀的4款直屏手机,太贵的咱们不聊,价格都在3000元相信很多打游戏的小伙伴都在追求直屏手机,今天就来大大满足直屏爱好者,以下这四款直屏旗舰,不仅好看而且耐用,价格还十分公道,感兴趣的小伙伴不妨了解一下。iQOO9iQOO9……5千元人民币兑换2万3泰铢,在泰国能做什么?看完心里有数了5000元能兑换23000泰铢,这笔钱能在泰国享受哪些服务呢?(此处已添加小程序,请到今日头条客户端查看)说出来估计很多网友都不信。众所周知,泰国凭借独特的宗教信仰……
小米今年首款直屏旗舰曝光搭载天玑9000120W快充大败局丨贝店的野心与败退湖人步行者交易曝光!两大明星后卫互换特斯拉手机今年会量产吗适用中小型企业的产品开发IPD流程这样的奶酪键盘,你会喜欢吗?黑爵AC067奶酪键盘入手ModelY第一,奔驰GLB这么多人买?国产宝马X5破4千,让人可惜!山西唐朝道观,建于峭壁之上,却荒废了很多年河南省政协委员建议尽快释放政策红利,支持民营房地产企业健康发能始终不阳,主要看运气,不是个人努力就能决定的魅族19X很酷天玑81005000mAh大电池,不走寻常路耳鸣,试试这这两种药,便宜又好用ONEPIECE行为人打架斗殴治安如何处理?我的兄弟姐妹观后感400字作文这3点做饭习惯会让肺结节找上门?医生做好这2点很重要坚持好习惯的名言警句精选康宝canbo消毒柜多少钱宝canbo消毒柜报价及消毒方式详雷公的辞职信白色糠疹怎么治疗小孩脸上有一块白一块白的一文带你了解教育智能投影机如何选GalaxyWatchActive4将采用5nmSoC,纯平我用一张纸对世界告白万事俱备!国乒2月征战5项外战,主力队员全副武装,2人备受期

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利