标签: cocos2d-x

ant debug和sdk.dir

我在生成Android APK文件时遇到问题.

当我运行ant debug编译工作正常,但当我运行ant debug

我有以下错误:

iMac:proj.android smartmind$ ant debug
Buildfile: /Users/smartmind/Works/Smallthing/cocos2d-x/samples/HelloCpp/proj.android/build.xml

BUILD FAILED
/Users/smartmind/Works/Smallthing/cocos2d-x/samples/HelloCpp/proj.android/build.xml:46: sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through an env var

Total time: 0 seconds
Run Code Online (Sandbox Code Playgroud)

我不知道是什么问题.

ant android cocos2d-x

8
推荐指数
2
解决办法
1万
查看次数

在Ubuntu的QtCreator中的Cocos2d-x

我尝试在QtCreator中运行cocos2d-x v 2.2 helloword项目.我正在使用基于此存储库的此项目文件https://github.com/FlyingFishBird/cocos2d-x_2_0_4_templete_for_qtcreator/graphs/contributors

   TEMPLATE = app
CONFIG += console
CONFIG -= app_bundle
CONFIG -= qt

CONFIG(debug, debug|release) {
DESTDIR = bin/debug/
}

CONFIG(release, debug|release) {
DESTDIR = bin/release/
}


RESOURCES = Resources.qrc

SOURCES += Classes/AppDelegate.cpp  \
    Classes/HelloWorldScene.cpp \
    proj.linux/main.cpp

HEADERS +=Classes/AppDelegate.h \
    Classes/HelloWorldScene.h


COCOS2DX_ROOT = $$system(echo $COCOS2DX_ROOT)

# set include path and depend path
COCOS_INCLUDE_DEPEND_PATH += $$COCOS2DX_ROOT/cocos2dx \
        $$COCOS2DX_ROOT/cocos2dx/include \
        $$COCOS2DX_ROOT/cocos2dx/cocoa \
        $$COCOS2DX_ROOT/cocos2dx/kazmath/include \
        $$COCOS2DX_ROOT/cocos2dx/platform \
        $$COCOS2DX_ROOT/CocosDenshion/include \
        $$COCOS2DX_ROOT/extensions \
        $$COCOS2DX_ROOT/external


    DEFINES += LINUX

        COCOS_INCLUDE_DEPEND_PATH += $$COCOS2DX_ROOT/cocos2dx/platform/linux

    LBITS …
Run Code Online (Sandbox Code Playgroud)

c++ ide opengl qt-creator cocos2d-x

8
推荐指数
1
解决办法
1436
查看次数

使用cocos2d-x 3.0比cocos2d-x 2.x有什么好处?

Cocos2d-x 3.0 alpha现已发布一段时间了.有什么比cocos2dx-2改进了?

功能列表非常重要,但在性能方面有新的限制/改进吗?

您是否注意到性能,开发模式,API和支持方面的真正改进?

cocos2d-x cocos2d-x-3.0

8
推荐指数
1
解决办法
5618
查看次数

Opengl Shader,什么是gl_FragColor的alpha组件?

我认为这将是一个简单的答案.
但我用谷歌搜索找不到答案.
它是OpenGLES着色器的东西.我正在使用cocos2d-x引擎.

这是我的片段着色器代码.

precision lowp float;
varying vec2 v_texCoord;
uniform sampler2D u_texture;
uniform vec4 u_lightPosition;

void main()
{
    vec4 col=texture2D(u_texture,v_texCoord);

    mediump float lightDistance = distance(gl_FragCoord, u_lightPosition);
    mediump float alpha = 100.0/lightDistance;
    alpha = min(alpha, 1.0);
    alpha = max(alpha, 0.0);
    col.w = alpha;
    //col.a = alpha;


    gl_FragColor=col;

}
Run Code Online (Sandbox Code Playgroud)

我只想在某个圆圈区域给出不透明度.所以我改变颜色的w值,因为我认为它是纹素的alpha值.但结果很奇怪.我担心这不是alpha值.

即使我将值设置为1.0进行测试,整个精灵也会变为亮白色.


它的顶点着色器非常正常,没有什么特别的附加.


请问任何想法.



更新:作为参考,我附上一些结果图像.

情况1)

col.w = alpha;
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

案例2)

col.w = 1.0
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述


应用着色器之前的正常纹理.)

在此输入图像描述

shader opengl-es glsl cocos2d-x

8
推荐指数
1
解决办法
2万
查看次数

如何修复“找不到GLEW(丢失:GLEW_INCLUDE_DIR GLEW_LIBRARY)”

看来您是在本地使用GCC构建Linux

Cocos2dx on Linux : "cmake -G 'CodeBlocks - Unix Makefiles'
-- OpenGL include dirs: /usr/include
CMake Error at /usr/local/share/cmake-3.4/Modules/FindPackageHandleStandardArgs.cmake:148 (message):
  Could NOT find GLEW (missing: GLEW_INCLUDE_DIR GLEW_LIBRARY)
Call Stack (most recent call first):
  /usr/local/share/cmake-3.4/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
  /usr/local/share/cmake-3.4/Modules/FindGLEW.cmake:44 (find_package_handle_standard_args)
  cocos2d/cmake/Modules/CocosBuildHelpers.cmake:44 (find_package)
  cocos2d/CMakeLists.txt:190 (cocos_find_package)

-- Configuring incomplete, errors occurred!
See also "/home/daw/Dev/cocos2d-x-3.9/allProject/testC/CMakeFiles/CMakeOutput.log".
Run Code Online (Sandbox Code Playgroud)

cocos2d-x

