cocos2dx lua 翻牌

这篇博客揭露了cocos2dx翻牌效果的实现原理,利用剪裁节点和遮罩技术,并提供了工程中test目录的实例。翻牌过程中,正面牌覆盖背面牌,两侧用白片图片模拟弯曲角度。博主提供了运行示例和资源下载途径,包括QQ群和作者资源页。
摘要由CSDN通过智能技术生成

真受不了一群人一点这种技术也要拿出来卖钱,真是恶心。
原理是cocos2dx 剪裁结点,遮罩技术,可以去工程的test目录看实例。
原理,搓牌时用牌的正面盖住背面,同时两边用两张白片图片盖住,模拟弯曲角度。
自己运行一下就全明白了。
使用方法
local GameCuoCardLayer=require("GameCuoCardLayer")
    self._layer:addChild(GameCuoCardLayer:create())

正文

 


--初始偏移
local beginoffset =70

local GameCuoCardLayer = class("GameCuoCardLayer", function()
    local gameLayer =  cc.LayerColor:create(cc.c4b(0, 0, 0, 125))
    return gameLayer
end)


function GameCuoCardLayer:create()
    local layer = GameCuoCardLayer:new(self);
    self.m_pListenerNodes = {}; -- 监听的牌
    self.m_pShowedNode = {};  -- 已经显示出来的牌
    layer:init()
    return layer;
end 

function GameCuoCardLayer:init()
    self.widget = {};
    self.m_endRub = false;
    local clipper = cc.ClippingNode:create();
    clipper:setPosition(0, 50 );
    self.widget.Panel_out = clipper;
    self.widget.Panel_out.m_srcPosition = cc.p( 0, 50  )

    --牌
    local faceNode = cc.Node:create()
    local cardImg = ccui.ImageView:create() 
    cardImg:loadTexture(string.format("big_card/%d (%d).png",1,10) ); --牌的颜色和大小
    cardImg:setPosition(cc.p( 640,-268 ))--268
    cardImg:setRotation(90 );
    faceNode:addChild( cardImg,10)
    cardImg:setScale( 1.2 );
    self.widget.Panel_out[ "Image_card" ] = cardImg;
    self.widget.Panel_out[ "Image_card" ].m_srcPositionY = -268;

    --白片
    local writeImg = ccui.ImageView:create() 
    writeImg:loadTexture("big_card/zhedang.png");--
    writeImg:setAnchorPoint(cc.p(0, 1));
    writeImg:setPosition(cc.p( 0, 680 ))
    cardImg:addChild( writeImg, 11 )
    self.widget.Panel_out[ "Image_card" ].writeImg1 = writeImg;

  
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值