cocos creator基础-(三十二)cc.Graphics组件和cc.Camera组件

cocos creator基础-(三十二)cc.Graphics组件和cc.Camera组件,第1张

概述cc.Graphics组件   1: Alpha 混合的算法; 2: LineWidth 线的宽度; 3: Line Join 接头的方式: BEVEL, MITER, ROUND 4: Line Cap 模式: BUIT, Round, SQUARE 5: Stoker Color: 线的颜色 6: Fill Color: 填充颜色 7: Miter Limit: 10;   Graphics命 cc.Graphics组件

 

1: Alpha 混合的算法; 2: linewidth 线的宽度; 3: line Join 接头的方式: BEVEL,MITER,ROUND 4: line Cap 模式: BUIT,Round,SQUARE 5: Stoker color: 线的颜色 6: Fill color: 填充颜色 7: Miter limit: 10;

 

Graphics命令

// 需要先给节点绑定cc.Graphics组件var graphics = this.getComponent(cc.Graphics);// 布径,movetographics.moveto(-50,50);graphics.lineto(-50,-50);graphics.lineto(50,50);graphics.close(); // 组成一个封闭的路径// end // 画线,填充;graphics.stroke();graphics.fill();// graphics.clear();@H_301_74@    

 

摄像机cc.Camera
1: 所有的物体都是由摄像机绘制出来的; 2:culling Mask: 这个摄像机拍摄的物体的类型; 3:depth:根据摄像机的depth来决定哪个摄像机先绘制,哪个后绘制;     值越小越先绘制 4: clearFlags: 摄像机清屏设置;
坐标转换
1: 当摄像机移动后,鼠标点击的位置,是摄像机下的坐标; 2: 摄像机坐标转世界坐标:   camera.getCameraToWorldPoint(point,out); 3: 世界坐标转摄像机坐标:   camera.getWorldToCameraPoint(point,out);   足球移动demo

//follow_target.Js 摄像机跟随cc.Class({    extends: cc.Component,propertIEs: {        // foo: {        //     // ATTRIBUTES:        //     default: null,// The default value will be used only when the component attaching        //                           // to a node for the first time        //     type: cc.SpriteFrame,// optional,default is typeof default        //     serializable: true,default is true        // },        // bar: {        //     get () {        //         return this._bar;        //     },        //     set (value) {        //         this._bar = value;        //     }        // },        target: {            type: cc.Node,default: null,},// liFE-CYCLE CALLBACKS:    // onLoad () {},    start() {    },update(dt) {        if (this.target === null) {            return;        }        var w_pos = this.target.convertToWorldspaceAR(cc.v2(0,0)); // cc.v2 ---> cc.p        var pos = this.node.parent.convertToNodeSpaceAR(w_pos);        this.node.x = pos.x;        this.node.y = pos.y;    },});@H_301_74@          
// game_ctrl.Js 捕捉toucheventvar nav_agent = require("nav_agent");cc.Class({    extends: cc.Component,        camera: {            type: cc.Camera,player: {            type: nav_agent,map: {            type: cc.Node,    start() {        this.node.on(cc.Node.EventType.touch_START,function(e) {            var camrea_pos = e.getLocation(); // 除非camrea (0,0) 否者你要转换一下啊;             var w_pos = this.camera.getCameraToWorldPoint(camrea_pos);            var pos = this.map.convertToNodeSpaceAR(w_pos);            this.player.walk_to_map(pos);        }.bind(this),this);    },// update (dt) {},});@H_301_74@          
// nav_agent.Js角色位移代码cc.Class({    extends: cc.Component,        speed: 100,    start() {        this.is_waling = false;    },walk_to_map(dst) {        var src = this.node.getposition();        var dir = dst.sub(src); // cc.pSub dst.sub; cc.pSub(dst,src);        var len = dir.mag(); // cc.pLength;        if (len <= 0) {            return;        }        this.walk_time = len / this.speed;        this.Now_time = 0;        this.vx = this.speed * (dir.x / len);        this.vy = this.speed * (dir.y / len);        this.is_waling = true;    },update(dt) {        if (this.is_waling === false) {            return;        }        this.Now_time += dt;        if (this.Now_time > this.walk_time) {            dt -= (this.Now_time - this.walk_time);        }        var sx = this.vx * dt;        var sy = this.vy * dt;        this.node.x += sx;        this.node.y += sy;        if (this.Now_time >= this.walk_time) {            this.is_waling = false;        }    },});@H_301_74@                                    	          总结       

以上是内存溢出为你收集整理的cocos creator基础-(三十二)cc.Graphics组件和cc.Camera组件全部内容,希望文章能够帮你解决cocos creator基础-(三十二)cc.Graphics组件和cc.Camera组件所遇到的程序开发问题。

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

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存