COCOS-HTML5-3.9版本学习(四)chipmunk物理引擎的测试

COCOS-HTML5-3.9版本学习(四)chipmunk物理引擎的测试,第1张

概述chipmunkLayer和上一篇的实现方式几乎一致,只是两种引擎有差别, var chipmunkLayer = cc.Layer.extend({ size: null, space: null, _debugNode: null, box: null, downUpAction: null, onEnter: function() { this._super(); thi

chipmunkLayer和上一篇的实现方式几乎一致,只是两种引擎有差别,

var chipmunkLayer = cc.Layer.extend({	size: null,space: null,_deBUGNode: null,Box: null,downUpAction: null,onEnter: function() {		this._super();		this.size = cc.director.getWinSize();		this.space = new cp.Space();		//初始化物理世界		this.initPhysics();		//初始化正方形		this.initBoxWithBody();		this.init();				//背景		var bg = cc.Layercolor.create(cc.color(0,0));		bg.attr({			anchorX: 0,anchorY: 0,x: 0,y: 0		});		this.addChild(bg);	},init: function() {		cc.sys.dumpRoot();		cc.sys.garbageCollect();		this.scheduleUpdate();	},initPhysics: function() { //初始化物理环境,增加边界		var winSize = this.size;		var space = this.space;		var staticBody = space.staticBody;		space.gravity = cp.v(0,-980); //重力		space.sleepTimeThreshold = 0.5; //休眠临界时间		space.collisionSlop = 0.5; //		//walls 四个边界		var walls = [			new cp.SegmentShape(staticBody,cp.v(0,0),cp.v(winSize.wIDth,// bottom			new cp.SegmentShape(staticBody,winSize.height),// top			new cp.SegmentShape(staticBody,// left			new cp.SegmentShape(staticBody,0) // right		];		for (var i = 0; i < walls.length; i++) {			var shape = walls[i];			shape.setElasticity(1); //d性			shape.setFriction(0); //摩擦			//space.addStaticShape( shape );			space.addShape(shape);		}	},initBoxWithBody: function() {		var winSize = this.size;		//物体的定义		var mass = 1;		var BoxWIDth = 32;		var body = new cp.Body(mass,cp.momentForBox(mass,BoxWIDth,BoxWIDth));		body.setPos(cc.p(winSize.wIDth / 2,winSize.height / 2));		this.space.addBody(body);		var shape = new cp.BoxShape(body,BoxWIDth);		shape.setElasticity(1); //d性		shape.setFriction(0); //摩擦		shape.setCollisionType(1);		shape.setLayers(3);		this.space.addShape(shape);		//创建一个箱子		this.Box = cc.Physicssprite.create(res.BoxPNG,cc.rect(0,BoxWIDth));		this.Box.setbody(body);		this.addChild(this.Box,1);	},update: function(dt) {		// chipmunk step		this.space.step(dt);	},});chipmunkLayer.scene = function() {	var scene = cc.Scene.create();	scene.addChild(new chipmunkLayer());	return scene;}

注意:我用的3.9版本的个别地方改变了。

源码地址:http://pan.baIDu.com/s/1ntVX6nZ

总结

以上是内存溢出为你收集整理的COCOS-HTML5-3.9版本学习(四)chipmunk物理引擎的测试全部内容,希望文章能够帮你解决COCOS-HTML5-3.9版本学习(四)chipmunk物理引擎的测试所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1076336.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存