绑定生成器对于cocos2d-xjsb用户来说非常重要。
然而,很少有信息告诉我如何使用它。
我在学校读了教程
我可以生成一些简单的类。但是当面对一个真正的项目时,简单类并没有那么有用
我编写了一个名为RectClip的CCNode子类。我仍然不知道如何使用生成器生成绑定代码。当我简单地放置样本时,生成器给出错误:无法打开cocos2d.h.
那么我如何才能真正完成这项工作呢?我认为关键是如何配置.ini文件。
但是我不知道怎么做。cocos2d-x使用了一个配置:cocos2d-x sourc
我浏览了论坛,也浏览了测试示例,没有严格回答这个问题
如何支持游戏纵向和横向设备定向。首先在iOS上
有什么样的例子、来源或者我能看到和学到的东西吗
谢谢 您可以参考以下内容:
对于ios:在viewcontroller.m中
bool shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
//景观
return UIInterfaceOrientationIsLandscap
当我的角色赢得或输掉游戏时,我会切换场景。我收到一条消息说未分配要释放的指针
有时,游戏不会崩溃,而是返回到游戏视图。但有时游戏会在这条线上崩溃:
int retVal = UIApplicationMain(argc, argv, nil, @"AppController");
错误为“错误访问”
我使用CCdirector切换到结束屏幕:
cocos2d::CCDirector::sharedDirector()->replaceScene(GameWon::scene());
然
我有两层。每个图层中都有一个使用OpenGL绘制的基本图形,如下所示:
void Layer1::drawPolygon()
{
glLineWidth(1);
DrawPrimitives::setDrawColor4B(255,255,255,255);
DrawPrimitives::setPointSize(1);
// Anti-Aliased
glEnable(GL_LINE_SMOOTH);
// filled poly
当父对象执行任何操作时,其子对象也执行相同的操作。但有时候,我不想让孩子做这种动作。例如,一个像人一样的精灵有一根血棒,当它移动时,血棒也应该和人一起移动,这没关系。但当我摇动或旋转这个人时,吧台应该什么也不做
那么,控制它的简单方法是什么?我认为唯一的方法是从父级中删除这些子级,在操作完成后,重新添加它们。您可以使用其单独的标记控制每个子级操作。当您定义子级时,请设置其标记;当您想要获取特定子级的操作时,请获取子级[self-getActionByTag:childTag]并对其执行操作。
正
我是cocos2d-X的新手。请帮助我在cocos2d-X中创建一个弹出菜单。。如何创建子视图并将该视图添加到现有场景中
请帮帮我。提前谢谢你我想要子类cocos2d::Layer或cocos2d::LayerColor
当您需要弹出菜单时,将其作为子项添加到当前层(或在游戏中有意义的地方),确保将zOrder设置为高于当前层的值,使其显示在顶部
您可能会听到这些被称为HUD层
以下是创建简单HUD图层的人员:
我试着让一个演员跟随玩家的手指(长触)。我肯定我的计算是对的,但是演员没有准确地移动到球员触碰的地方
以下是我的问题的一个例子:
当触摸接近顶部时,演员会超越顶部可见的场景。
当触摸接近底部时,演员离开底部的可见场景。
左右两边也是一样
当触摸在场景中间进行时,演员完美地移动到触摸。简而言之,触摸距离中间越远,演员和触摸之间的距离就越明显。换言之;触摸越靠近中间,演员越靠近触摸
请注意,当触摸接近底部或顶部时,触摸与演员之间的距离比触摸在右侧或左侧时更明显;因为顶部/底部离中点较远
以下是跟随
我改为Android SDK和NDK的新版本
当我在任何cocos项目目录(也是新创建的目录)中执行命令“cocos run-p android”时,它会正确编译所有源代码,但停止尝试构建apk,并显示以下消息:
无法为项目找到合适的android平台:“/Applications/MAMP/htdocs/42words/frameworks/runtime src/proj.android”。android平台应等于/大于10
环境变量设置为:
ANDROID_SDK_ROOT=/Applic
我搜索了很多,但是没有结果
我想检查屏幕上的游戏(1080x1920),它对于我的桌面来说太大了。
这是我定的
eglView->setFrameSize(1080, 1920);
如何在较小的窗口中使用此屏幕解决方案
感谢您的帮助。使用方法:eglView->setFrameZoomFactor(0.6f)
我在cocos2dx 3.13.1中有一个老项目。上周我在比赛中做了一些改变。在做了一些修改之后,我从xcode为ios编译了它,它运行得很好,但是当我试图在android中使用终端中的cocos compile-p android--android studio命令进行编译时,我遇到了以下错误。我使用过android-ndk-r14b、apache-ant-1.10.1和android SDK工具版本26.0.2
Android NDK: WARNING: Unsupported source
我是cocos2dx的新手,我刚刚开始写一些小游戏。我定义了一个名为Block的类,它继承自CCNode,它包含一个名为m_Block的CCSprite类。我通过函数addObjet()将Block对象保存在CCArray m_runningBlock中
但是,当我试图从数组中取出CCSprite m_块,并通过函数this->addChilid()将m_块添加到CCLayer时,出现了问题,我无法找出问题所在。有人能帮我吗
class Block :public CCNode
{
我是cocos2dx的新开发人员。我正在开发一款游戏,其中我使用的是通过物理编辑器加载的box2d实体。游戏中有20多个实体在使用,我正在为与它们相连的单独精灵制作单独的身体,类似的身体在其他关卡中使用,游戏中有50个关卡,对于每个关卡,我制作了单独的类,并再次制作b2body加载功能,所有的代码都正常工作,但我只想做一个通用函数来加载类中的实体,这样我就可以在所有级别使用相同的b2body加载函数。而且我必须在触摸精灵时销毁特定的实体和精灵
//Sprites:
rect_sprite1=CC
我正在cocos2d-x中制作一个游戏,它处于纵向模式
现在,很长一段时间以来,我一直在研究如何在cocos2d-x中正确实现多分辨率,但失败了。我在论坛上关注这个,但这还不够,我也搜索了很多,但找不到解决方案
我还尝试了cocos-x提供的不同政策
我浏览了以下所有链接和教程
使用这些链接,我可以实现所有ios分辨率,但不是所有android屏幕
我甚至尝试了更新版本的cocos2d-x,但它们也没有提供任何支持ios和android屏幕的功能。我在AppDelegate中使用了以下代码:
v
我是android开发的新手。所以我要写一个小的2d游戏,我选择Cocos2d作为引擎。但我找不到如何在android上与aide一起使用它。我找到的所有教程都在使用eclipse。是否可以在android上与aide一起使用Cocos2d?
谢谢大家!
发生了一个响亮的错误
duplicate symbol _CRYPTO_num_locks in:
/proj.ios/frameworks/gpg.framework/gpg(libgpg.a-i386-master.o)
/libs/openssl/lib/libcrypto.a(cryptlib.o)
duplicate symbol _CRYPTO_set_dynlock_create_callback in:
/proj.ios/frameworks/gpg.framework/gpg
我已经开始在iphone中使用cocos2d-x。我创建了一个从cclayer继承的类。现在,当我试图用touch dispatcher注册它时,它崩溃了
在.h文件中:
类基本页:公共cocos2d::CCLayer
和.m文件:
CCDirector::sharedDirector()->getTouchDispatcher()->addTargetedDelegate(this, INT_MIN + 1, true);
它在ccobject.m文件中崩溃:
void CCOb
我是cocos2d-x的新手,正在使用3.0beta sdk。
我使用下面的代码从一个屏幕导航到另一个屏幕,反之亦然
Director *pDirector = Director::getInstance();
pDirector->replaceScene(nextscreen);
你知道吗,我们如何通过其他方式在上一个屏幕上移动?我认为,这是创造一个场景循环
谢谢
Kamal替换场景是个好主意,因为它会破坏以前的场景,释放内存。
但是,您也可以使用pushScene()/pop
我在ios平台上有一个cocos2d-x项目,我也想在android上部署这个项目。请帮助我并解释它的步骤。我的cocos2d-x项目包含Box2d功能。你必须使用cocos命令为android创建一个示例项目,然后需要配置一些基本参数。查看官方网站上链接的wiki
谢谢您的回复。那么现有的ios项目呢,我如何在android平台上部署它呢。
如何将项目添加到cocos 2dx滚动视图?以下代码用于创建scrollview
_scrollView = cocos2d::extension::CCScrollView::create(CCSizeMake(posW, 1000));
_scrollView->setPosition(posX, posY);
_scrollView->setDirection(cocos2d::extension::kCCScrollViewDire
在iOS中,不需要为应用程序添加关闭图标。在极少数情况下,如果有人想杀死某个应用程序,他们可以通过操作系统来完成
查看使用console v3.1.1时默认创建的cocos2d-x项目时,示例HelloWorld场景会在屏幕上放置一个按钮以关闭应用程序
在任何平台中都需要这样做吗?添加这个按钮有意义吗?苹果通常拒绝这样做,谷歌和微软也不喜欢
不过,您可以在菜单或弹出窗口上设置关闭按钮,比如暂停屏幕 如果我没有它,是否有任何平台将无法杀死该应用程序?好吧,你可以控制你发布到哪个平台,对吗?所以,如
我想根据某些条件更改此图像。我想您可以尝试以下方法:
使用CCSprite创建menuImgNm
使用:CCMenuItemSprite
可以使用纹理更改图像,如:
CCTexture2D*tex=[[CCTextureCache sharedTextureCache]添加图像:@“新图像名称”];
[menuImgNm setTexture:tex]
希望这有帮助
MenuItem *pageMenuItem;
pageMenuItem = MenuItemImage::create(me
是否可能检查显示器上的元素是否已涂漆
因为节点不能为null且为visible true,但元素并不像屏幕上的图像那个样显示。我指的是加载期,例如,当元素创建并初始化但尚未在屏幕上呈现时
非常感谢如果您在xcode上开发,您可以尝试捕获openGL框架,并查看它如何绘制您的对象
我目前正在学习cocos2D-x,正在制作一些精灵动画。
我的目标是,当单击按钮时,对象会向左移动,并带有一些动画。
现在,如果您快速单击多次,动画会立即发生,看起来熊是希望而不是行走
解决方案看起来很简单,我应该检查动画是否已经运行,以及是否不应该运行新动画
以下是我代码的一部分
CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("AnimBear.plist");
CCSpriteBatchNod
我正试图为我的游戏制作一个动画,一只蚂蚁离开它的巢穴。它应该沿着鸟巢向下向右移动,面朝下,然后再看直
我创建了两个动作序列,一个用于移动,另一个用于旋转,并将它们放在一个CCSpawn中。如果我只执行移动动作,效果会很好,但是当动作一起执行时,最后精灵会移回原来的位置
我不知道发生了什么事。你们能帮忙吗
CCLayer * gameLayer = CCLayer::create();
Ant* ant = Ant::create(); // Ant is a CCSprite
CCPoint
我想在我的windows8上安装cocos2d-x,但我从教程中下载了这个“from”,其中说我必须执行一个.bat,或者在其他一些页面中说我需要在VS中创建一个项目,但是当我尝试按照他们在教程中说的做时,我看不到显示的任何内容
我很迷路,需要帮助
有人能告诉我如何在cocos2d上创建并启动一个项目吗?我已经回答了类似的问题
在cocos2d-X2.1.2之前,您仍然可以在VS中使用模板。但是,您只能使用python来创建项目
安装python 2.7
在Windows中打开命令行
转到coc
在cocos2d-X中使用对象的保留和释放是否有一般指导原则?在函数中创建对象时,函数返回时是否会立即清除函数内存。创建对象时,调用对象的retain函数,是否会在函数return之后保留对象
P> >一般在C++中你有这样的行为:
void foo() {
Object a;
Object *pA = new Object();
(…)
}
这将导致a在函数结束时自动销毁,因为它是在堆栈上分配的。*pA不会被销毁,因为它是在堆上分配的(因此,您只会失去对它的引用,
我想从ExportJson文件创建动画,但加载失败
它得到的错误断言失败:CCAnimationData不存在!然后崩溃。
我下面的代码有什么问题
static const char s_DragonPList[] = "gfx/character/dragon/dragon_01/A_010.plist";
static const char s_Dragon[] = "gfx/character/dragon/dragon_01/A_010.png";
static con
我想用物理引擎碰撞两个精灵。
但是我的联系人没有回应。日志或运行时没有警告/错误。
以下是我所做的:
声明
1)cocos2d::PhysicsWorld* m_world;
2)void setPhyWorld(cocos2d::PhysicsWorld* world){m_world = world;}
3)bool onContactBegin(cocos2d::PhysicsContact& contact);
实施
对于PhysicsWorld:
场景->
Scene* He
我用ccclipingnode将一个球分成两部分。但我发现我需要创建空的ccclipingnode,否则将进行奇怪的剪切
if(new1VecsCount>=3)addChild(Box2dItemSlice::createSliceBody(box->box2dBody->GetPosition(), box->box2dBody->GetAngle(), new1VecsSorted, new1VecsCount,pRot1));
addChild(CCClip
我有一个cocos2d-x游戏(用C++编写),我需要将它与Facebook等社交网站集成,以便用户可以在浏览器中玩游戏。可能吗?如果是这样的话,我应该怎么做呢?请查看Cocos2d-html5
它是一个基于Cocos2d-x的JavaScript引擎
另一种方法是修改代码以使用WebGL而不是cocos2d-x;然而,这需要更多的努力。
我希望我的回答有帮助。:) cocos2djs允许在多个平台上使用一次编写的代码(javascript)。但是Cocos2d-x代码(C/C++)不能在web
通常,我们可以通过执行以下操作从精灵帧、文件或纹理创建精灵:
Sprite* foo = Sprite::create(filename);
如果不使用DrawNode或将文件传递给sprite,如何创建指定尺寸的白色正方形
我知道这是可能的,因为我偶然发现了另一篇文章,其中描述了如何做,但忽略了对其进行图书标记,并且该文章没有显示在搜索结果中。类似这样的内容:
auto dataLen = width * height * bitsPerPixel * sizeof(unsigned ch
我已经搜索了很多,但仍然不能简单地在cocos2dx中绘制平滑的圆
drawCircle没有完成他们的工作,它很难画出一个圆。
有人知道在cocos2d-x中绘制完美光滑圆的特殊解决方案吗
下面是由drawCircle造成的问题:您需要启用抗锯齿功能。在iOS上,您可以通过在AppController.mm中更改视图的创建来执行以下操作:
CCEAGLView *eaglView = [CCEAGLView viewWithFrame: [window bounds]
我用cocos2d-x做游戏。运行程序一段时间后,变量“NotEnemy”将始终报告“访问冲突”错误。NotEnemy是我在EventListenerPhysicContact中设置的变量,总是使用cocos2d-x会出现标题之类的错误,我只想知道什么时候会出现这样的错误,有什么解决方案吗,我希望有人能告诉我,对,NotEnemy我是这样分配的,auto NotEnemy=contact.getShapeB()->getBody()->getNode() 在使用NotEnemy后,我尝试将其设置
使用ResolutionPolicy::SHOW_ALL作为解析策略时,左右两侧都会出现一些黑色间隙。
我曾经
为了获得偏移量(间隙的宽度),但是offset.x和offset.y总是给出0,所以我想知道:我应该如何计算主屏幕的偏移量?您是否阅读了此文档
我不确定,但你们不希望屏幕上出现这些间隙,是吗?
使用相对坐标,你会没事的
另外,如果您想要间隙的宽度,可以使用getFrameSize()(也在该文档上)来获得屏幕的实际显示分辨率,并进行一些计算以获得该宽度 文档是针对2.x的,所以您需要翻
关于cocos2d-xv3中的一些问题,我有一些基本问题
1.)当我创建这样的精灵时:
cocos2d::Sprite *sprite1 = cocos2d::Sprite::create("test.png");
auto sprite2 = cocos2d::Sprite::create("test.png");
void HelloWorld::runAnimationWalk() {
auto spritebatch = cocos2d::SpriteBatchNode::cr
我试图找出雪碧上像素的颜色。在以下位置使用该方法:
CCImage *testImage = new CCImage;
testImage->initWithImageFile(filename);
unsigned char *data = testImage->getData();
然后我将使用这些数据创建一个Texture2DMutable。从那时起,我就能够实现我想要的
现在,我的项目资产正在使用TexturePacker打包到一张sprite表中。现在,我的精灵是使用cr
我试图在我的网络主机上运行饥饿英雄的网络版本。但是,在我使用cocos compile-pweb-mlease命令编译cocos2djs并上传到我的web主机后,它会显示黑屏。我如何解决这个问题
我在我的系统上使用cocos2djsv3.0rc3
以下是GitHub上饥饿英雄的链接:
任何帮助都是感激的 您应该将js文件添加到project.json中,key jslist的值是一个包含所有js文件的数组
我想您不知道compile-pweb-m命令发布版在做什么
如果您只想查看项目工作,则无需
由于某些原因,cocos2d-x中PhysicsBody的函数setBatgoryBitmask()无效:
OutputDebugStringA("Wall cat bitmask : ");
OutputDebugStringA(std::to_string(body->getCategoryBitmask()).c_str());
OutputDebugStringA("\n");
body->setCategoryBitmask(2);
我想知道自从使用scheduleOnce方法以来经过了多少时间,并且在某些情况下减少了剩余的休息时间,我如何才能做到这一点?您是指过去还是过去?从那以后?你可以发布一些你想要实现的示例/伪代码。哦,很抱歉拼写错误。实际上,我正在尝试制作一个游戏,在我的游戏中,我想加快我的游戏速度,例如加快/降低我的精灵运动,出于这个原因,我将调度程序的间隔除以gamePlaySpeed的值,但对于在之前传递的scheduleOnce方法,我不知道如何才能做到这一点。您必须避免使用调度方法,而是使用动作序列wai
当我在box2d(cocos2dx)中创建两个动态实体时,它们会相互排斥并开始向相反方向移动。我必须设置哪些属性来避免这种情况 不要把它们放在一起。您似乎没有使用调试绘图显示来查看实际发生的情况。我强烈建议你使用它
在我的应用程序中,我使用RenderTexture作为画布
我想将此画布保存到android照片库,如下所示:
政协方面:
void Canvas::saveCanvasCallback(cocos2d::Ref *sender)
{
time_t t = time(0);
struct tm * timeinfo= localtime (&t);
char buffer[120];
strftime(buffer,120,"image_%d%m%Y%I%M%S.png",tim
我用平铺工具做了一个大的平铺地图。地图是50x500瓷砖。每个瓷砖为48x48像素。
我使用“相机”技术跟踪地图上的玩家。
然而,我只能看到70%的瓷砖。地图上的其他平铺显示为黑色。
Cocos Creator有限公司提供的瓷砖数量是多少?
我需要把地图分成多个部分吗
谢谢您正在使用多个瓷砖集吗?我不确定,但cocos2d可能仍然只支持每层一个瓷砖集。我每层使用一个瓷砖集。然而,cocos只渲染了地图的一部分。我尝试将地图分成两部分,Cocos成功地渲染了所有的瓷砖。我在文档中没有找到一个限制。
我想创建一个非常小(apk大小)的Android游戏,我希望不会超过3mb,这样任何手机可用空间低的人都可以玩。
我可以用libgdx来做,但我想用cocos2d-x
问题是,我在发布模式下使用Android Studio构建了一个只有cocos徽标图像的启动模板项目,而构建的APK是3.2Mb。太大了。我运行了分析,文件大小为2.4mb
我错过了一些优化还是什么?我是cocos2d-x的新手,所以可能有什么我不知道的。以下是您可以尝试的东西:
从CCConfig.h中注释掉物理引擎、粒子引擎、
使用鼠标拖放操作进行交换我想你知道如何处理触摸。要进行交换,请执行以下步骤
从任何开始拖动的位置复制该精灵。(您在CCSprite中有getTexture,可以使用它创建新的CCSprite)
无论你在哪里放置该精灵纹理的存储地址
通过拖动纹理更改sprite的纹理(再次使用getTexture和setTexture方法)
无论您在哪里开始拖动,请在第2步中使用使用存储的纹理地址的setTexture方法
最后,您必须移除正在拖动的精灵
对于Cocos2d-x2.0.4,由于速度问题,不建议在
我用cocos2d-x和tilemap制作了一个游戏,遵循教程
它工作正常,但当我移动地图时,屏幕上会出现黑色垂直线。
有人有解决办法吗
非常感谢。有一种方法可以解决这个问题。这对我有用
找到ccCongig.h文件并通过将纹理拉伸将CC_FIX_ARTIFACTS_的值更改为1yup,确保贴图/层位置(及其父对象)位于精确的像素边界上,即非视网膜上的10,22,20.5,44。在视网膜设备上,永远不要像10.473548,22.5473这样的位置。为此,请将位置转换为int。但首先乘以内容比
我是cocos2d的新手,刚开始做我的第一个项目。但在添加新类之后,我犯了这样的错误,不明白问题出在哪里。我已经更改了CMakeLists.txt
home/anna/dragon_game_v1/dragon/Classes/Player.h:12:1: error: 'USING_NS_CC' does not name a type USING_NS_CC;
warning: 'cocos2d::kCCPrioritySystem' defined but not used [-unus
我目前正在学习Ray关于cocos2d-x瓷砖贴图的教程,我的简单代码根本不起作用
这是我的代码
_tileMap = TMXTiledMap::create("TileMap.tmx");
this->addChild(_tileMap);
根据调试器,tileMap为null,这会导致addChild方法崩溃
有人知道为什么会这样吗
p、 s_tileMap在标题中声明为TMXTiledMap*,tileMap.tmx中完全填充了内容,tileMap.tmx以及其他内容通过创建文件
标签: Cocos2d X
marmaladecocos2d-x-2.xcocos2d-x-3.x
我用果酱在多个平台上轻松构建Cocos2d-X2.x游戏。由于果酱已不复存在,我可以用什么来制作最新的Cocos2d-x 3.x?果酱对您有何帮助?我的意思是,超越Cocos2D——是Lua集成还是?@NasBanov感谢您的评论。Marmalade(至少)让我可以轻松地同时管理不同平台的项目,并保持所有项目文件完全同步。(管理=要编译的cpp文件,每个平台的配置…)等等。果酱对您有何帮助?我的意思是,超越Cocos2D——是Lua集成还是?@NasBanov感谢您的评论。Marmalade(至
我尝试在cocos creator 1.6中将AdMob添加到我的应用程序中。我是在本教程中完成的:但如果我尝试运行模拟器,就会出现错误:
JS异常-未定义sdkbox
可以为android构建应用程序,但它只显示黑屏。我想这是由于错误
是否需要手动设置任何内容,或者这只是此版本中的bug
谢谢你的回答。
Petr我解决了这个问题,默认模板出现了问题。我切换到一个二进制模板,它似乎工作得很好。此外,还需要在移动设备上运行AdMob。它没有在web平台上运行。如果您自己解决了它,请使用您的解决方案
我正在寻找一种方法来获取CCScrollView的滚动状态
这似乎不是一个罕见的要求,但我需要实现它吗?
谢谢:)
编辑:以下是我的两种“暴力”方式,但它们似乎很有效
目标是从cocos2d::Layerl获取CCScrollViews的滚动条件
Way#1
在l的update()函数的每次迭代中,通过
ScrollView::getContentOffset()
如果它保持不变,我们可以假设ScrollView没有滚动
Way#2
创建类S,该类继承CCScrollView和CCScr
上一页 1 2 3 4 5 6 ...
下一页 最后一页 共 17 页