當前位置: 首頁>>代碼示例>>Java>>正文


Java GL20.glGetShaderi方法代碼示例

本文整理匯總了Java中org.lwjgl.opengl.GL20.glGetShaderi方法的典型用法代碼示例。如果您正苦於以下問題:Java GL20.glGetShaderi方法的具體用法?Java GL20.glGetShaderi怎麽用?Java GL20.glGetShaderi使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.lwjgl.opengl.GL20的用法示例。


在下文中一共展示了GL20.glGetShaderi方法的12個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: createShader

import org.lwjgl.opengl.GL20; //導入方法依賴的package包/類
public int createShader(String fileName, int type) {
	int shader = OpenGlHelper.glCreateShader(type);

	if (shader != 0) {
		ARBShaderObjects.glShaderSourceARB(shader, readFile(fileName));

		OpenGlHelper.glCompileShader(shader);
		OpenGlHelper.glCompileShader(shader);

		if (GL20.glGetShaderi(shader, OpenGlHelper.GL_COMPILE_STATUS) == GL11.GL_FALSE) {
			throw new RuntimeException("Error creating shader: " + getLogInfo(shader));
		}
	}

	return shader;
}
 
開發者ID:the-realest-stu,項目名稱:Etheric,代碼行數:17,代碼來源:ShaderHandler.java

示例2: loadShader

import org.lwjgl.opengl.GL20; //導入方法依賴的package包/類
private int loadShader(MyFile file, int type) {
	StringBuilder shaderSource = new StringBuilder();
	try {
		BufferedReader reader = file.getReader();
		String line;
		while ((line = reader.readLine()) != null) {
			shaderSource.append(line).append("//\n");
		}
		reader.close();
	} catch (Exception e) {
		System.err.println("Could not read file.");
		e.printStackTrace();
		System.exit(-1);
	}
	int shaderID = GL20.glCreateShader(type);
	GL20.glShaderSource(shaderID, shaderSource);
	GL20.glCompileShader(shaderID);
	if (GL20.glGetShaderi(shaderID, GL20.GL_COMPILE_STATUS) == GL11.GL_FALSE) {
		System.out.println(GL20.glGetShaderInfoLog(shaderID, 500));
		System.err.println("Could not compile shader "+ file);
		System.exit(-1);
	}
	return shaderID;
}
 
開發者ID:TheThinMatrix,項目名稱:LowPolyWater,代碼行數:25,代碼來源:ShaderProgram.java

示例3: Shader

import org.lwjgl.opengl.GL20; //導入方法依賴的package包/類
/**
 * @param filename location for shader source code
 * @param type GL20.GL_VERTEX_SHADER or GL20.GL_FRAGMENT_SHADER
 */
public Shader(String filename, int type) {
	// Load shader source as a string
	StringBuilder source = loadFromFile(filename);
	
	// Create and compile shader
    id = glCreateShader(type);
    glShaderSource(id, source);
    glCompileShader(id);
    
    // Check for compilation errors
    if (GL20.glGetShaderi(id, GL20.GL_COMPILE_STATUS) == GL11.GL_FALSE) {
    	System.err.println(GL20.glGetShaderInfoLog(id));
    	throw new Error("Shader compilation failed: " + filename);
    }
}
 
開發者ID:tacocat,項目名稱:lambda,代碼行數:20,代碼來源:Shader.java

示例4: loadShader

import org.lwjgl.opengl.GL20; //導入方法依賴的package包/類
/**
 * reads shader from file.
 * @param file - File path
 * @param type - Shader type
 * @return - Shader ID to bind to program.
 */
