相关疑难解决方法(0)

cocos2d-x-3.0 draw vs onDraw

我使用了cocos2d-X 3.0及在一些测试项目中,我通过做一些覆盖自定义绘制Nodedraw方法,但在DrawPrimitives例如只要他们做这样的事情:

void DrawPrimitivesTest::draw()
{
    _customCommand.init(_globalZOrder);
    _customCommand.func = CC_CALLBACK_0(DrawPrimitivesTest::onDraw, this);
    Director::getInstance()->getRenderer()->addCommand(&_customCommand);
}

void DrawPrimitivesTest::onDraw()
{
    // drawing code here, why?
}
Run Code Online (Sandbox Code Playgroud)

从读取头文件和源文件看起来这可能是将渲染命令直接发送到渲染器的某种方式,这是正确的吗?

我应该使用这种方法来进行自定义绘图吗?什么之间的区别drawonDraw

编辑:

正如@Pedro Soares所提到的,自Cocos2D-X 3.0以来你不能再覆盖draw()了.你必须draw(Renderer *renderer, const kmMat4 &transform, bool transformUpdated)改用.

cocos2d-x cocos2d-x-3.0

5
推荐指数
2
解决办法
9878
查看次数

Cocos2d-x v3无法覆盖前向功能Draw

//in my .h file
virtual void draw();

//in .cpp
void GameLayer:draw()
{
   Layer::draw();
   //draw code goes here
}
Run Code Online (Sandbox Code Playgroud)

它显示无法覆盖前向函数node :: draw()

据我所知,它正在研究旧版本.cocos2d-x 3.0有什么新方法吗?

提前致谢.

cocos2d-x cocos2d-x-3.0

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

标签 统计

cocos2d-x ×2

cocos2d-x-3.0 ×2