【2014-02-19】cocos2dx学习笔记:水果忍者划痕效果
[历史归档]本文原发布于 cstriker1407.info 个人博客内容为历史存档仅供参考。发布时间2014-02-19 标题cocos2dx学习笔记水果忍者划痕效果分类编程 / C C / cocos2dx 标签cocos2dx·划痕cocos2dx学习笔记水果忍者划痕效果代码备份.h文件.m文件分析最近游戏中用到了划痕效果就在网上google了一下好多资源啊。作者找了一个感觉还不错。在这里备份下。参考【 http://blog.csdn.net/u012945598/article/details/17609281 】。代码备份.h文件#ifndef__RAZER_LAYER_H__#define__RAZER_LAYER_H__#includecocos2d.hclassRazerLayer:publiccocos2d::CCLayer{public:conststaticintTag139269181913;CREATE_FUNC(RazerLayer);virtualboolinit();voiddraw();voiddrawLine();virtualvoidccTouchesBegan(cocos2d::CCSet*pTouches,cocos2d::CCEvent*pEvent);virtualvoidccTouchesMoved(cocos2d::CCSet*pTouches,cocos2d::CCEvent*pEvent);virtualvoidccTouchesEnded(cocos2d::CCSet*pTouches,cocos2d::CCEvent*pEvent);std::listcocos2d::CCPointpointList;};#endif// __RAZER_LAYER_H__.m文件#includeRazerLayer.hUSING_NS_CC;boolRazerLayer::init(){if(!CCLayer::init()){returnfalse;}setTouchEnabled(true);returntrue;}voidRazerLayer::draw(){drawLine();}voidRazerLayer::drawLine(){inttickSubCount10;intpointListKeepCount500;for(inti0;itickSubCount;i){if(pointList.size()0){pointList.pop_front();}else{break;}}while(pointList.size()pointListKeepCount){pointList.pop_front();}floatmax_lineWidth5;floatmin_lineWidth1;intalpha_min10;intalpha_max200;intR100;//arc4random()%255;intG100;//arc4random()%255;intB100;//arc4random()%255;intpointListCountpointList.size();std::listCCPoint::iterator itpointList.begin();floatpointIndex0;for(;it!pointList.end();it){intdistanceToMiddlefabs(pointIndex-pointListCount/2);floatpercent1.0-(float)distanceToMiddle/(float)(pointListCount/2.0);floatlintWidthmin_lineWidthmax_lineWidth*percent;intalphaalpha_minalpha_max*percent;ccc4(R,G,B,alpha);ccPointSize(lintWidth);ccDrawPoint(*it);pointIndex;}}voidRazerLayer::ccTouchesBegan(CCSet*pTouches,CCEvent*pEvent){CCSetIterator itpTouches-begin();CCTouch*touch(CCTouch*)*it;CCPoint beginPointtouch-getLocationInView();beginPointCCDirector::sharedDirector()-convertToGL(beginPoint);// beginPoint 检测pointList.push_back(beginPoint);}voidRazerLayer::ccTouchesMoved(CCSet*pTouches,CCEvent*pEvent){CCSetIterator itpTouches-begin();CCTouch*touch(CCTouch*)*it;CCPoint nextPointtouch-getLocationInView();nextPointCCDirector::sharedDirector()-convertToGL(nextPoint);// nextPoint 检测CCPoint preMovePointtouch-getPreviousLocationInView();preMovePointCCDirector::sharedDirector()-convertToGL(preMovePoint);floatdistanceccpDistance(nextPoint,preMovePoint);if(distance1){intd(int)distance;for(inti0;id;i){floatdistanceXnextPoint.x-preMovePoint.x;floatdistanceYnextPoint.y-preMovePoint.y;floatpercenti/distance;CCPoint newPoint;newPoint.xpreMovePoint.x(distanceX*percent);newPoint.ypreMovePoint.y(distanceY*percent);pointList.push_back(newPoint);}}}voidRazerLayer::ccTouchesEnded(CCSet*pTouches,CCEvent*pEvent){pointList.clear();}分析代码原理比较清晰在touchmove的回调方法中获取两个手势点之间的所有的像素点让后将存储起来然后在每帧的绘制中根据每个点的位置设定不同的线宽然后将这个点绘制出来。就形成了划痕效果。如果要在指定的范围内进行划痕处理只要处理代码中的指定点即可。