private static int loadShader(String file, int type) {
    StringBuilder shaderSource = new StringBuilder();
    try {
        InputStream in = Class.class.getResourceAsStream(file);
        BufferedReader reader = new BufferedReader(new InputStreamReader(in));
        String line;
        while ((line = reader.readLine()) != null) {
            shaderSource.append(line).append("//\n");
        }
        reader.close();
    } catch (IOException e) {
        e.printStackTrace();
        System.exit(-1);
    }
    int shaderID = GL20.glCreateShader(type);
    GL20.glShaderSource(shaderID, shaderSource);
    GL20.glCompileShader(shaderID);
    if (GL20.glGetShaderi(shaderID, GL20.GL_COMPILE_STATUS) == GL11.GL_FALSE) {
        System.out.println(GL20.glGetShaderInfoLog(shaderID, 500));
        System.err.println("Could not compile shader!");
        System.exit(-1);
    }
    return shaderID;
}
 
開發者ID:Essentria,項目名稱:Elgin-Plant-Game,代碼行數:31,代碼來源:ShaderProgram.java

示例5: printShaderLogInfo

import org.lwjgl.opengl.GL20; //導入方法依賴的package包/類
private static boolean printShaderLogInfo(int shader, String name)
{
    IntBuffer intbuffer = BufferUtils.createIntBuffer(1);
    int i = GL20.glGetShaderi(shader, 35716);

    if (i > 1)
    {
        String s = GL20.glGetShaderInfoLog(shader, i);
        SMCLog.info("Shader info log: " + name + "\n" + s);
        return false;
    }
    else
    {
        return true;
    }
}
 
開發者ID:SkidJava,項目名稱:BaseClient,代碼行數:17,代碼來源:Shaders.java

示例6: Shader

import org.lwjgl.opengl.GL20; //導入方法依賴的package包/類
public Shader(String source, int type)
{
	this.type = type;

	this.handle = GL20.glCreateShader(this.type);
	if (this.handle == 0)
	{
		throw new GLException("Unable to create main.shader!");
	}

	GL20.glShaderSource(this.handle, source);
	GL20.glCompileShader(this.handle);

	int status = GL20.glGetShaderi(this.handle, GL20.GL_COMPILE_STATUS);
	if (status == GL11.GL_FALSE)
	{
		String infolog = GL20.glGetShaderInfoLog(this.handle);
		GL20.glDeleteShader(this.handle);
		this.handle = 0;

		throw new GLException(infolog);
	}

	SHADERS.add(this);
}
 
開發者ID:andykuo1,項目名稱:candlelight,代碼行數:26,代碼來源:Shader.java

示例7: loadShader

import org.lwjgl.opengl.GL20; //導入方法依賴的package包/類
private static int loadShader(String file, int type) {
	StringBuilder shaderSource = new StringBuilder();
	try {
		InputStream in = Class.class.getResourceAsStream(file);
		BufferedReader reader = new BufferedReader(new InputStreamReader(in));
		String line;
		while ((line = reader.readLine()) != null) {
			shaderSource.append(line).append("//\n");
		}
		reader.close();
	} catch (IOException e) {
		e.printStackTrace();
		System.exit(-1);
	}
	int shaderID = GL20.glCreateShader(type);
	GL20.glShaderSource(shaderID, shaderSource);
	GL20.glCompileShader(shaderID);
	if (GL20.glGetShaderi(shaderID, GL20.GL_COMPILE_STATUS) == GL11.GL_FALSE) {
		System.out.println(GL20.glGetShaderInfoLog(shaderID, 500));
		System.err.println("Could not compile shader!");
		System.exit(-1);
	}
	return shaderID;
}
 
開發者ID:DevipriyaSarkar,項目名稱:Terrain,代碼行數:25,代碼來源:ShaderProgram.java

示例8: printShaderLogInfo

import org.lwjgl.opengl.GL20; //導入方法依賴的package包/類
private static boolean printShaderLogInfo(int shader, String name, List<String> listFiles)
{
    IntBuffer intbuffer = BufferUtils.createIntBuffer(1);
    int i = GL20.glGetShaderi(shader, 35716);

    if (i <= 1)
    {
        return true;
    }
    else
    {
        for (int j = 0; j < listFiles.size(); ++j)
        {
            String s = (String)listFiles.get(j);
            SMCLog.info("File: " + (j + 1) + " = " + s);
        }

        String s1 = GL20.glGetShaderInfoLog(shader, i);
        SMCLog.info("Shader info log: " + name + "\n" + s1);
        return false;
    }
}
 
