Java 类org.lwjgl.opengl.GLContext 实例源码
项目:trashjam2017
文件:GraphicsFactory.java
/**
* Initialise offscreen rendering by checking what buffers are supported
* by the card
*
* @throws SlickException Indicates no buffers are supported
*/
private static void init() throws SlickException {
init = true;
if (fbo) {
fbo = GLContext.getCapabilities().GL_EXT_framebuffer_object;
}
pbuffer = (Pbuffer.getCapabilities() & Pbuffer.PBUFFER_SUPPORTED) != 0;
pbufferRT = (Pbuffer.getCapabilities() & Pbuffer.RENDER_TEXTURE_SUPPORTED) != 0;
if (!fbo && !pbuffer && !pbufferRT) {
throw new SlickException("Your OpenGL card does not support offscreen buffers and hence can't handle the dynamic images required for this application.");
}
Log.info("Offscreen Buffers FBO="+fbo+" PBUFFER="+pbuffer+" PBUFFERRT="+pbufferRT);
}
项目:Progetto-C
文件:GraphicsFactory.java
/**
* Initialise offscreen rendering by checking what buffers are supported
* by the card
*
* @throws SlickException Indicates no buffers are supported
*/
private static void init() throws SlickException {
init = true;
if (fbo) {
fbo = GLContext.getCapabilities().GL_EXT_framebuffer_object;
}
pbuffer = (Pbuffer.getCapabilities() & Pbuffer.PBUFFER_SUPPORTED) != 0;
pbufferRT = (Pbuffer.getCapabilities() & Pbuffer.RENDER_TEXTURE_SUPPORTED) != 0;
if (!fbo && !pbuffer && !pbufferRT) {
throw new SlickException("Your OpenGL card does not support offscreen buffers and hence can't handle the dynamic images required for this application.");
}
Log.info("Offscreen Buffers FBO="+fbo+" PBUFFER="+pbuffer+" PBUFFERRT="+pbufferRT);
}
项目:open-world
文件:Application.java
/**
* Creates a GLFWWindow and gives it OpenGL context
*/
private void createWindow() {
// Hide the window during application initialization
Window.hint(GLFW.GLFW_VISIBLE, GL11.GL_FALSE);
// Setup MSAA 4x
Window.hint(GLFW.GLFW_SAMPLES, 4);
WINDOW.create(config.width, config.height, config.title);
// Make this thread and window the current context for OpenGL
WINDOW.makeContextCurrent();
GLContext.createFromCurrent();
// Set other specified window configurations
WINDOW.setVSyncEnabled(config.vSyncEnabled);
WINDOW.setPosition(config.position);
}
项目:Prepare4LudumDare
文件:Game.java
/**
* Initialize default state.
*/
private void init() {
if (glfwInit() != GL_TRUE) {
throw new IllegalStateException("GLFW failed to initialize!");
}
win = glfwCreateWindow(SCREEN_WIDTH, SCREEN_HEIGHT, TITLE, 0, 0);
glfwShowWindow(win);
glfwMakeContextCurrent(win);
GLContext.createFromCurrent();
GL.createCapabilities(true);
glEnable(GL_TEXTURE_2D);
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
}
项目:BaseClient
文件:Shaders.java
public static void startup(Minecraft mc)
{
checkShadersModInstalled();
mc = Minecraft.getMinecraft();
capabilities = GLContext.getCapabilities();
glVersionString = GL11.glGetString(GL11.GL_VERSION);
glVendorString = GL11.glGetString(GL11.GL_VENDOR);
glRendererString = GL11.glGetString(GL11.GL_RENDERER);
SMCLog.info("ShadersMod version: 2.4.12");
SMCLog.info("OpenGL Version: " + glVersionString);
SMCLog.info("Vendor: " + glVendorString);
SMCLog.info("Renderer: " + glRendererString);
SMCLog.info("Capabilities: " + (capabilities.OpenGL20 ? " 2.0 " : " - ") + (capabilities.OpenGL21 ? " 2.1 " : " - ") + (capabilities.OpenGL30 ? " 3.0 " : " - ") + (capabilities.OpenGL32 ? " 3.2 " : " - ") + (capabilities.OpenGL40 ? " 4.0 " : " - "));
SMCLog.info("GL_MAX_DRAW_BUFFERS: " + GL11.glGetInteger(GL20.GL_MAX_DRAW_BUFFERS));
SMCLog.info("GL_MAX_COLOR_ATTACHMENTS_EXT: " + GL11.glGetInteger(36063));
SMCLog.info("GL_MAX_TEXTURE_IMAGE_UNITS: " + GL11.glGetInteger(GL20.GL_MAX_TEXTURE_IMAGE_UNITS));
hasGlGenMipmap = capabilities.OpenGL30;
loadConfig();
}
项目:BaseClient
文件:GraphicsFactory.java
/**
* Initialise offscreen rendering by checking what buffers are supported
* by the card
*
* @throws SlickException Indicates no buffers are supported
*/
private static void init() throws SlickException {
init = true;
if (fbo) {
fbo = GLContext.getCapabilities().GL_EXT_framebuffer_object;
}
pbuffer = (Pbuffer.getCapabilities() & Pbuffer.PBUFFER_SUPPORTED) != 0;
pbufferRT = (Pbuffer.getCapabilities() & Pbuffer.RENDER_TEXTURE_SUPPORTED) != 0;
if (!fbo && !pbuffer && !pbufferRT) {
throw new SlickException("Your OpenGL card does not support offscreen buffers and hence can't handle the dynamic images required for this application.");
}
Log.info("Offscreen Buffers FBO="+fbo+" PBUFFER="+pbuffer+" PBUFFERRT="+pbufferRT);
}
项目:Backmemed
文件:Shaders.java
public static void startup(Minecraft mc)
{
checkShadersModInstalled();
Shaders.mc = mc;
mc = Minecraft.getMinecraft();
capabilities = GLContext.getCapabilities();
glVersionString = GL11.glGetString(GL11.GL_VERSION);
glVendorString = GL11.glGetString(GL11.GL_VENDOR);
glRendererString = GL11.glGetString(GL11.GL_RENDERER);
SMCLog.info("ShadersMod version: 2.4.12");
SMCLog.info("OpenGL Version: " + glVersionString);
SMCLog.info("Vendor: " + glVendorString);
SMCLog.info("Renderer: " + glRendererString);
SMCLog.info("Capabilities: " + (capabilities.OpenGL20 ? " 2.0 " : " - ") + (capabilities.OpenGL21 ? " 2.1 " : " - ") + (capabilities.OpenGL30 ? " 3.0 " : " - ") + (capabilities.OpenGL32 ? " 3.2 " : " - ") + (capabilities.OpenGL40 ? " 4.0 " : " - "));
SMCLog.info("GL_MAX_DRAW_BUFFERS: " + GL11.glGetInteger(GL20.GL_MAX_DRAW_BUFFERS));
SMCLog.info("GL_MAX_COLOR_ATTACHMENTS_EXT: " + GL11.glGetInteger(36063));
SMCLog.info("GL_MAX_TEXTURE_IMAGE_UNITS: " + GL11.glGetInteger(GL20.GL_MAX_TEXTURE_IMAGE_UNITS));
hasGlGenMipmap = capabilities.OpenGL30;
loadConfig();
}
项目:Backmemed
文件:GuiMainMenu.java
public GuiMainMenu() {
this.openGLWarning2 = MORE_INFO_TEXT;
IResource iresource = null;
this.splashText = "uhoh";
this.splashText = Splashes.getSplashes()[new Random().nextInt(Splashes.getSplashes().length)];
this.updateCounter = RANDOM.nextFloat();
this.openGLWarning1 = "";
if (!GLContext.getCapabilities().OpenGL20 && !OpenGlHelper.areShadersSupported()) {
this.openGLWarning1 = I18n.format("title.oldgl1", new Object[0]);
this.openGLWarning2 = I18n.format("title.oldgl2", new Object[0]);
this.openGLWarningLink = "https://help.mojang.com/customer/portal/articles/325948?ref=game";
}
String s1 = System.getProperty("java.version");
if (s1 != null && (s1.startsWith("1.6") || s1.startsWith("1.7"))) {
this.openGLWarning1 = I18n.format("title.oldjava1", new Object[0]);
this.openGLWarning2 = I18n.format("title.oldjava2", new Object[0]);
this.openGLWarningLink = "https://help.mojang.com/customer/portal/articles/2636196?ref=game";
}
}
项目:PhET
文件:StartupUtils.java
/**
* @return Maxiumum anti-aliasing samples supported. Required to have the LWJGL libraries loaded before calling
*/
public static int getMaximumAntialiasingSamples() {
int result = 0;
try {
Pbuffer pb = new Pbuffer( 10, 10, new PixelFormat( 24, 8, 24, 8, 0 ), null );
pb.makeCurrent();
boolean supported = GLContext.getCapabilities().GL_ARB_multisample;
if ( supported ) {
result = GL11.glGetInteger( GL30.GL_MAX_SAMPLES );
}
pb.destroy();
}
catch( LWJGLException e ) {
//e.printStackTrace();
}
return result;
}
项目:PhET
文件:JMEUtils.java
/**
* @return Maxiumum anti-aliasing samples supported. Required to have the LWJGL libraries loaded before calling
*/
public static int getMaximumAntialiasingSamples() {
int result = 0;
try {
Pbuffer pb = new Pbuffer( 10, 10, new PixelFormat( 32, 0, 24, 8, 0 ), null );
pb.makeCurrent();
boolean supported = GLContext.getCapabilities().GL_ARB_multisample;
if ( supported ) {
result = GL11.glGetInteger( GL30.GL_MAX_SAMPLES );
}
pb.destroy();
}
catch ( LWJGLException e ) {
//e.printStackTrace();
}
return result;
}
项目:PhET
文件:VBOTest.java
/**
* Initialize
*/
private static void init() throws Exception {
System.out.println("Timer resolution: " + Sys.getTimerResolution());
// Go into orthographic projection mode.
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0, Display.getDisplayMode().getWidth(), 0, Display.getDisplayMode().getHeight());
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glViewport(0, 0, Display.getDisplayMode().getWidth(), Display.getDisplayMode().getHeight());
if ( !GLContext.getCapabilities().GL_ARB_vertex_buffer_object ) {
System.out.println("ARB VBO not supported!");
System.exit(1);
}
buffer_id = glGenBuffersARB();
glBindBufferARB(GL_ARRAY_BUFFER_ARB, buffer_id);
vertices = ByteBuffer.allocateDirect(2 * 4 * 4).order(ByteOrder.nativeOrder()).asFloatBuffer();
vertices.put(-50).put(-50).put(50).put(-50).put(50).put(50).put(-50).put(50);
glBufferDataARB(GL_ARRAY_BUFFER_ARB, 2 * 4 * 4, GL_STREAM_DRAW_ARB);
glEnableClientState(GL_VERTEX_ARRAY);
glVertexPointer(2, GL_FLOAT, 0, 0);
}
项目:PhET
文件:LwjglGL1Renderer.java
public void initialize() {
//glDisable(GL_DEPTH_TEST);
glShadeModel(GL_SMOOTH);
glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);
if (GLContext.getCapabilities().GL_ARB_texture_non_power_of_two) {
caps.add(Caps.NonPowerOfTwoTextures);
} else {
logger.log(Level.WARNING, "Your graphics card does not "
+ "support non-power-of-2 textures. "
+ "Some features might not work.");
}
if (GLContext.getCapabilities().OpenGL12){
gl12 = true;
}
}
项目:PhET
文件:LwjglContext.java
protected void printContextInitInfo(){
logger.log(Level.FINE, "Running on thread: {0}", Thread.currentThread().getName());
logger.log(Level.INFO, "Adapter: {0}", Display.getAdapter());
logger.log(Level.INFO, "Driver Version: {0}", Display.getVersion());
String vendor = GL11.glGetString(GL11.GL_VENDOR);
logger.log(Level.INFO, "Vendor: {0}", vendor);
String version = GL11.glGetString(GL11.GL_VERSION);
logger.log(Level.INFO, "OpenGL Version: {0}", version);
String renderGl = GL11.glGetString(GL11.GL_RENDERER);
logger.log(Level.INFO, "Renderer: {0}", renderGl);
if (GLContext.getCapabilities().OpenGL20){
String shadingLang = GL11.glGetString(GL20.GL_SHADING_LANGUAGE_VERSION);
logger.log(Level.INFO, "GLSL Ver: {0}", shadingLang);
}
}
项目:Mystic-Bastion
文件:Loader.java
public int loadTexture(String fileName) {
Texture texture = null;
try {
texture = TextureLoader.getTexture("PNG",
new FileInputStream(MainGameLoop.fileManager.getTextureFile(fileName)));
GL30.glGenerateMipmap(GL11.GL_TEXTURE_2D);
GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL11.GL_TEXTURE_MIN_FILTER, GL11.GL_LINEAR_MIPMAP_LINEAR);
GL11.glTexParameterf(GL11.GL_TEXTURE_2D, GL14.GL_TEXTURE_LOD_BIAS, 0);
if (GLContext.getCapabilities().GL_EXT_texture_filter_anisotropic) {
float amount = Math.min(4f,
GL11.glGetFloat(EXTTextureFilterAnisotropic.GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT));
GL11.glTexParameterf(GL11.GL_TEXTURE_2D, EXTTextureFilterAnisotropic.GL_TEXTURE_MAX_ANISOTROPY_EXT,
amount);
} else {
System.out.println("Filter Anisotropic Not Supported");
}
} catch (Exception e) {
e.printStackTrace();
System.err.println("Tried to load texture " + fileName + ".png , didn't work");
System.exit(-1);
}
textures.add(texture.getTextureID());
return texture.getTextureID();
}
项目:code404
文件:GraphicsFactory.java
/**
* Initialise offscreen rendering by checking what buffers are supported
* by the card
*
* @throws SlickException Indicates no buffers are supported
*/
private static void init() throws SlickException {
init = true;
if (fbo) {
fbo = GLContext.getCapabilities().GL_EXT_framebuffer_object;
}
pbuffer = (Pbuffer.getCapabilities() & Pbuffer.PBUFFER_SUPPORTED) != 0;
pbufferRT = (Pbuffer.getCapabilities() & Pbuffer.RENDER_TEXTURE_SUPPORTED) != 0;
if (!fbo && !pbuffer && !pbufferRT) {
throw new SlickException("Your OpenGL card does not support offscreen buffers and hence can't handle the dynamic images required for this application.");
}
Log.info("Offscreen Buffers FBO="+fbo+" PBUFFER="+pbuffer+" PBUFFERRT="+pbufferRT);
}
项目:animated-texture-fix
文件:AnimfixModContainer.java
@Subscribe
public void preInit(FMLPreInitializationEvent evt) {
log = evt.getModLog();
ContextCapabilities caps = GLContext.getCapabilities();
copyImageSupported = caps.OpenGL43 || caps.GL_ARB_copy_image;
if(!copyImageSupported) {
log.warn("Fast animated textures require OpenGL 4.3 or ARB_copy_image extension, which were not detected. Using original slow path.");
} else {
log.info("Using fast animated textures.");
}
File configFile = evt.getSuggestedConfigurationFile();
Configuration config = new Configuration(configFile);
boolean enableFastAnimation = config.getBoolean("enableFastAnimation", "animfix", true, "Enable the faster animation mode. Set to false only if true causes issues.");
maxUpdateMip = config.getInt("maxUpdateMipLevel", "animfix", -1, -1, 4, "Set to a number to disable animation updates past that mip level. -1 means update all. Higher numbers update more levels.");
if(config.hasChanged()) {
config.save();
}
copyImageEnabled = copyImageSupported && enableFastAnimation;
}
项目:Boids
文件:Window.java
public Window(String title, int width, int height) {
Window.title = title;
Window.width = width;
Window.height = height;
glfwInit();
//glfwWindowHint(GLFW_DECORATED, GL_FALSE);
window = glfwCreateWindow(width, height, title, 0, 0);
glfwMakeContextCurrent(window);
GLContext.createFromCurrent();
glfwSwapInterval(1);
keyCallback = new KeyCallback();
mousePosCallback = new MousePosCallback();
glfwSetKeyCallback(window, keyCallback);
glfwSetCursorPosCallback(window, mousePosCallback);
}
项目:Resilience-Client-Source
文件:OpenGlHelper.java
/**
* Initializes the texture constants to be used when rendering lightmap values
*/
public static void initializeTextures()
{
Config.initDisplay();
useMultitextureARB = GLContext.getCapabilities().GL_ARB_multitexture && !GLContext.getCapabilities().OpenGL13;
if (useMultitextureARB)
{
defaultTexUnit = 33984;
lightmapTexUnit = 33985;
}
else
{
defaultTexUnit = 33984;
lightmapTexUnit = 33985;
}
openGL14 = GLContext.getCapabilities().OpenGL14;
framebufferSupported = openGL14 && GLContext.getCapabilities().GL_ARB_framebuffer_object;
anisotropicFilteringSupported = GLContext.getCapabilities().GL_EXT_texture_filter_anisotropic;
anisotropicFilteringMax = (int)(anisotropicFilteringSupported ? GL11.glGetFloat(34047) : 0.0F);
GameSettings.Options.ANISOTROPIC_FILTERING.setValueMax((float)anisotropicFilteringMax);
openGL21 = GLContext.getCapabilities().OpenGL21;
shadersSupported = framebufferSupported && openGL21;
}
项目:Resilience-Client-Source
文件:Minecraft.java
public void addServerTypeToSnooper(PlayerUsageSnooper par1PlayerUsageSnooper)
{
par1PlayerUsageSnooper.addData("opengl_version", GL11.glGetString(GL11.GL_VERSION));
par1PlayerUsageSnooper.addData("opengl_vendor", GL11.glGetString(GL11.GL_VENDOR));
par1PlayerUsageSnooper.addData("client_brand", ClientBrandRetriever.getClientModName());
par1PlayerUsageSnooper.addData("launched_version", this.launchedVersion);
ContextCapabilities var2 = GLContext.getCapabilities();
par1PlayerUsageSnooper.addData("gl_caps[ARB_multitexture]", Boolean.valueOf(var2.GL_ARB_multitexture));
par1PlayerUsageSnooper.addData("gl_caps[ARB_multisample]", Boolean.valueOf(var2.GL_ARB_multisample));
par1PlayerUsageSnooper.addData("gl_caps[ARB_texture_cube_map]", Boolean.valueOf(var2.GL_ARB_texture_cube_map));
par1PlayerUsageSnooper.addData("gl_caps[ARB_vertex_blend]", Boolean.valueOf(var2.GL_ARB_vertex_blend));
par1PlayerUsageSnooper.addData("gl_caps[ARB_matrix_palette]", Boolean.valueOf(var2.GL_ARB_matrix_palette));
par1PlayerUsageSnooper.addData("gl_caps[ARB_vertex_program]", Boolean.valueOf(var2.GL_ARB_vertex_program));
par1PlayerUsageSnooper.addData("gl_caps[ARB_vertex_shader]", Boolean.valueOf(var2.GL_ARB_vertex_shader));
par1PlayerUsageSnooper.addData("gl_caps[ARB_fragment_program]", Boolean.valueOf(var2.GL_ARB_fragment_program));
par1PlayerUsageSnooper.addData("gl_caps[ARB_fragment_shader]", Boolean.valueOf(var2.GL_ARB_fragment_shader));
par1PlayerUsageSnooper.addData("gl_caps[ARB_shader_objects]", Boolean.valueOf(var2.GL_ARB_shader_objects));
par1PlayerUsageSnooper.addData("gl_caps[ARB_vertex_buffer_object]", Boolean.valueOf(var2.GL_ARB_vertex_buffer_object));
par1PlayerUsageSnooper.addData("gl_caps[ARB_framebuffer_object]", Boolean.valueOf(var2.GL_ARB_framebuffer_object));
par1PlayerUsageSnooper.addData("gl_caps[ARB_pixel_buffer_object]", Boolean.valueOf(var2.GL_ARB_pixel_buffer_object));
par1PlayerUsageSnooper.addData("gl_caps[ARB_uniform_buffer_object]", Boolean.valueOf(var2.GL_ARB_uniform_buffer_object));
par1PlayerUsageSnooper.addData("gl_caps[ARB_texture_non_power_of_two]", Boolean.valueOf(var2.GL_ARB_texture_non_power_of_two));
par1PlayerUsageSnooper.addData("gl_caps[gl_max_vertex_uniforms]", Integer.valueOf(GL11.glGetInteger(GL20.GL_MAX_VERTEX_UNIFORM_COMPONENTS)));
par1PlayerUsageSnooper.addData("gl_caps[gl_max_fragment_uniforms]", Integer.valueOf(GL11.glGetInteger(GL20.GL_MAX_FRAGMENT_UNIFORM_COMPONENTS)));
par1PlayerUsageSnooper.addData("gl_max_texture_size", Integer.valueOf(getGLMaximumTextureSize()));
}
项目:TeacherSmash
文件:VBOTest.java
/**
* Initialize
*/
private static void init() throws Exception {
System.out.println("Timer resolution: " + Sys.getTimerResolution());
// Go into orthographic projection mode.
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0, Display.getDisplayMode().getWidth(), 0, Display.getDisplayMode().getHeight());
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glViewport(0, 0, Display.getDisplayMode().getWidth(), Display.getDisplayMode().getHeight());
if ( !GLContext.getCapabilities().GL_ARB_vertex_buffer_object ) {
System.out.println("ARB VBO not supported!");
System.exit(1);
}
buffer_id = glGenBuffersARB();
glBindBufferARB(GL_ARRAY_BUFFER_ARB, buffer_id);
vertices = ByteBuffer.allocateDirect(2 * 4 * 4).order(ByteOrder.nativeOrder()).asFloatBuffer();
vertices.put(-50).put(-50).put(50).put(-50).put(50).put(50).put(-50).put(50);
glBufferDataARB(GL_ARRAY_BUFFER_ARB, 2 * 4 * 4, GL_STREAM_DRAW_ARB);
glEnableClientState(GL_VERTEX_ARRAY);
glVertexPointer(2, GL_FLOAT, 0, 0);
}
项目:cretion
文件:GraphicsFactory.java
/**
* Initialise offscreen rendering by checking what buffers are supported
* by the card
*
* @throws SlickException Indicates no buffers are supported
*/
private static void init() throws SlickException {
init = true;
if (fbo) {
fbo = GLContext.getCapabilities().GL_EXT_framebuffer_object;
}
pbuffer = (Pbuffer.getCapabilities() & Pbuffer.PBUFFER_SUPPORTED) != 0;
pbufferRT = (Pbuffer.getCapabilities() & Pbuffer.RENDER_TEXTURE_SUPPORTED) != 0;
if (!fbo && !pbuffer && !pbufferRT) {
throw new SlickException("Your OpenGL card does not support offscreen buffers and hence can't handle the dynamic images required for this application.");
}
Log.info("Offscreen Buffers FBO="+fbo+" PBUFFER="+pbuffer+" PBUFFERRT="+pbufferRT);
}
项目:SpaceStationAlpha
文件:VBOTest.java
/**
* Initialize
*/
private static void init() throws Exception {
System.out.println("Timer resolution: " + Sys.getTimerResolution());
// Go into orthographic projection mode.
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0, Display.getDisplayMode().getWidth(), 0, Display.getDisplayMode().getHeight());
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glViewport(0, 0, Display.getDisplayMode().getWidth(), Display.getDisplayMode().getHeight());
if ( !GLContext.getCapabilities().GL_ARB_vertex_buffer_object ) {
System.out.println("ARB VBO not supported!");
System.exit(1);
}
buffer_id = glGenBuffersARB();
glBindBufferARB(GL_ARRAY_BUFFER_ARB, buffer_id);
vertices = ByteBuffer.allocateDirect(2 * 4 * 4).order(ByteOrder.nativeOrder()).asFloatBuffer();
vertices.put(-50).put(-50).put(50).put(-50).put(50).put(50).put(-50).put(50);
glBufferDataARB(GL_ARRAY_BUFFER_ARB, 2 * 4 * 4, GL_STREAM_DRAW_ARB);
glEnableClientState(GL_VERTEX_ARRAY);
glVertexPointer(2, GL_FLOAT, 0, 0);
}
项目:RuneCraftery
文件:Minecraft.java
public void func_70001_b(PlayerUsageSnooper p_70001_1_) {
p_70001_1_.func_76472_a("opengl_version", GL11.glGetString(7938));
p_70001_1_.func_76472_a("opengl_vendor", GL11.glGetString(7936));
p_70001_1_.func_76472_a("client_brand", ClientBrandRetriever.getClientModName());
p_70001_1_.func_76472_a("launched_version", this.field_110447_Z);
ContextCapabilities var2 = GLContext.getCapabilities();
p_70001_1_.func_76472_a("gl_caps[ARB_multitexture]", Boolean.valueOf(var2.GL_ARB_multitexture));
p_70001_1_.func_76472_a("gl_caps[ARB_multisample]", Boolean.valueOf(var2.GL_ARB_multisample));
p_70001_1_.func_76472_a("gl_caps[ARB_texture_cube_map]", Boolean.valueOf(var2.GL_ARB_texture_cube_map));
p_70001_1_.func_76472_a("gl_caps[ARB_vertex_blend]", Boolean.valueOf(var2.GL_ARB_vertex_blend));
p_70001_1_.func_76472_a("gl_caps[ARB_matrix_palette]", Boolean.valueOf(var2.GL_ARB_matrix_palette));
p_70001_1_.func_76472_a("gl_caps[ARB_vertex_program]", Boolean.valueOf(var2.GL_ARB_vertex_program));
p_70001_1_.func_76472_a("gl_caps[ARB_vertex_shader]", Boolean.valueOf(var2.GL_ARB_vertex_shader));
p_70001_1_.func_76472_a("gl_caps[ARB_fragment_program]", Boolean.valueOf(var2.GL_ARB_fragment_program));
p_70001_1_.func_76472_a("gl_caps[ARB_fragment_shader]", Boolean.valueOf(var2.GL_ARB_fragment_shader));
p_70001_1_.func_76472_a("gl_caps[ARB_shader_objects]", Boolean.valueOf(var2.GL_ARB_shader_objects));
p_70001_1_.func_76472_a("gl_caps[ARB_vertex_buffer_object]", Boolean.valueOf(var2.GL_ARB_vertex_buffer_object));
p_70001_1_.func_76472_a("gl_caps[ARB_framebuffer_object]", Boolean.valueOf(var2.GL_ARB_framebuffer_object));
p_70001_1_.func_76472_a("gl_caps[ARB_pixel_buffer_object]", Boolean.valueOf(var2.GL_ARB_pixel_buffer_object));
p_70001_1_.func_76472_a("gl_caps[ARB_uniform_buffer_object]", Boolean.valueOf(var2.GL_ARB_uniform_buffer_object));
p_70001_1_.func_76472_a("gl_caps[ARB_texture_non_power_of_two]", Boolean.valueOf(var2.GL_ARB_texture_non_power_of_two));
p_70001_1_.func_76472_a("gl_caps[gl_max_vertex_uniforms]", Integer.valueOf(GL11.glGetInteger('\u8b4a')));
p_70001_1_.func_76472_a("gl_caps[gl_max_fragment_uniforms]", Integer.valueOf(GL11.glGetInteger('\u8b49')));
p_70001_1_.func_76472_a("gl_max_texture_size", Integer.valueOf(func_71369_N()));
}
项目:Wolf_game
文件:VBOTest.java
/**
* Initialize
*/
private static void init() throws Exception {
System.out.println("Timer resolution: " + Sys.getTimerResolution());
// Go into orthographic projection mode.
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0, Display.getDisplayMode().getWidth(), 0, Display.getDisplayMode().getHeight());
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glViewport(0, 0, Display.getDisplayMode().getWidth(), Display.getDisplayMode().getHeight());
if ( !GLContext.getCapabilities().GL_ARB_vertex_buffer_object ) {
System.out.println("ARB VBO not supported!");
System.exit(1);
}
buffer_id = glGenBuffersARB();
glBindBufferARB(GL_ARRAY_BUFFER_ARB, buffer_id);
vertices = ByteBuffer.allocateDirect(2 * 4 * 4).order(ByteOrder.nativeOrder()).asFloatBuffer();
vertices.put(-50).put(-50).put(50).put(-50).put(50).put(50).put(-50).put(50);
glBufferDataARB(GL_ARRAY_BUFFER_ARB, 2 * 4 * 4, GL_STREAM_DRAW_ARB);
glEnableClientState(GL_VERTEX_ARRAY);
glVertexPointer(2, GL_FLOAT, 0, 0);
}
项目:GdxStudio
文件:StudioPanel.java
public void setGdxScreenSize(int width, int height){
removeAll();
canvas.getCanvas().setSize(width, height);
scrollPane = new JScrollPane(canvas.getCanvas());
scrollPane.setPreferredSize(new Dimension(width, height));
UIUtils.setDrawBorder(scrollPane, false);
Style.setScreenSize(scrollPane.getPreferredSize().width, scrollPane.getPreferredSize().height);
scrollPane.setPreferredSize(new Dimension(width, height));
centerPanel = new CenterPanel(scrollPane, true, false);
centerPanel.setBackground(Color.black);
UIUtils.setUndecorated(centerPanel, true);
UIUtils.setMargin(centerPanel, new Insets(0,0,0,0));
add(centerPanel);
validate();
Style.setScreenPosition(scrollPane.getLocation().x, scrollPane.getLocation().y);
canvas.makeCurrent();
try {
GLContext.useContext(canvas);
} catch (LWJGLException e) {
e.printStackTrace();
}
}
项目:RuneCraftery
文件:Minecraft.java
public void addServerTypeToSnooper(PlayerUsageSnooper par1PlayerUsageSnooper)
{
par1PlayerUsageSnooper.addData("opengl_version", GL11.glGetString(GL11.GL_VERSION));
par1PlayerUsageSnooper.addData("opengl_vendor", GL11.glGetString(GL11.GL_VENDOR));
par1PlayerUsageSnooper.addData("client_brand", ClientBrandRetriever.getClientModName());
par1PlayerUsageSnooper.addData("launched_version", this.launchedVersion);
ContextCapabilities contextcapabilities = GLContext.getCapabilities();
par1PlayerUsageSnooper.addData("gl_caps[ARB_multitexture]", Boolean.valueOf(contextcapabilities.GL_ARB_multitexture));
par1PlayerUsageSnooper.addData("gl_caps[ARB_multisample]", Boolean.valueOf(contextcapabilities.GL_ARB_multisample));
par1PlayerUsageSnooper.addData("gl_caps[ARB_texture_cube_map]", Boolean.valueOf(contextcapabilities.GL_ARB_texture_cube_map));
par1PlayerUsageSnooper.addData("gl_caps[ARB_vertex_blend]", Boolean.valueOf(contextcapabilities.GL_ARB_vertex_blend));
par1PlayerUsageSnooper.addData("gl_caps[ARB_matrix_palette]", Boolean.valueOf(contextcapabilities.GL_ARB_matrix_palette));
par1PlayerUsageSnooper.addData("gl_caps[ARB_vertex_program]", Boolean.valueOf(contextcapabilities.GL_ARB_vertex_program));
par1PlayerUsageSnooper.addData("gl_caps[ARB_vertex_shader]", Boolean.valueOf(contextcapabilities.GL_ARB_vertex_shader));
par1PlayerUsageSnooper.addData("gl_caps[ARB_fragment_program]", Boolean.valueOf(contextcapabilities.GL_ARB_fragment_program));
par1PlayerUsageSnooper.addData("gl_caps[ARB_fragment_shader]", Boolean.valueOf(contextcapabilities.GL_ARB_fragment_shader));
par1PlayerUsageSnooper.addData("gl_caps[ARB_shader_objects]", Boolean.valueOf(contextcapabilities.GL_ARB_shader_objects));
par1PlayerUsageSnooper.addData("gl_caps[ARB_vertex_buffer_object]", Boolean.valueOf(contextcapabilities.GL_ARB_vertex_buffer_object));
par1PlayerUsageSnooper.addData("gl_caps[ARB_framebuffer_object]", Boolean.valueOf(contextcapabilities.GL_ARB_framebuffer_object));
par1PlayerUsageSnooper.addData("gl_caps[ARB_pixel_buffer_object]", Boolean.valueOf(contextcapabilities.GL_ARB_pixel_buffer_object));
par1PlayerUsageSnooper.addData("gl_caps[ARB_uniform_buffer_object]", Boolean.valueOf(contextcapabilities.GL_ARB_uniform_buffer_object));
par1PlayerUsageSnooper.addData("gl_caps[ARB_texture_non_power_of_two]", Boolean.valueOf(contextcapabilities.GL_ARB_texture_non_power_of_two));
par1PlayerUsageSnooper.addData("gl_caps[gl_max_vertex_uniforms]", Integer.valueOf(GL11.glGetInteger(GL20.GL_MAX_VERTEX_UNIFORM_COMPONENTS)));
par1PlayerUsageSnooper.addData("gl_caps[gl_max_fragment_uniforms]", Integer.valueOf(GL11.glGetInteger(GL20.GL_MAX_FRAGMENT_UNIFORM_COMPONENTS)));
par1PlayerUsageSnooper.addData("gl_max_texture_size", Integer.valueOf(getGLMaximumTextureSize()));
}
项目:Wicken
文件:RenderSystem.java
private static void checkExtensions() {
ContextCapabilities c = GLContext.getCapabilities();
if (logger.isInfoEnabled()) {
final String[] versionString = new String[] {"4.4","4.3","4.2","4.1","4.0","3.3","3.2","3.1","3.0","2.1","2.0","1.5","1.4","1.3","1.2","1.1"};
final boolean[] versionBool = new boolean[] {c.OpenGL44,c.OpenGL43,c.OpenGL42,c.OpenGL41,c.OpenGL40,c.OpenGL33,c.OpenGL32,c.OpenGL31,c.OpenGL30,c.OpenGL21,c.OpenGL20,c.OpenGL15,c.OpenGL14,c.OpenGL13,c.OpenGL12,c.OpenGL11};
if (versionString.length == versionBool.length) {
for (int i = 0; i < versionString.length; i++) {
if (versionBool[i]) {
logger.info("Supported OpenGL version is " + versionString[i] + ".");
break;
}
}
} else {
logger.error("versionString.length != versionBool.length");
}
}
}
项目:LWJGL-OpenGL-Tutorials
文件:TextureGenerator.java
private static void throwIfLANotSupported() {
if(!GLContext.getCapabilities().OpenGL30) {
return;
}
if(!GLContext.getCapabilities().OpenGL32) {
if(!GLContext.getCapabilities().GL_ARB_compatibility) {
throw new ImageFormatUnsupportedException("Core OpenGL contexts cannot use Luminance/alpha.");
}
}
else {
int profileMask = glGetInteger(GL32.GL_CONTEXT_PROFILE_MASK);
if((profileMask & GL32.GL_CONTEXT_CORE_PROFILE_BIT) != 0) {
throw new ImageFormatUnsupportedException("Core OpenGL contexts cannot use Luminance/alpha.");
}
}
}
项目:GPVM
文件:GraphicsFactory.java
/**
* Initialise offscreen rendering by checking what buffers are supported
* by the card
*
* @throws SlickException Indicates no buffers are supported
*/
private static void init() throws SlickException {
init = true;
if (fbo) {
fbo = GLContext.getCapabilities().GL_EXT_framebuffer_object;
}
pbuffer = (Pbuffer.getCapabilities() & Pbuffer.PBUFFER_SUPPORTED) != 0;
pbufferRT = (Pbuffer.getCapabilities() & Pbuffer.RENDER_TEXTURE_SUPPORTED) != 0;
if (!fbo && !pbuffer && !pbufferRT) {
throw new SlickException("Your OpenGL card does not support offscreen buffers and hence can't handle the dynamic images required for this application.");
}
Log.info("Offscreen Buffers FBO="+fbo+" PBUFFER="+pbuffer+" PBUFFERRT="+pbufferRT);
}
项目:GPVM
文件:GraphicsFactory.java
/**
* Initialise offscreen rendering by checking what buffers are supported
* by the card
*
* @throws SlickException Indicates no buffers are supported
*/
private static void init() throws SlickException {
init = true;
if (fbo) {
fbo = GLContext.getCapabilities().GL_EXT_framebuffer_object;
}
pbuffer = (Pbuffer.getCapabilities() & Pbuffer.PBUFFER_SUPPORTED) != 0;
pbufferRT = (Pbuffer.getCapabilities() & Pbuffer.RENDER_TEXTURE_SUPPORTED) != 0;
if (!fbo && !pbuffer && !pbufferRT) {
throw new SlickException("Your OpenGL card does not support offscreen buffers and hence can't handle the dynamic images required for this application.");
}
Log.info("Offscreen Buffers FBO="+fbo+" PBUFFER="+pbuffer+" PBUFFERRT="+pbufferRT);
}
项目:GPVM
文件:VBOTest.java
/**
* Initialize
*/
private static void init() throws Exception {
System.out.println("Timer resolution: " + Sys.getTimerResolution());
// Go into orthographic projection mode.
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0, Display.getDisplayMode().getWidth(), 0, Display.getDisplayMode().getHeight());
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glViewport(0, 0, Display.getDisplayMode().getWidth(), Display.getDisplayMode().getHeight());
if ( !GLContext.getCapabilities().GL_ARB_vertex_buffer_object ) {
System.out.println("ARB VBO not supported!");
System.exit(1);
}
buffer_id = glGenBuffersARB();
glBindBufferARB(GL_ARRAY_BUFFER_ARB, buffer_id);
vertices = ByteBuffer.allocateDirect(2 * 4 * 4).order(ByteOrder.nativeOrder()).asFloatBuffer();
vertices.put(-50).put(-50).put(50).put(-50).put(50).put(50).put(-50).put(50);
glBufferDataARB(GL_ARRAY_BUFFER_ARB, 2 * 4 * 4, GL_STREAM_DRAW_ARB);
glEnableClientState(GL_VERTEX_ARRAY);
glVertexPointer(2, GL_FLOAT, 0, 0);
}
项目:GPVM
文件:VBOTest.java
/**
* Initialize
*/
private static void init() throws Exception {
System.out.println("Timer resolution: " + Sys.getTimerResolution());
// Go into orthographic projection mode.
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0, Display.getDisplayMode().getWidth(), 0, Display.getDisplayMode().getHeight());
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glViewport(0, 0, Display.getDisplayMode().getWidth(), Display.getDisplayMode().getHeight());
if ( !GLContext.getCapabilities().GL_ARB_vertex_buffer_object ) {
System.out.println("ARB VBO not supported!");
System.exit(1);
}
buffer_id = glGenBuffersARB();
glBindBufferARB(GL_ARRAY_BUFFER_ARB, buffer_id);
vertices = ByteBuffer.allocateDirect(2 * 4 * 4).order(ByteOrder.nativeOrder()).asFloatBuffer();
vertices.put(-50).put(-50).put(50).put(-50).put(50).put(50).put(-50).put(50);
glBufferDataARB(GL_ARRAY_BUFFER_ARB, 2 * 4 * 4, GL_STREAM_DRAW_ARB);
glEnableClientState(GL_VERTEX_ARRAY);
glVertexPointer(2, GL_FLOAT, 0, 0);
}
项目:SpaceStationAlpha
文件:GraphicsFactory.java
/**
* Initialise offscreen rendering by checking what buffers are supported
* by the card
*
* @throws SlickException Indicates no buffers are supported
*/
private static void init() throws SlickException {
init = true;
if (fbo) {
fbo = GLContext.getCapabilities().GL_EXT_framebuffer_object;
}
pbuffer = (Pbuffer.getCapabilities() & Pbuffer.PBUFFER_SUPPORTED) != 0;
pbufferRT = (Pbuffer.getCapabilities() & Pbuffer.RENDER_TEXTURE_SUPPORTED) != 0;
if (!fbo && !pbuffer && !pbufferRT) {
throw new SlickException("Your OpenGL card does not support offscreen buffers and hence can't handle the dynamic images required for this application.");
}
Log.info("Offscreen Buffers FBO="+fbo+" PBUFFER="+pbuffer+" PBUFFERRT="+pbufferRT);
}
项目:trashjam2017
文件:FBOGraphics.java
/**
* Create a new graphics context around an FBO
*
* @param image The image we're rendering to
* @throws SlickException Indicates a failure to use pbuffers
*/
public FBOGraphics(Image image) throws SlickException {
super(image.getTexture().getTextureWidth(), image.getTexture().getTextureHeight());
this.image = image;
Log.debug("Creating FBO "+image.getWidth()+"x"+image.getHeight());
boolean FBOEnabled = GLContext.getCapabilities().GL_EXT_framebuffer_object;
if (!FBOEnabled) {
throw new SlickException("Your OpenGL card does not support FBO and hence can't handle the dynamic images required for this application.");
}
init();
}
项目:OpenGL-Bullet-engine
文件:TextureLoader.java
private static void writeToNewObj(ITexture texture, TextureData image){
Object code=texture.notifyLoading();
Game.glCtx(()->{
if(code!=texture.loadingKey()) return;//another loading process was called, this will have no effect hence it is pointless
int id=glGenTextures();
///////////////////////////////////////////
glBindTexture(GL_TEXTURE_2D, id);
LogUtil.println(image.data.toString());
glTexImage2D(GL_TEXTURE_2D, 0, image.internalFormat, image.width, image.height, 0, image.format, GL_UNSIGNED_BYTE, image.data);
if(mergeParams(texture.params()).get(GL_TEXTURE_MIN_FILTER)!=GL_NEAREST){
glGenerateMipmap(GL_TEXTURE_2D);
if(GLContext.getCapabilities().GL_EXT_texture_filter_anisotropic){
float ammount=Math.min(4, glGetFloat(GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT));
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_MAX_ANISOTROPY_EXT, ammount);
glTexParameterf(GL_TEXTURE_2D, GL_TEXTURE_LOD_BIAS, 0);
}
}
CUSTOM_PARAMS.forEach((k, v)->glTexParameteri(GL_TEXTURE_2D, k, v));
glBindTexture(GL_TEXTURE_2D, 0);
///////////////////////////////////////////
texture.load(id, image.width, image.height);
LogUtil.println("Loaded texture:", texture.getPath());
});
}
项目:Progetto-C
文件:FBOGraphics.java
/**
* Create a new graphics context around an FBO
*
* @param image The image we're rendering to
* @throws SlickException Indicates a failure to use pbuffers
*/
public FBOGraphics(Image image) throws SlickException {
super(image.getTexture().getTextureWidth(), image.getTexture().getTextureHeight());
this.image = image;
Log.debug("Creating FBO "+image.getWidth()+"x"+image.getHeight());
boolean FBOEnabled = GLContext.getCapabilities().GL_EXT_framebuffer_object;
if (!FBOEnabled) {
throw new SlickException("Your OpenGL card does not support FBO and hence can't handle the dynamic images required for this application.");
}
init();
}
项目:BaseClient
文件:FBOGraphics.java
/**
* Create a new graphics context around an FBO
*
* @param image The image we're rendering to
* @throws SlickException Indicates a failure to use pbuffers
*/
public FBOGraphics(Image image) throws SlickException {
super(image.getTexture().getTextureWidth(), image.getTexture().getTextureHeight());
this.image = image;
Log.debug("Creating FBO "+image.getWidth()+"x"+image.getHeight());
boolean FBOEnabled = GLContext.getCapabilities().GL_EXT_framebuffer_object;
if (!FBOEnabled) {
throw new SlickException("Your OpenGL card does not support FBO and hence can't handle the dynamic images required for this application.");
}
init();
}
项目:BaseClient
文件:Config.java
private static void checkOpenGlCaps()
{
log("");
log(getVersion());
log("Build: " + getBuild());
log("OS: " + System.getProperty("os.name") + " (" + System.getProperty("os.arch") + ") version " + System.getProperty("os.version"));
log("Java: " + System.getProperty("java.version") + ", " + System.getProperty("java.vendor"));
log("VM: " + System.getProperty("java.vm.name") + " (" + System.getProperty("java.vm.info") + "), " + System.getProperty("java.vm.vendor"));
log("LWJGL: " + Sys.getVersion());
openGlVersion = GL11.glGetString(GL11.GL_VERSION);
openGlRenderer = GL11.glGetString(GL11.GL_RENDERER);
openGlVendor = GL11.glGetString(GL11.GL_VENDOR);
log("OpenGL: " + openGlRenderer + ", version " + openGlVersion + ", " + openGlVendor);
log("OpenGL Version: " + getOpenGlVersionString());
if (!GLContext.getCapabilities().OpenGL12)
{
log("OpenGL Mipmap levels: Not available (GL12.GL_TEXTURE_MAX_LEVEL)");
}
fancyFogAvailable = GLContext.getCapabilities().GL_NV_fog_distance;
if (!fancyFogAvailable)
{
log("OpenGL Fancy fog: Not available (GL_NV_fog_distance)");
}
occlusionAvailable = GLContext.getCapabilities().GL_ARB_occlusion_query;
if (!occlusionAvailable)
{
log("OpenGL Occlussion culling: Not available (GL_ARB_occlusion_query)");
}
int i = Minecraft.getGLMaximumTextureSize();
dbg("Maximum texture size: " + i + "x" + i);
}
项目:BaseClient
文件:TextureUtils.java
public static void applyAnisotropicLevel()
{
if (GLContext.getCapabilities().GL_EXT_texture_filter_anisotropic)
{
float f = GL11.glGetFloat(34047);
float f1 = (float)Config.getAnisotropicFilterLevel();
f1 = Math.min(f1, f);
GL11.glTexParameterf(GL11.GL_TEXTURE_2D, 34046, f1);
}
}
项目:BaseClient
文件:Config.java
private static void checkOpenGlCaps()
{
log("");
log(getVersion());
log("" + new Date());
log("OS: " + System.getProperty("os.name") + " (" + System.getProperty("os.arch") + ") version " + System.getProperty("os.version"));
log("Java: " + System.getProperty("java.version") + ", " + System.getProperty("java.vendor"));
log("VM: " + System.getProperty("java.vm.name") + " (" + System.getProperty("java.vm.info") + "), " + System.getProperty("java.vm.vendor"));
log("LWJGL: " + Sys.getVersion());
openGlVersion = GL11.glGetString(GL11.GL_VERSION);
openGlRenderer = GL11.glGetString(GL11.GL_RENDERER);
openGlVendor = GL11.glGetString(GL11.GL_VENDOR);
log("OpenGL: " + openGlRenderer + ", version " + openGlVersion + ", " + openGlVendor);
log("OpenGL Version: " + getOpenGlVersionString());
if (!GLContext.getCapabilities().OpenGL12)
{
log("OpenGL Mipmap levels: Not available (GL12.GL_TEXTURE_MAX_LEVEL)");
}
fancyFogAvailable = GLContext.getCapabilities().GL_NV_fog_distance;
if (!fancyFogAvailable)
{
log("OpenGL Fancy fog: Not available (GL_NV_fog_distance)");
}
occlusionAvailable = GLContext.getCapabilities().GL_ARB_occlusion_query;
if (!occlusionAvailable)
{
log("OpenGL Occlussion culling: Not available (GL_ARB_occlusion_query)");
}
int i = Minecraft.getGLMaximumTextureSize();
dbg("Maximum texture size: " + i + "x" + i);
}