当前位置: 首页>>代码示例>>C++>>正文


C++ spNativeTexture::getHandle方法代码示例

本文整理汇总了C++中spNativeTexture::getHandle方法的典型用法代码示例。如果您正苦于以下问题:C++ spNativeTexture::getHandle方法的具体用法?C++ spNativeTexture::getHandle怎么用?C++ spNativeTexture::getHandle使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在spNativeTexture的用法示例。


在下文中一共展示了spNativeTexture::getHandle方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: setTexture

    void STDRenderer::setTexture(spNativeTexture base, spNativeTexture alpha, bool basePremultiplied)
    {
        if (base == 0 || base->getHandle() == 0)
            base = white;

        unsigned int shaderFlags = _shaderFlags;

        if (basePremultiplied)
            shaderFlags &= ~UberShaderProgram::ALPHA_PREMULTIPLY;
        else
            shaderFlags |= UberShaderProgram::ALPHA_PREMULTIPLY;

        if (alpha)
            shaderFlags |= UberShaderProgram::SEPARATE_ALPHA;
        else
            shaderFlags &= ~UberShaderProgram::SEPARATE_ALPHA;

        //##ifdef OX_DEBUG
#if 0
        if (_base != base) { OX_ASSERT(_alpha != alpha); }
        else { OX_ASSERT(_alpha == alpha); }
#endif //OX_DEBUG

        //no reason to check changed alpha because it is in pair with base
        if (_base != base || /*_alpha != alpha || */_shaderFlags != shaderFlags)
        {
            drawBatch();
        }

        _shaderFlags = shaderFlags;

        _base = base;
        _alpha = alpha;
    }
开发者ID:poplax,项目名称:oxygine-framework,代码行数:34,代码来源:STDRenderer.cpp

示例2: oxglActiveTexture

 void VideoDriverGLES20::setTexture(int sampler, spNativeTexture t)
 {
     oxglActiveTexture(GL_TEXTURE0 + sampler);
     if (t)
         glBindTexture(GL_TEXTURE_2D, (GLuint)((size_t)t->getHandle()));
     else
         glBindTexture(GL_TEXTURE_2D, 0);
     CHECKGL();
 }
开发者ID:Jesus05,项目名称:oxygine-framework,代码行数:9,代码来源:VideoDriverGLES20.cpp

示例3: isGood

    bool RenderTargetsManager::isGood(const spNativeTexture& t, int w, int h, TextureFormat tf) const
    {
        if (!t)
            return false;

        if (!t->getHandle())
            return false;

        if (t->getFormat() == tf &&
                t->getWidth() >= w && t->getHeight() >= h &&
                t->getWidth() <= (w + ALIGN_SIZE) && t->getHeight() <= (h + ALIGN_SIZE))
            return true;
        return false;
    }
开发者ID:hicks0074,项目名称:oxygine-framework,代码行数:14,代码来源:PostProcess.cpp

示例4: isNeedProceed

 bool MTLoadingResourcesContext::isNeedProceed(spNativeTexture t)
 {
     return t->getHandle() == 0;
 }
开发者ID:pscamman,项目名称:oxygine-framework,代码行数:4,代码来源:CreateResourceContext.cpp

示例5: isNeedProceed

 bool isNeedProceed(spNativeTexture t)
 {
     return t->getHandle() == 0;
 }
开发者ID:radonthetyrant,项目名称:oxygine-framework,代码行数:4,代码来源:Multithreading.cpp

示例6: TextureLine

        TextureLine(spNativeTexture t)
        {
            setVerticalMode(Box9Sprite::TILING_FULL);
            setHorizontalMode(Box9Sprite::TILING_FULL);
            Sprite::setResAnim(DebugActor::resSystem->getResAnim("checker"));

            AnimationFrame f;
            Vector2 s = fitSize(itemSize, Vector2((float)t->getWidth(), (float)t->getHeight()));

            setSize(s);

            Diffuse df;
            df.base = t;

            f.init(0, df, RectF(0, 0, 1.0f, 1.0f), RectF(0, 0, s.x, s.y), s);
            spSprite image = initActor(new Sprite,
                                       arg_blend = blend_disabled,
                                       arg_resAnim = f);
            addChild(image);

            spColorRectSprite rect = initActor(new ColorRectSprite,
                                               arg_color = Color(Color::White, 255),
                                               arg_attachTo = this);

            rect->addTween(Sprite::TweenColor(Color(Color::White, 0)), 4000, -1, true);

            char path[255];
            path::normalize(t->getName().c_str(), path);

            char txt[255];
            safe_sprintf(txt, "%s\n<div c=\"FF0000\">%s</div>-<div c=\"0000ff\">%dx%d</div>\nid: %d tid: %d",
                         path,
                         textureFormat2String(t->getFormat()),
                         t->getWidth(), t->getHeight(), t->getObjectID(), (int)(size_t)t->getHandle());

            spTextField text = initActor(new TextField,
                                         arg_color = Color::Black,
                                         arg_w = (float)itemSize.x,
                                         arg_vAlign = TextStyle::VALIGN_TOP,
                                         arg_hAlign = TextStyle::HALIGN_LEFT,
                                         arg_multiline = true,
                                         arg_attachTo = rect,
                                         arg_htmlText = txt
                                        );

            text->setBreakLongWords(true);

            rect->setSize(text->getTextRect().size.cast<Vector2>() + Vector2(2, 2));
            rect->setY((itemSize.y - rect->getHeight()) / 2.0f);
        }
开发者ID:Yahor10,项目名称:oxygine-framework,代码行数:50,代码来源:TexturesInspector.cpp


注:本文中的spNativeTexture::getHandle方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。