開發者ID:sudofox,項目名稱:Backmemed,代碼行數:23,代碼來源:Shaders.java

示例9: loadShader

import org.lwjgl.opengl.GL20; //導入方法依賴的package包/類
private int loadShader(MyFile file, int type) {
    StringBuilder shaderSource = new StringBuilder();
    try {
        BufferedReader reader = file.getReader();
        String line;
        while ((line = reader.readLine()) != null) {
            shaderSource.append(line).append("//\n");
        }
        reader.close();
    } catch (Exception e) {
        System.err.println("Could not read file.");
        e.printStackTrace();
        System.exit(-1);
    }
    int shaderID = GL20.glCreateShader(type);
    GL20.glShaderSource(shaderID, shaderSource);
    GL20.glCompileShader(shaderID);
    if (GL20.glGetShaderi(shaderID, GL20.GL_COMPILE_STATUS) == GL11.GL_FALSE) {
        System.out.println(GL20.glGetShaderInfoLog(shaderID, 500));
        System.err.println("Could not compile shader " + file);
        System.exit(-1);
    }
    return shaderID;
}
 
開發者ID:GryPLOfficial,項目名稱:EcoSystem-Official,代碼行數:25,代碼來源:ShaderProgram.java

示例10: createShader

import org.lwjgl.opengl.GL20; //導入方法依賴的package包/類
private int createShader(String resource, int type) {
	int shader = GL20.glCreateShader(type);
	GL20.glShaderSource(shader, resource);
	GL20.glCompileShader(shader);
	int compiled = GL20.glGetShaderi(shader, GL20.GL_COMPILE_STATUS);
	String shaderLog = GL20.glGetShaderInfoLog(shader, GL20.glGetShaderi(shader, GL20.GL_INFO_LOG_LENGTH));
	if (shaderLog.trim().length() > 0) {
		System.err.println(shaderLog);
	}
	if (compiled == 0) {
		throw new AssertionError("Could not compile shader");
	}
	return shader;
}
 
開發者ID:18107,項目名稱:MC-Ray-Tracer,代碼行數:15,代碼來源:Shader.java

示例11: loadShader

import org.lwjgl.opengl.GL20; //導入方法依賴的package包/類
private static int loadShader(String file, int type) {
    int shaderID = GL20.glCreateShader(type);
    GL20.glShaderSource(shaderID, FileLoadUtils.loadFileSource(file));
    GL20.glCompileShader(shaderID);
    if (GL20.glGetShaderi(shaderID, GL20.GL_COMPILE_STATUS) == GL11.GL_FALSE) {
        final String glGetShaderInfoLog = GL20.glGetShaderInfoLog(shaderID, 500);
        LOGGER.error("Can not compile shader - {}", glGetShaderInfoLog);
        throw new IllegalArgumentException("Can not compile shader - " + glGetShaderInfoLog);
    }
    return shaderID;
}
 
開發者ID:Biacode,項目名稱:bia-engine,代碼行數:12,代碼來源:ShaderProgram.java

示例12: glGetShaderi

import org.lwjgl.opengl.GL20; //導入方法依賴的package包/類
public static int glGetShaderi(int shaderIn, int pname)
{
    return arbShaders ? ARBShaderObjects.glGetObjectParameteriARB(shaderIn, pname) : GL20.glGetShaderi(shaderIn, pname);
}
 
開發者ID:Notoh,項目名稱:DecompiledMinecraft,代碼行數:5,代碼來源:OpenGlHelper.java


注:本文中的org.lwjgl.opengl.GL20.glGetShaderi方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。