cocosc++怎么打印_Cocos2dx-JS绑定C++大致流程-程序员宅基地

技术标签: cocosc++怎么打印  

Cococs2dx-JS 版本3.12,环境:Mac

。这里有两种情况,为修改引擎底层方法和自定义新的C++类。

首先为了保证genbindings.py 正常运行 你需要下3样东西 已安装的请略过

python 2.7.x:目前引擎里面的bindings-generator只支持python2.7.x版本

py-ymal(http://pyyaml.org/wiki/PyYAML):这是python的一个第三方包,下载页有不同系统的安装方式,可以参考generator.py会调用到这个包。

安装目录执行 python setup.py install 进行安装.

修改引擎底层方法

这个比较简单,这里做的是给UIImageView添加了一个public方法。然后在js中用一个UIImageView对象去调用这个方法。

首先在UIImageView.cpp中添加如下方法:

void ImageView::getImageDes()

{

CCLOG("this is getImageDes!!");

}

然后到工程/frameworks/cocos2d-x/tools/tojs目录下执行python脚本genbindings.py。(可以对这个脚本修改,然后只是重新绑定UIImageView相关的文件)。然后就可以在/frameworks/cocos2d-x/cocos/scripting/js-bindings/auto目录下的jsb_cocos2dx_ui_auto.cpp文件中看到相应的绑定内容。如下:

bool js_cocos2dx_ui_ImageView_getImageDes(JSContext *cx, uint32_t argc, jsval *vp)

{

JS::CallArgs args = JS::CallArgsFromVp(argc, vp);

JS::RootedObject obj(cx, args.thisv().toObjectOrNull());

js_proxy_t *proxy = jsb_get_js_proxy(obj);

cocos2d::ui::ImageView* cobj = (cocos2d::ui::ImageView *)(proxy ? proxy->ptr : NULL);

JSB_PRECONDITION2( cobj, cx, false, "js_cocos2dx_ui_ImageView_getImageDes : Invalid Native Object");

if (argc == 0) {

cobj->getImageDes();

args.rval().setUndefined();

return true;

}

JS_ReportError(cx, "js_cocos2dx_ui_ImageView_getImageDes : wrong number of arguments: %d, was expecting %d", argc, 0);

return false;

}

然后在js脚本中就可以调用getImageDes方法了,如下:

this

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_31046947/article/details/114164598

智能推荐

python colorbar xtick locator_python – matplotlib中colorbar tick标签的旋转-程序员宅基地

文章浏览阅读471次。我想旋转颜色条刻度标签,使它们垂直读取而不是水平读取.我已经尝试了很多变化,我可以想到使用cbar.ax.set_xticklabels和cbar.ax.ticklabel_format,依此类推,旋转=’垂直’,但还没有完全落地.我在下面提供了一个MWE:import numpy as npimport matplotlib.pyplot as plt#example functionx,y =..._x = np.linspace(-10, 10, 200)

大数据入门_大数据入门吧-程序员宅基地

文章浏览阅读1k次,点赞2次,收藏7次。hadoop伪分布模式搭建完成_大数据入门吧

linux下(centos7)fisheye与crucible破解教程--亲测有用_crucible 激活-程序员宅基地

文章浏览阅读733次。这里写自定义目录标题安装步骤:下载好压缩包,解压后直接运行bin目录下的start.sh,然后浏览器IP打开即可具体破解和安装的下载包稍后上传破解步骤:第一步:下载好安装包后,先将lib下atlassian-extras-2.5.jar文件名更改为atlassian-extras-2.3.1-SNAPSHOT.jar,因为破解程序目前我只找到2.3.1的破解,改名才能继续往下走!第三步:打开破解包文件夹,运行./fisheye_keygen.sh找到lib下刚才改名的文件可以看到破解软_crucible 激活

DR模式LVS负载均衡实战部署_lvs dr 搭建负载均衡实战-程序员宅基地

文章浏览阅读120次。目录 一、LVS-DR工作原理1、数据包流向分析2、DR模式的特点 二、LVS-DR中的ARP问题三、LVS负载均衡DR模式群集部署1、部署共享存储2、配置节点服务器3、配置负载调度器4、测试验证 一、LVS-DR工作原理 1、数据包流向分析 第一步:客户端发送请求到 Director Server (负载均衡器),请求的数据报文到达内核空间。 数据报文 源 IP ------客户端的 IP目标 IP ------ VIP源 MAC ------客户端的 MAC目的 .._lvs dr 搭建负载均衡实战

vue.js用cdn引入_vue-danmaku cnd引入-程序员宅基地

文章浏览阅读893次。<!DOCTYPE html><html lang="en"><head> <title></title> <script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/vue.js"></script><!-- 引入样式 --><link rel="stylesheet" href="https://unpkg.com/element-_vue-danmaku cnd引入

中国IT技术人员,是否适合新加坡发展-程序员宅基地

文章浏览阅读963次。友情提醒,本文彻头彻尾都是广告,如果不能接受,非常抱歉,烦请关闭本页。嗯,其实是两份广告,第一份是我自己的。前段时间有人说,知乎live是个红利期,其实我看到了,但是,唉..._新加坡it人员回国有没有优势

随便推点

JavaScript 复制粘贴技巧_js怎么获取粘贴内容数据-程序员宅基地

文章浏览阅读998次。在日常业务开发,比如复制后增加版权信息,点击复制,等场景中需要进行复制粘贴的操作,以下是几种实现方案。Clipboard APIClipboard API 提供了响应剪贴板命令(剪切、复制和粘贴)与异步读写系统剪贴板的能力。从权限 API (Permissions API) 获取权限之后,才能访问剪贴板内容;如果用户没有授予权限,则不允许读取剪贴板内容。可以使用全局的 Navigator.clipboard 来访问剪贴板。Navigator.clipboard 属性返回 Clipboard 对象,所有操作都_js怎么获取粘贴内容数据

只需要5秒就能克隆出你的声音_声音克隆-程序员宅基地

文章浏览阅读1.8w次,点赞23次,收藏234次。导读只需要一段5秒钟的录音,就能将其他的文字转换成你的声音。Real-Time-Voice-Cloning该项目目前在git上以及接近30k的星,作者将克隆后的效果已经上传到youtube演示视频。遗憾的是这个项目只支持英文。最近从这个项目中发展了一个中文的分支Realtime-Voice-Clone-Chinese,作者已经在效果上传到了bilibili演示视频下面我就教大家如何在你的电脑上使用这个项目运行环境系统:Windows、LinuxPython版本:3.7+pytorch版本:_声音克隆

前端开源实战项目,大厂级别_前端工程师app软件项目-程序员宅基地

文章浏览阅读2.5k次,点赞2次,收藏27次。强烈推荐 G..._前端工程师app软件项目

关联规则可视化python语言_患者信息可视化及关联规则可视化-程序员宅基地

文章浏览阅读821次。源码链接:https://github.com/yemahei/test患者信息可视化及关联规则可视化系统的实现一、系统需求分析藏医药学是我国传统民族医药学宝库中一颗璀璨的明珠,在藏族人民漫长的生产、生活实践中,其系统的理论和独特的临床疗效及用药特色,为藏族人们繁衍生息、保障生命健康做出了重要贡献,也越来越受到世人的关注。由于平时藏医院患者数量庞大,会产生大量的病人信息,由于信息都是表格或者是其它..._关联规则可视化python语言_关联规则可视化

深度学习系列资料总结_cellpose 2.0-程序员宅基地

文章浏览阅读2.2w次,点赞126次,收藏467次。说明本系列深度学习资料集合包含机器学习、深度学习等各系列教程,主要以计算机视觉资料为主,包括图像识别、分类、检测、分割等,内容参考Github及网络资源,仅供个人学习。深度学习定义一般是指通过训练多层网络结构对未知数据进行分类或回归深度学习分类有监督学习方法——深度前馈网络、卷积神经网络、循环神经网络等;无监督学习方法——深度信念网、深度玻尔兹曼机,深度自编码器等。手写机器学习笔记github机器学习算法公式推导以及numpy实现github人工智能相关术语link。.................._cellpose 2.0

GitHub好玩有趣的开源项目_有没有开源的网页fps游戏-程序员宅基地

文章浏览阅读2.6k次。有些地址已经失效:访问目录地址https://github.com/Wechat-ggGitHub/Awesome-GitHub-Repohttps://github.com/Wechat-ggGitHub/Awesome-GitHub-Repo 好玩项目 摸鱼神器 宝藏项目 开源游戏 实战项目 前后端分离项目 毕业设计实战项目 高仿 App 项目 Vue 实战项目 小程序实战项目 Spring Boot 实战项目 管理系统 ._有没有开源的网页fps游戏