Box2D教程4-复杂刚体的复杂外观.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Box2D教程4-复杂刚体的复杂外观

大伦子de空间 /大伦子/大伦子转载来源:?/Coming X原文链接:?/?p=1616Box2D教程4-复杂刚体的复杂外观——————————————–之前我们知道了如何创建标准几何体刚体及其外观,此教程主要解决如何创建复杂刚体的问题。Box2D使用多边形拼接形成复杂的外观。通过前面的教程我们知道使用下面两句来创建一个刚体。b2Body = b2World.createBody(b2BodyDef)b2Body.createFixture(b2FixtureDef)对于复杂刚体,b2Body和b2BodyDef还是一个,即始终是一个刚体,我们通过FixtureDef来实现多个多边形拼接,即创建多个b2FixtureDef,并多次执行b2Body.createFixture(b2FixtureDef)如果,鱼缸通过若干个四边形拼接而成而b2FixtureDef的shape属性需要提供一个多边形b2PolygonShape,此多边形可使用下面方法来创建。b2PolygonShape.setAsArray(veticesArray)此方法需要一个b2Vec2对象的数组,此数组每一个元素决定了一个顶点,数组元素的顺序按照顺时针排序(必须)。具体实现代码12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485private var _container:b2Body;[Embed(source=./assets/container.png)]public var ContainerImg:Class;?//添加容器的外观,并对齐好private function addContainerTexture():void{var img:Bitmap = new ContainerImg();this.addChild(img);?//调整图片的位置img.x = 43;img.y = 3;}private function createContainer():void{//容器的所有顶点组成的三维数组//第一维度是一个多边形//第二维度是多边形中的四个顶点//第三维度是每个顶点的x,y坐标var shapeCoords:Array = [[[61,55],[77,67],[39,135],[23,124]],[[23,124],[39,135],[25,220],[6,218]],[[6,218],[25,220],[44,305],[28,312]],[[28,312],[44,305],[94,372],[82,384]],[[82,384],[94,372],[167,413],[161,425]],[[161,425],[167,413],[250,424],[250,437]],[[250,438],[250,424],[339,416],[341,429]],?[[341,430],[339,416],[411,383],[418,393]],[[418,393],[411,383],[464,327],[478,334]],[[478,334],[464,327],[489,254],[504,252]],[[504,252],[489,254],[488,183],[504,177]],[[504,177],[488,183],[470,112],[488,103]],[[488,103],[470,112],[443,66],[465,63]],[[77,67],[72,46],[436,43],[443,66]]];//创建一个刚体定义var bodyDef:b2BodyDef = new b2BodyDef();bodyDef.type = b2Body.b2_staticBody;bodyDef.position.Set(20 / PIXEL_TO_METER, -10/PIXEL_TO_METER);//创建刚体_container = world.CreateBody(bodyDef);//为刚体创建修饰物//传递顶点数组作为参数createFixtrues(shapeCoords);}//创建Fixtures//根据顶点数组的第一维度,创建多个Fixtureprivate function createFixtrues(coords:Array):void{for(var i:int = 0; icoords.length; i++){var s

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档