Cocos2d-x - 如何将CCLayer的一部分设置为透明?

2024-01-08

我是新手cocos2d-x我需要你的帮助。

我需要使图层的触摸部分透明。

如何使图层的一部分透明?我曾想过使用ССClippingNode,但我找不到示例或文档。

我使用C++。谢谢。


在所有cocos2d-x版本中添加的TestCpp项目中,您可以找到CCClipingNode的示例。

如果您想使用 CCClipingNode 隐藏 CCNode 的一部分(例如“图层”),您应该将您的图层添加到 CCClipingNode。

这是您可以粘贴到 HelloWorld init 中的示例:

bool HelloWorld::init()
{

    if ( !CCLayer::init() )
    {
        return false;
    }

    CCSize visibleSize = CCDirector::sharedDirector()->getVisibleSize();
    CCPoint origin = CCDirector::sharedDirector()->getVisibleOrigin();
    addChild(CCLayerColor::create(ccc4(122, 144, 0, 255), visibleSize.width, visibleSize.height));

    //this is the layer that we want to "cut"
    CCLayer *layer = CCLayer::create();
    CCSprite* pSprite = CCSprite::create("HelloWorld.png");
    pSprite->setPosition(ccp(visibleSize.width/2 + origin.x, visibleSize.height/2 + origin.y));
    layer->addChild(pSprite, 0);

    //we need to create a ccnode, which will be a stencil for ccclipingnode, draw node is a good choice for that
    CCDrawNode * stecil = CCDrawNode::create();
    stecil->drawDot(ccp(visibleSize.width/2 + origin.x - 100, visibleSize.height/2 + origin.y), 30, ccc4f(0, 0, 0, 255));
    stecil->drawSegment(ccp(0, 0), ccp(visibleSize.width, visibleSize.height), 20, ccc4f(0, 0, 0, 255));

    //CCClipingNode show the intersection of stencil and theirs children
    CCClippingNode *cliper = CCClippingNode::create(stecil);
    //you want to hide intersection so we setInverted to true
    cliper->setInverted(true);
    cliper->addChild(layer);
    addChild(cliper);

    return true;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Cocos2d-x - 如何将CCLayer的一部分设置为透明? 的相关文章

  • 具有不同大小结构的结构数组的 malloc()

    如果每个结构都包含一个大小不同的字符串数组 那么如何正确地 malloc 一个结构数组 因此每个结构可能有不同的大小 并且不可能 realloc 结构体数量 sizeof 结构体名称 after malloc 初始大小 sizeof 结构名
  • 将字节数组转换为托管结构

    更新 这个问题的答案帮助我编写了开源项目GitHub 上的 AlicanC 现代战争 2 工具 https github com AlicanC AlicanC s Modern Warfare 2 Tool 你可以看到我是如何阅读这些数据
  • 从多线程程序中调用 system()

    我们正在开发一个用 C 编写的多线程内存消耗应用程序 我们必须执行大量的 shellscript linux 命令 并获取返回码 读完之后article http www linuxprogrammingblog com threads a
  • ASP.NET Core 与现有的 IoC 容器和环境?

    我想运行ASP NET 核心网络堆栈以及MVC在已托管现有应用程序的 Windows 服务环境中 以便为其提供前端 该应用程序使用 Autofac 来处理 DI 问题 这很好 因为它已经有一个扩展Microsoft Extensions D
  • 为什么大多数平台上没有“aligned_realloc”?

    MSVC有自己的非标准函数 aligned malloc aligned realloc and aligned free C 17和C11引入了 std aligned alloc 其结果可以是de分配有free or realloc B
  • CultureInfo 的实例(来自相同的文化)根据操作系统而变化

    我有一个网站 上面写着这样的日期 CultureInfo cultureInfo CultureInfo GetCultures CultureTypes AllCultures FirstOrDefault c gt string Equ
  • 将字符串中的“奇怪”字符转换为罗马字符

    我需要能够将用户输入仅转换为 a z 罗马字符 不区分大小写 所以 我感兴趣的角色只有26个 然而 用户可以输入他们想要的任何 形式 的字符 西班牙语 n 法语 e 和德语 u 都可以包含用户输入中的重音符号 这些重音符号会被程序删除 我已
  • C++中delete和delete[]的区别[重复]

    这个问题在这里已经有答案了 可能的重复 C 中的删除与删除 运算符 https stackoverflow com questions 2425728 delete vs delete operators in c 我写了一个包含两个指针的
  • 从 C 结构生成 C# 结构

    我有几十个 C 结构 我需要在 C 中使用它们 典型的 C 结构如下所示 typedef struct UM EVENT ULONG32 Id ULONG32 Orgin ULONG32 OperationType ULONG32 Size
  • mprotect 之后 malloc 导致分段错误

    在使用 mprotect 保护内存区域后第一次调用 malloc 时 我遇到分段错误 这是执行内存分配和保护的代码片段 define PAGESIZE 4096 void paalloc int size Allocates and ali
  • 将字符串转换为正确的 URI 格式?

    有没有简单的方法可以将电子邮件地址字符串转换为正确的 URI 格式 Input http mywebsite com validate email 3DE4ED727750215D957F8A1E4B117C38E7250C33 email
  • 劫持系统调用

    我正在编写一个内核模块 我需要劫持 包装一些系统调用 我正在暴力破解 sys call table 地址 并使用 cr0 来禁用 启用页面保护 到目前为止一切顺利 一旦完成 我将公开整个代码 因此如果有人愿意 我可以更新这个问题 无论如何
  • 2D morton 码编码/解码 64 位

    如何将给定 x y 的莫顿代码 z 顺序 编码 解码为 32 位无符号整数 生成 64 位莫顿代码 反之亦然 我确实有 xy2d 和 d2xy 但仅适用于 16 位宽的坐标 产生 32 位莫顿数 在网上查了很多 但没有找到 请帮忙 如果您可
  • C++11 动态线程池

    最近 我一直在尝试寻找一个用于线程并发任务的库 理想情况下 是一个在线程上调用函数的简单接口 任何时候都有 n 个线程 有些线程比其他线程完成得更快 并且到达的时间不同 首先我尝试了 Rx 它在 C 中非常棒 我还研究了 Blocks 和
  • 从 R 到 C 处理列表并访问它

    我想使用从 R 获得的 C 列表 我意识到这个问题与此非常相似 使用 call 在 R 和 C 之间传递数据帧 https stackoverflow com questions 6658168 passing a data frame f
  • 0-1背包算法

    以下 0 1 背包问题是否可解 浮动 正值和 浮动 权重 可以是正数或负数 背包的 浮动 容量 gt 0 我平均有 这是一个相对简单的二进制程序 我建议用蛮力进行修剪 如果任何时候你超过了允许的重量 你不需要尝试其他物品的组合 你可以丢弃整
  • C 中带有指针的结构的内存开销[重复]

    这个问题在这里已经有答案了 我意识到当我的结构包含指针时 它们会产生内存开销 这里有一个例子 typedef struct int num1 int num2 myStruct1 typedef struct int p int num2
  • Visual Studio 2017 完全支持 C99 吗?

    Visual Studio 的最新版本改进了对 C99 的支持 最新版本VS2017现在支持所有C99吗 如果没有 C99 还缺少哪些功能 No https learn microsoft com en us cpp visual cpp
  • 受限 AppDomain 中的代码访问安全异常

    Goal 我需要在权限非常有限的 AppDomain 中运行一些代码 它不应该访问任何花哨或不安全的内容 except对于我在其他地方定义的一些辅助方法 我做了什么 我正在创建一个具有所需基本权限的沙箱 AppDomain 并创建一个运行代
  • 服务器响应 PASV 命令返回的地址与建立 FTP 连接的地址不同

    System Net WebException 服务器响应 PASV 命令返回的地址与建立 FTP 连接的地址不同 在 System Net FtpWebRequest CheckError 在 System Net FtpWebReque

随机推荐

  • Meteor:什么时候 this.isSimulation 比 Meteor.isClient 更有用?

    this isSimulation的定义 Access inside a method invocation Boolean value true if this invocation is a stub Meteor isClient 的
  • Django:为什么 Foo.objects.extra(...) 比 Foo.objects.raw 快得多?

    所以我试图优化一个相当奇怪的查询 但这是一个遗留数据库 所以我用我所拥有的来凑合 这些是我正在尝试的查询 此时它们提供相同的输出 w 是我的查询集 def future schedule request past datetime date
  • setPluginState(WebSettings.PluginState) 已弃用。我应该怎么办? (网页视图插件)

    我正在使用以下代码将我的 Flash 游戏制作成 Android 应用程序 它工作得很好 但编译器给出了错误 类型中的方法 setPluginState WebSettings PluginState WebSettings 已弃用 这是代
  • 溢出滚动不适用于位置固定元素 iOS

    I have position fixed移动设备 尺寸页面最底部的导航栏 导航栏本身有一个溢出容器 用户可以滚动到右侧以查看其他链接 这是一个设计请求 在我看来 用户体验很差 但那是我的 2 美分 我在 iOS 设备上测试时遇到的问题是
  • Google hreflang 语言混淆:我是否必须为页面本身添加 hreflang?

    On 谷歌的hreflang文档 https support google com webmasters answer 189077 hl en 在两种语言的示例中 它表示 假设您有一个英语页面托管在http www example com
  • 了解何时使用 git commit -m 和 git commit -am

    我的主要问题是始终这样做是否有意义git commit am代替git add 其次是git commit m 我知道 am 表示它将添加修改后的 TRACKED 文件中的所有更改 因此 在我没有添加任何新文件的情况下 只运行 git co
  • PHP 中的隔离?

    这是我思考了一段时间的事情 我正在创建一个应用程序 我的用户将在其中上传他们自己的自定义主题 这意味着对于任何具有基本 PHP XSS 任何技能的人来说 这将是一个很好的机会来引起很多麻烦 我想在一种沙盒 封闭的环境中运行任何上传的文件 该
  • 在巨大列表中查找/搜索的最有效方法(python)[重复]

    这个问题在这里已经有答案了 我刚刚解析了一个大文件 并创建了一个包含 42 000 个字符串 单词的列表 我想查询 针对此列表 以检查给定的单词 字符串是否属于它 所以我的问题是 这种查找最有效的方法是什么 第一种方法是对列表进行排序 li
  • 为什么gdb会挂起?

    我正在调试一个应用程序 我试图了解 gdb 的工作原理以及为什么我有时无法单步执行该应用程序 我遇到的问题是 当我单步执行程序时 gdb 将挂起 并且它所附加的进程将进入失效状态 gdb 挂起后 我必须杀死它以释放终端 ctrl C 不起作
  • cabal install --- 全局约束需要安装实例

    我的阴谋集团依赖项列出为 base 4 6 containers 0 5 bytestring 0 10 binary 0 5 parsec 3 1 i did cabal sandbox init wget http www stacka
  • 基于视图的 Tableview 中 NSTableview 行的重新排序

    根据苹果文档拖放NSTableView仅针对基于单元格的 TableView 调用委托方法 而不针对基于 View 的委托方法 因此 无法使用基于视图的拖放对行进行重新排序NSTableView 我创建了一个小样本项目 https gith
  • 当测试类没有单独执行时,@SpyBean不会拦截方法调用

    我有多个 WebMvcTest 带注释的测试类 如果单独执行 例如通过mvn Dtest BTest test或通过 IDE 但是 如果它们一起执行 例如通过mvn test or mvn package 一项测试失败 BTest在下面的代
  • AudioKit FFT 转换为 dB?

    第一次发帖 感谢社区的厚爱 我在用AudioKit并尝试向麦克风输入添加频率加权滤波器 因此我尝试了解来自 AudioKit AKFFTTap 的值 目前我正在尝试打印转换为 dB 值的 FFT 缓冲区 for i in 0
  • 如何自动缩放小部件以适应不同的屏幕尺寸?

    我有一个包含 ListTile 的卡片 ListView 在每个列表图块内我都有标题和副标题 我尝试在几部手机 android ios 上调试我的应用程序 对于其中一些手机 字幕文本会溢出卡片小部件 因为它们的屏幕较小 有没有办法根据屏幕尺
  • 点击按钮然后在android中自动发送电子邮件

    我有一个 xml 文件 用户将在其中输入电子邮件 然后当单击提交按钮时 我希望应用程序自动向该电子邮件发送一封包含特定内容的电子邮件 我可以从中获得帮助的任何好的教程或示例 package com example emailtest imp
  • 预加载取决于 Ruby on Rails 中的关联类型

    我有一个多态关联 belongs to resource polymorphic true where resource可以是多种不同的型号 为了简化问题 假设它可以是Order or a Customer 如果它是一个Order我想预加载
  • 安装pbr时出错

    我想在运行 OSX 10 8 5 的计算机上安装 openstack 客户端 作为先决条件 我需要安装 pbr 所以 我做了以下事情 git clone git github com openstack dev pbr git cd pbr
  • 对具有多个条件的元组列表进行排序

    我有一个包含 k 个元素的元组列表 我想先对元素 0 进行排序 然后对元素 1 进行排序 依此类推 我用谷歌搜索 但我仍然不太清楚该怎么做 会是这样的吗 list sort key lambda x x 0 x 1 x k 1 特别是 我想
  • 是否可以在 iPhone 应用程序图标中使用透明度?

    我为我的应用程序创建了一个 57 57 圆形图标 无光泽 其圆外具有透明度 我可以在模拟器和 iPhone 上成功安装该应用程序 它工作得很好 而且看起来很棒 但是 我可以向 Apple 提交透明的图标吗 他们会接受吗 我找不到任何图标具有
  • Cocos2d-x - 如何将CCLayer的一部分设置为透明?

    我是新手cocos2d x我需要你的帮助 我需要使图层的触摸部分透明 如何使图层的一部分透明 我曾想过使用 ClippingNode 但我找不到示例或文档 我使用C 谢谢 在所有cocos2d x版本中添加的TestCpp项目中 您可以找到