zoukankan      html  css  js  c++  java
  • ogre overlay 添加2d图片

    收集的ogre 技巧
    如何设置透明

    在.material文件里,你可以设置 scene_blend 为 addmodulate 或 alpha_blend

    scene_blend add

    你可以使用JPEG 或 PNG文件为纹理
    图象全黑的地方为纯透明
    在爆炸,光晕,灯光等方面使用
    全白的地方是

    scene_blend modulate

    你可以使用JPEG或PNG文件为纹理, 纹理会根据背景进行想乘,通常它的颜色比图片
    要暗. 纹理黑的部分为透明.

    s
    ene_blend alpha_blend 

    你可以使用PNG图象文件为纹理,要在PNG文件里设置透明,你需要用Photoshop来处理它
    通过把背景层删除,并 在其他层使用橡皮擦.
    被擦掉的地方为透明

    投射阴影

    一个实体可以投射影子,默认的,光不能投射阴影.
    这里有4种阴影渲染的技术 TENCIL or TEXTURE, and ADDITIVE or MODULATIVE.
    (CPU最适合是的SHADOWTYPE_TEXTURE_MODULATIVE)

    STENCIL SHADOWS (模板阴影): 

    这个技术使用CPU来渲染
    你可以设置最大距离(调用setShadowFarDistance),来维持一个好的
    帧率

    投影的网格要是完全的(封闭和无洞).

    避免过长的影子
    避免对象距离光太近
    这个技术允许自投影
    这个影子有硬边(在影子和光之间进行硬转化)

    TEXTURE SHADOWS (纹理阴影): 

    这个技术使用显卡进行渲染
    这个技术只在方向光和聚光等下工作
    这个技术不允许自投影
    meshes 要定义 shadow caster 和 shadows receiver
    避免过长的影子
    避免对象距离光太近
    影子有一个柔和的边缘
    影子的颜色和精确度可以进行定义

    例子:

        mSceneMgr->setShadowsTechnique(SHADOWTYPE_TEXTURE_MODULATIVE);
    mSceneMgr->setShadowColour( ColourValue(0.5, 0.5, 0.5) );
    ...
    mLight->setCastShadows(true);
    ...
    mCastingObject->setCastShadows(true);
    mReceivingObject->setCastShadows(false);
    ...
    myMaterial->setReceiveShadows(true);
    ...

    注释: myMaterial->setReceiveShadows(true)指令可以替代在material文件里的receive_shadows on
    在材质的默认设置里是ON, 你可以在在材质里设置为 OFF来不让他接收阴影,这样可以节省一些
    帧率

    设置Overlay

    //加载2d图片
    OverlayElement* mpicture = OverlayManager::getSingleton().createOverlayElement("Panel","Overlay/Picture");
    mpicture->setParameter("metrics_mode","pixels");
    mpicture->setParameter("left","0");
    mpicture->setParameter("top","0");
    mpicture->setParameter("width","400");
    mpicture->setParameter("height","250");
    mpicture->setMaterialName("Examples/OgreLogo");

    Overlay* mOverlay = OverlayManager::getSingleton().create("Overlay");
    mOverlay->add2D((OverlayContainer*)mpicture);
    mOverlay->show();
  • 相关阅读:
    C#操作OFFICE一(EXCEL)
    json的使用二(转)
    xpath简介(转载)
    使用LogParser分析IIS网站日志
    WCF Data Contract KnownTypeAttribute转载
    ExtJs中同一个URL构造多个Ext.data.JsonStore 转载
    转载Ext.form.formPanel 与服务器交互 初始化表单
    oracle表数据误删恢复
    JavaScript基础之Array函数
    Json格式类的转换相关代码转载
  • 原文地址:https://www.cnblogs.com/minggoddess/p/1910198.html
Copyright © 2011-2022 走看看