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


Java RenderState.getBlendMode方法代码示例

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


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

示例1: serializeToString

import com.jme3.material.RenderState; //导入方法依赖的package包/类
/**
 * Serialize to string string.
 *
 * @param material the material
 * @return the string
 */
public static String serializeToString(@NotNull final Material material) {

    final MaterialDef materialDef = material.getMaterialDef();
    final Collection<MatParam> params = material.getParams();

    final StringBuilder builder = new StringBuilder();
    builder.append("Material MyMaterial : ").append(materialDef.getAssetName()).append(" {\n");
    builder.append("    MaterialParameters {\n");

    params.forEach(matParam -> {
        final String value = toString(matParam.getVarType(), matParam.getValue());
        builder.append("        ").append(matParam.getName()).append(" : ").append(value).append('\n');
    });

    builder.append("    }\n");
    builder.append("    AdditionalRenderState {\n");

    final RenderState renderState = material.getAdditionalRenderState();
    final RenderState.BlendMode blendMode = renderState.getBlendMode();
    final RenderState.FaceCullMode faceCullMode = renderState.getFaceCullMode();

    if (blendMode != RenderState.BlendMode.Off) {
        builder.append("      Blend ").append(blendMode.name()).append('\n');
    }

    if (faceCullMode != RenderState.FaceCullMode.Back) {
        builder.append("      FaceCull ").append(faceCullMode.name()).append('\n');
    }

    if (renderState.isWireframe()) builder.append("      Wireframe On\n");
    if (!renderState.isDepthTest()) builder.append("      DepthTest Off\n");
    if (!renderState.isDepthWrite()) builder.append("      DepthWrite Off\n");
    if (!renderState.isColorWrite()) builder.append("      ColorWrite Off\n");

    final float polyOffsetFactor = renderState.getPolyOffsetFactor();
    final float polyOffsetUnits = renderState.getPolyOffsetUnits();

    if (polyOffsetFactor != 0 || polyOffsetUnits != 0) {
        builder.append("      PolyOffset ").append(polyOffsetFactor).append(' ').append(polyOffsetUnits).append('\n');
    }

    builder.append("    }\n");
    builder.append("}");

    return builder.toString();
}
 
开发者ID:JavaSaBr,项目名称:jmonkeybuilder,代码行数:53,代码来源:MaterialSerializer.java


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