Your SlideShare is downloading. ×
0
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Collision
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Collision

654

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
654
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. "Less" about{COLLISION}
  • 2. 小胖只有一个姓名 : 魏子钧职务 : 盛大创新院 研究员E-Mail : finscn@gmail.comBlog : http://fins.iteye.com新浪微博 : @大城小胖
  • 3. [ Game Dev ]
  • 4. 计算机之子@寒冬winter 老老师[ Game Dev ]
  • 5. Why 2D ?
  • 6. [ Rectangle ]
  • 7. y x,y width height x AABB
  • 8. y x,y width height x,y x AABB
  • 9. x,y x,y
  • 10. x,y x,y相交==!!相交
  • 11. x xy x,y x,yy
  • 12. x x y x,y x,y y
  • 13. Code判断是否不不相交
  • 14. Code判断是否相交 ==!是否不不相交
  • 15. Collision Box
  • 16. Collision Box
  • 17. Collision Box不不应总是使用AABB作为碰撞矩形
  • 18. 我就是不不掉下去,爱咋地咋地! 哼!
  • 19. 我就是不不掉下 去,爱咋地咋地! 哼!在非物理类的2D游戏里, 不不精确的碰撞检测 通常是可以接受的
  • 20. [ Polygon ]
  • 21. 矩形碰撞区域不不再合适
  • 22. 可将多边形近似分解成多个矩形 性能有时比多边形碰撞检测高
  • 23. 2D格斗游戏中 常用此法
  • 24. 分离轴定理(SAT)Separating Axis Theorem
  • 25. 不碰撞时,分离线有⼀一条或无数条
  • 26. SAT1. 在两个多边形之间,寻找分离轴2. 找到了了,则多边形未发生碰撞,否则发生碰撞
  • 27. SAT1. 在两个多边形之间,寻找分离轴2. 找到了了,则多边形未发生碰撞,否则发生碰撞证明两个多边形之间存在/不不存在分离轴
  • 28. line
  • 29. 必定有⼀一条分离线 平行于两个多边形的某⼀一条边
  • 30. 必定有⼀一条分离线 平行于两个多边形的某⼀一条边
  • 31. 平行于某⼀一条边,相当于...
  • 32. 相当于垂直于这⼀一条边的法线
  • 33. ( SAT++ )thanks,@miloyip
  • 34. 如果⼀一个多边形的 所有顶点都在另⼀一个多边形 的"外面", 则两者不相交
  • 35. http://weibo.com/1747724431/y2jf9h4Rf
  • 36. @miloyip 提供的 算法思路, 详见下面地址 http://weibo.com/1747724431/y2jf9h4Rf
  • 37. 凹多边形可近似分解成多个凸多边形(任何多边形,总是可以分解成多个三角形)
  • 38. Many[ Rectangles ]
  • 39. Simple & Bad 21 4 3 5 6 7 8 9
  • 40. 21 4 3 5 6 7 8 9
  • 41. 21 4 3 5 6 7 8 9
  • 42. Simple & Bad1.双重循环, 检测所有物体2.自己不不和自己检测3.彼此之间做过碰撞检测的不不再检测
  • 43. Grid & Good 21 4 3 5 6 7 8 9
  • 44. Grid & Good 21 4 3 5 6 7 8 9
  • 45. 21 4 3 5 6 7 8 9
  • 46. 21 4 3 5 6 7 8 9
  • 47. 21 4 3 5 6 7 8 9
  • 48. 21 4 3 5 6 7 8 9
  • 49. Grid & Good1. 先计算所有物体分别属于哪一个格子. 以物体某一点为基准(如AABB左上角)2. 格子i 内的物体两两检测3. 格子i 内的物体与 相邻格子内的物体做检测 注意: 格子要比最大物体的AABB大
  • 50. ( Grid++ )
  • 51. 1
  • 52. 21
  • 53. 21 3
  • 54. 21 4 3
  • 55. 21 4 3 5
  • 56. 21 4 3 5 6
  • 57. Grid & Better1. 计算 物体i 在哪些格子里, 并记录. 物体AABB覆盖的格子(一个物体可属于多个格子)2. 检测 物体i 与自己所在格子里所有物体的碰撞3. 记录检测过的碰撞关系4. i++5. 重复1到4 直到所有物体都检测完毕 注意: 格子大小与物体大小无关
  • 58. Grid & Better 2 41 3 5 7 6 9 8
  • 59. [ Collide ] & [ Block ]
  • 60. v
  • 61. dv
  • 62. overlapdv
  • 63. dv
  • 64. overlapdv
  • 65. dv
  • 66. overlapdv
  • 67. [ Tile Based ]
  • 68. WhatsTile Based?
  • 69. 以大小相同样式不不同的小方块为单位,构建游戏场景的一种2D游戏(如传统的超级玛丽)
  • 70. 可在设计地图时,手动定义地图的碰撞矩形
  • 71. 可以Tile为单位定义碰撞矩形
  • 72. 1 1
  • 73. 1 1
  • 74. 1 1
  • 75. 推荐阅读
  • 76. Q?A:THANKS

×