8
推荐指数
2
解决办法
6828
查看次数

游戏引擎Collison Bitmask ......为什么是0x01等?

在Sprite Kit(iOS开发)和Cocos2d-x(我知道它几乎是Sprite Kit的灵感,因此他们为什么使用大量相同的工具)中遇到这种情况,我终于决定弄清楚为什么这个发生:

当使用物理引擎时,我创建一个精灵,并为其添加一个physicsBody.在大多数情况下,我了解如何设置类别,碰撞和联系位掩码,以及它们如何工作.问题是实际的位掩码数:

SpriteKit:

static const uint32_t missileCategory     =  0x1 << 0;
sprite.physicsBody.categoryBitMask = missileCategory;
Run Code Online (Sandbox Code Playgroud)

的Cocos2D-X:

sprite->getPhysicsBody()->setCategoryBitmask(0x01); // 0001
Run Code Online (Sandbox Code Playgroud)

我完全混淆了为什么在任何一种情况下我都会写0x01或0x1 << 0.我有点认为他们使用的是十六进制,它与32位整数有关.至于我已经能够谷歌,0x01是二进制的0001,十进制是1.0x02是二进制的0010,十进制为2.好的,所以有这些转换,但为什么在世界上我会将它们用于像类别一样简单的东西?

就我的逻辑而言,如果我说玩家类别,敌人类别,导弹类别和墙壁类别,那只是4类.为什么不使用字符串作为类别?或者甚至只是二进制数,任何非CS人都会理解为0,1,2和3?

最后,我很困惑为什么有32种不同的类别?我认为一个32位整数的数字为0-几十亿(当然是无符号的).那么为什么我没有数十亿种不同的可能类别呢?

我不理解某种优化吗?或者这只是他们使用的旧约定,但不是必需的?或者有什么事情发生在那个只有2个学期的大学课程CS培训的人不明白?

bitmask ios cocos2d-x sprite-kit

8
推荐指数
2
解决办法
439
查看次数

android studio模拟器在3.0更新后崩溃

我一直在使用android studio,我最终安装了cocos2dx并使用arm cpu模拟器来处理cocos2dx.我最近看到一条消息提示更新android模拟器服务,所以我安装它,现在我的模拟器在尝试启动时崩溃并在logcat中给出了这个错误 - 这是它给了我的错误

19:36   Emulator: **

19:36   Emulator: ERROR:/buildbot/src/android/emu-3.0-release/external/qemu/fpu/softfloat.c:486:round_canonical: code should not be reached

    19:36   Emulator: Warning: QObject::~QObject: Timers cannot be stopped from another thread ((null):0, (null))

    19:36   ADB rejected shell command (getprop): closed

    19:36   Emulator: Process finished with exit code 3
Run Code Online (Sandbox Code Playgroud)

我不知道这意味着什么,但我知道它与我下载的更新有关,有什么方法可以回滚更新吗?

android android-emulator cocos2d-x

8
推荐指数
1
解决办法
3709
查看次数

将文件扫描到索引永远不会在 Android Studio 4.1 中结束

我使用的是 cocos2d-x v4、macOS Catalina 10.15.6、Android Studio 4.1。

我用 cocos2d-x v4 做了一个项目。

我正在使用 Android Studio 构建一个 android 应用程序。

直到几天前,它才奏效。但是在将 Android Studio 更新到 4.1 后,一切都出错了。当我打开项目时,它在 Android Studio 的底部显示 Scanning files to index .. 并且它永远不会结束。

左侧的 Android 选项卡总是说正在加载 ..

在此处输入图片说明 在此处输入图片说明

我尝试了以下方法,但没有一个解决了问题。

  • 使缓存无效/重新启动
  • 卸载并重新安装 Android Studio
  • 重新安装旧版本的 Android Studio

当我卸载 Android Studio 时,我运行以下命令来删除所有旧文件。

rm -Rf /Applications/Android\Studio.app
rm -Rf ~ / Library / Preferences / AndroidStudio *
rm ~ / Library / Preferences / com.google.android.studio.plist
rm -Rf ~ / Library / Application \ Support / AndroidStudio …
Run Code Online (Sandbox Code Playgroud)

android cocos2d-x android-studio macos-catalina

8
推荐指数
2
解决办法
1849
查看次数

CCApplication :: getCurrentLanguage()在cocos2d-x上获取null

我实际上在Linux上工作,但我也使用Mac.

我正在尝试为我的游戏添加多语言支持,并且我将使用不同的XML和标签.

当我使用ccLanguageType _myLanguage = CCApplication::getCurrentLanguage()get null时,信号11异常.

我也用过getCurrentLanguageJNI() 但是没用.

这是怎么回事?

cocos2d-x

7
推荐指数
1
解决办法
1325
查看次数

Android WVMExtractor:无法打开 libwvm.so

我正在使用 cocos2d-x 平台在 android 中开发游戏。我在 android 代码中包含游戏 .so 文件。游戏在棉花糖及以下版本的设备中运行良好,但是当我在 android 7 nougat 中运行此应用程序时出现未知错误。

E/WVMExtractor: Failed to open libwvm.so: dlopen failed: library "libstlport.so" not found
Run Code Online (Sandbox Code Playgroud)

我确定问题出在 .so 文件中。在 .so 文件下一行创建问题。听起来在 android 7 Nougat 中不起作用。

CocosDenshion::SimpleAudioEngine::getInstance()->playEffect(writable);
Run Code Online (Sandbox Code Playgroud)

在 cocos2d-x 平台中播放声音的任何替代方法。

android cocos2d-x

7
推荐指数
1
解决办法
6517
查看次数