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


Java Shader.ShaderType方法代码示例

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


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

示例1: containsShader

import com.jme3.shader.Shader; //导入方法依赖的package包/类
/**
 * Check a material definition on containing a shader.
 *
 * @param materialDef the material definition.
 * @param assetPath   the path of the shader.
 * @return true if the material definition contains the shader.
 */
private static boolean containsShader(@NotNull final MaterialDef materialDef, @NotNull final String assetPath) {

    final List<TechniqueDef> defaultTechniques = materialDef.getTechniqueDefs("Default");

    for (final TechniqueDef technique : defaultTechniques) {
        final EnumMap<Shader.ShaderType, String> shaderProgramNames = technique.getShaderProgramNames();
        if (shaderProgramNames.containsValue(assetPath)) return true;
    }

    return false;
}
 
开发者ID:JavaSaBr,项目名称:jmonkeybuilder,代码行数:19,代码来源:MaterialUtils.java

示例2: getType

import com.jme3.shader.Shader; //导入方法依赖的package包/类
public Shader.ShaderType getType() {
    if (btnGroup.isSelected(vertButton.getModel())) {
        return Shader.ShaderType.Vertex;
    } else {
        return Shader.ShaderType.Fragment;
    }
}
 
开发者ID:jMonkeyEngine,项目名称:sdk,代码行数:8,代码来源:ShaderVisualToolBar.java

示例3: getShaderCode

import com.jme3.shader.Shader; //导入方法依赖的package包/类
public String getShaderCode(String version, Shader.ShaderType type) {
    try {
        material.selectTechnique(currentTechnique.getName(), SceneApplication.getApplication().getRenderManager());
        Shader s;
        StringBuilder sb = new StringBuilder();
        TechniqueDef def = material.getActiveTechnique().getDef();
        sb.append(def.getShaderPrologue());
        material.getActiveTechnique().getDynamicDefines().generateSource(sb, Arrays.asList(def.getDefineNames()), Arrays.asList(def.getDefineTypes()));
        
        if (version.equals(GLSL100)) {
            glsl100.initialize(material.getActiveTechnique().getDef());
            s = glsl100.generateShader(sb.toString());
        } else {
            glsl150.initialize(material.getActiveTechnique().getDef());
            s = glsl150.generateShader(sb.toString());
        }
        for (Shader.ShaderSource source : s.getSources()) {
            if (source.getType() == type) {
                return source.getSource();
            }
        }
        return "";
    } catch (Exception e) {
        Exceptions.printStackTrace(e);
        return "Error generating shader: " + e.getMessage();
    }
}
 
开发者ID:jMonkeyEngine,项目名称:sdk,代码行数:28,代码来源:EditableMatDefFile.java

示例4: OutBusPanel

import com.jme3.shader.Shader; //导入方法依赖的package包/类
public OutBusPanel(String name, Shader.ShaderType type) {
    super(true);
    this.type = type;
    if (type == Shader.ShaderType.Fragment) {
        this.color = new Color(114, 200, 255);
    }
    setBounds(0, 0, 300, 50);
    JLabel title = new JLabel();
    this.name = name;
    title.setFont(new java.awt.Font("Impact", 1, 15)); // NOI18N
    title.setForeground(new java.awt.Color(153, 153, 153));
    title.setHorizontalAlignment(javax.swing.SwingConstants.RIGHT);
    title.setText(name);
    setOpaque(false);
    panel = new InnerPanel();

    javax.swing.GroupLayout outBusPanel1Layout = new javax.swing.GroupLayout(this);
    this.setLayout(outBusPanel1Layout);
    outBusPanel1Layout.setHorizontalGroup(
            outBusPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, outBusPanel1Layout.createSequentialGroup()
            .addContainerGap(70, 70)
            .addComponent(panel, 20, 200, Short.MAX_VALUE)
            .addComponent(title, GroupLayout.PREFERRED_SIZE, 70, GroupLayout.PREFERRED_SIZE)
            .addGap(30, 30, 30)));
    outBusPanel1Layout.setVerticalGroup(
            outBusPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(outBusPanel1Layout.createSequentialGroup()
            .addContainerGap()
            .addComponent(title, javax.swing.GroupLayout.DEFAULT_SIZE, 28, Short.MAX_VALUE)
            .addContainerGap())
            .addGroup(outBusPanel1Layout.createSequentialGroup()
            .addContainerGap(20, 20)
            .addComponent(panel, 10, 10, 10)
            .addContainerGap()));

    preview = new MatPanel();
    addComponentListener(preview);

}
 
开发者ID:jMonkeyEngine,项目名称:sdk,代码行数:41,代码来源:OutBusPanel.java

示例5: SNDefVisualPanel1

import com.jme3.shader.Shader; //导入方法依赖的package包/类
/**
 * Creates new form SNDefVisualPanel1
 */
public SNDefVisualPanel1() {
    initComponents();
    DefaultComboBoxModel<String> model = new DefaultComboBoxModel<String>();
    for (Shader.ShaderType shaderType : Shader.ShaderType.values()) {
        if(!shaderType.name().equalsIgnoreCase("geometry")){//hack to not have geometry shader remove that when geometry shader are in
            model.addElement(shaderType.name());
        }
    }
    shaderTypeCB.setModel(model);
}
 
开发者ID:jMonkeyEngine,项目名称:sdk,代码行数:14,代码来源:SNDefVisualPanel1.java

示例6: getType

import com.jme3.shader.Shader; //导入方法依赖的package包/类
public Shader.ShaderType getType(){
    return type;
}
 
开发者ID:jMonkeyEngine,项目名称:sdk,代码行数:4,代码来源:OutBusPanel.java

示例7: setShaderTypr

import com.jme3.shader.Shader; //导入方法依赖的package包/类
public void setShaderTypr(Shader.ShaderType shaderType){
     this.shaderType = shaderType;
}
 
开发者ID:jMonkeyEngine,项目名称:sdk,代码行数:4,代码来源:Dot.java


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