相关新闻

从数字智能到物理智能体:深度解构具身智能时代的边缘计算、嵌入式实时系统与多形态智能体

从数字智能到物理智能体:深度解构具身智能时代的边缘计算、嵌入式实时系统与多形态智能体

第一部分:引论 | 自动化、智能化与具身化的三重边界2026年的AI产业正在经历一场静默的范式转移。当大语言模型已经"吃饱"了互联网上的文本、图像与代码,当软件智能体在云端能够自主调用API、编写程序、生成报告,数字世界的智能边际…

2026/7/29 15:58:45 阅读更多 →
MCP2026升级:AI基础设施迈向智能体时代

MCP2026升级:AI基础设施迈向智能体时代

AI INFRASTRUCTUREMCP 迎来第五次重大升级:从“工具调用协议”走向智能体应用基础设施2026 年 7 月 28 日,Anthropic 正式公布新版 Model Context Protocol 规范:MCP 2026-07-28。这是 MCP 发布以来的第五个正式规范版本,也是目前…

2026/7/29 15:58:45 阅读更多 →
OpenClaw 一键部署完整教程,Windows环境自动化工具安装排坑指南

OpenClaw 一键部署完整教程,Windows环境自动化工具安装排坑指南

🔥前言:Win11 环境运行 OpenClaw 必读说明 OpenClaw(因其图标酷似小龙虾,在社区中常被昵称为“小龙虾”)是一款备受关注的本地优先 AI 智能体项目。它基于开源协议开发,能够通过自然语言指令驱动计算机完成…

2026/7/29 15:57:45 阅读更多 →

最新新闻

C++ constexpr:编译期计算的核心机制与工程实践

C++ constexpr:编译期计算的核心机制与工程实践

1. 项目概述:为什么我们需要 constexpr ? 如果你写过一段时间的 C,尤其是接触过一些性能要求比较高的项目,或者尝试过编写一些模板元编程的代码,那你大概率遇到过这样的场景:你希望一个值在编译时就确定下…

2026/7/29 16:08:49 阅读更多 →
多人联机游戏收款系统,你充进去的钱真的能随时退回来吗?

多人联机游戏收款系统,你充进去的钱真的能随时退回来吗?

你有没有遇到过这种情况:在某款多人联机游戏里氪了一单648,结果道具没到账,找客服排队两小时,最后被告知“系统异常,请等待24小时”;或者孩子偷偷用你的手机充值了几千块,申请退款时却被告知“无…

2026/7/29 16:08:49 阅读更多 →
Java SSL证书过期导致SSLHandshakeException的快速定位与应急处理方案

Java SSL证书过期导致SSLHandshakeException的快速定位与应急处理方案

1. 项目概述:当SSL证书过期,你的应用会发生什么? “javax.net.ssl.SSLHandshakeException”,这个异常对于任何依赖HTTPS进行网络通信的Java开发者来说,都像是一个不期而至的“老朋友”。它通常在你最不希望的时候出现—…

2026/7/29 16:08:49 阅读更多 →
一级支付商户,真的是游戏公司绕不开的“资金身份证“吗?

一级支付商户,真的是游戏公司绕不开的“资金身份证“吗?

游戏圈有个绕不开的尴尬:美术、玩法、买量都能靠团队硬扛,唯独支付通道——尤其是"一级支付商户"这块招牌——让不少中小厂在开服前夜卡到失眠。玩家看不见这条线,但它决定厂商能不能把收入稳稳留下。为什么"一级"两个字…

2026/7/29 16:08:49 阅读更多 →
3分钟掌握:Windows下一键ncm转mp3的完整免费方案

3分钟掌握:Windows下一键ncm转mp3的完整免费方案

3分钟掌握:Windows下一键ncm转mp3的完整免费方案 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 您是否曾在网易云音乐下载了心爱的歌曲&#xff0…

2026/7/29 16:08:49 阅读更多 →
draw.io桌面版:免费开源图表工具的终极使用指南

draw.io桌面版:免费开源图表工具的终极使用指南

draw.io桌面版:免费开源图表工具的终极使用指南 【免费下载链接】drawio-desktop Official electron build of draw.io 项目地址: https://gitcode.com/GitHub_Trending/dr/drawio-desktop 还在为寻找一款既专业又免费的图表工具而烦恼吗?你是否需…

2026/7/29 16:07:49 阅读更多 →

日新闻

【RT-DETR多模态创新改进】CVPR 2025 | 独家特征融合创新改进篇 | 引入RLAB残差线性注意力模块,有效融合并强调多尺度特征,多种改进点,适合红外与可见光融合目标检测任务,有效涨点

【RT-DETR多模态创新改进】CVPR 2025 | 独家特征融合创新改进篇 | 引入RLAB残差线性注意力模块,有效融合并强调多尺度特征,多种改进点,适合红外与可见光融合目标检测任务,有效涨点

一、本文介绍 🔥本文在RT-DETR多模态融合目标检测中引入RLAB残差线性注意力模块,可在不同模态特征交互阶段进行多次残差细化,使可见光、红外等特征在尺度、语义和空间位置上更好对齐;随后将细化特征与解码器输出拼接并生成Q、K、V,通过线性注意力自适应强化关键通道、目…

2026/7/29 0:00:23 阅读更多 →
AI编程系列02:合并知识功能,给 AI 问数和 RAG 场景打基础

AI编程系列02:合并知识功能,给 AI 问数和 RAG 场景打基础

AI编程系列02:合并知识功能,给 AI 问数和 RAG 场景打基础 在上一期「AI编程系列」中,我们学习了如何构建一个基础的 AI 问答系统,通过简单的输入输出让模型回应问题。但现实世界中的 AI 应用往往需要处理更复杂的场景:…

2026/7/29 0:00:23 阅读更多 →
AI智能体开发实战:从工具调用到企业级部署

AI智能体开发实战:从工具调用到企业级部署

1. 从被动问答到主动执行:AI Agent的范式转变过去两年,大语言模型最显著的应用形态是聊天机器人——用户提问,AI回答。但真正的生产力革命发生在2023年下半年:当AI学会主动调用工具完成任务时,生产力工具的历史被彻底改…

2026/7/29 0:00:23 阅读更多 →

周新闻

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 道路桥梁裂缝检测数据集 道路桥梁病害识别检测数据集

深度学习道路桥梁裂缝检测系统 数据集6000张 完整源码已标注数据集训练好的模型环境配置教程程序运行说明文档,可以直接使用!系统支持图片、视频、摄像头等多种方式检测裂缝,功能强大实用。 1数据集6000张 8各类别

2026/7/28 12:04:22 阅读更多 →
深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

深度学习YOLO模型如何训练 PUBG 绝地求生目标检测数据集

pubg数据集 精选原图1.42万数据 1.49万标签 无任何重复、算法增强或冗余图像! pubg绝地求生目标检测数据集 1分类:e_body,14905个标签,txt格式 共计14244张图,99%为640*640尺寸图像 适合yolo目标检测、AI训练关键词&am…

2026/7/29 14:34:28 阅读更多 →
Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex英雄目标检测数据集 深度学习框架YOLO如何训练APEX数据集

Apex检测数据集数据集详情检测类别: allies enemy tag图片总量:7247张训练集:5139张验证集:1425张测试集:683张标注状态:全部已标注,即拿即用数据格式:支持YOLO格式及其他格式&#…

2026/7/29 15:00:03 阅读更多 →

月新闻