From 39a94cbfc2254956cca59bbc5c13102f11ad3a2c Mon Sep 17 00:00:00 2001 From: Kenneth Russel Date: Mon, 26 Apr 2004 02:54:39 +0000 Subject: Applied patches from Yuri Vl. Gushchin on JOGL forums: - Added KTX_buffer_region to glext.h - Used Dialog instead of Frame for dummy window on Windows git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/svn-server-sync/jogl/trunk@124 232f8b59-042b-4e1e-8c03-345bb8c30851 --- make/gl-common.cfg | 2 ++ make/stub_includes/opengl/GL/glext.h | 28 +++++++++++++++++++++- .../jogl/impl/windows/WindowsGLContextFactory.java | 3 ++- 3 files changed, 31 insertions(+), 2 deletions(-) diff --git a/make/gl-common.cfg b/make/gl-common.cfg index de2477199..feb9025c4 100644 --- a/make/gl-common.cfg +++ b/make/gl-common.cfg @@ -45,6 +45,8 @@ Ignore (GL|GLU|GLX|WGL|AGL|CGL)_SUNX_.+ Ignore (GL|GLU|GLX|WGL|AGL|CGL)_3DFX_.+ Ignore (GL|GLU|GLX|WGL|AGL|CGL)_OML_.+ Ignore (GL|GLU|GLX|WGL|AGL|CGL)_I3D_.+ +Ignore (GL|GLU|GLX|WGL|AGL|CGL)_S3_.+ +Ignore GL_KTX_buffer_region # Ignore GL functions that deal with explicit pointer values in such a # way that we cannot implement the functionality in Java diff --git a/make/stub_includes/opengl/GL/glext.h b/make/stub_includes/opengl/GL/glext.h index b52d89df0..e1ad5b3b6 100644 --- a/make/stub_includes/opengl/GL/glext.h +++ b/make/stub_includes/opengl/GL/glext.h @@ -5956,7 +5956,7 @@ typedef void (APIENTRYP PFNGLBLENDEQUATIONSEPARATEEXTPROC) (GLenum modeRGB, GLen /* * ------------------------------------------------ * Everything here and below was added manually - * by ckline and kbr to the version of glext.h obtained from: + * by ckline, kbr and yvg to the version of glext.h obtained from: * http://oss.sgi.com/projects/ogl-sample/registry/index.html * ------------------------------------------------ */ @@ -5991,6 +5991,32 @@ typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTARRAYNVPROC) (GLenum mode, const GL typedef void (APIENTRYP PFNGLMULTIDRAWRANGEELEMENTARRAYNVPROC) (GLenum mode, GLuint start, GLuint end, const GLint *first, const GLsizei *count, GLsizei primcount); #endif +/* + * note(yvg): manually created this definition from the description at http://www.west.net/~brittain/3dsmax2.htm +*/ +#ifndef GL_KTX_buffer_region +#define GL_KTX_FRONT_REGION 0 +#define GL_KTX_BACK_REGION 1 +#define GL_KTX_Z_REGION 2 +#define GL_KTX_STENCIL_REGION 3 +#endif + +#ifndef GL_KTX_buffer_region +#define GL_KTX_buffer_region 1 +#ifdef GL_GLEXT_PROTOTYPES +GLAPI GLuint APIENTRY glNewBufferRegion(GLenum); +GLAPI void APIENTRY glDeleteBufferRegion(GLuint); +GLAPI void APIENTRY glReadBufferRegion(GLuint, GLint, GLint, GLsizei, GLsizei); +GLAPI void APIENTRY glDrawBufferRegion(GLuint, GLint, GLint, GLsizei, GLsizei, GLint, GLint); +GLAPI GLuint APIENTRY glBufferRegionEnabled(GLvoid); +#endif +typedef GLuint (APIENTRY * PFNGLNEWBUFFERREGIONPROC) (GLenum type); +typedef void (APIENTRY * PFNGLDELETEBUFFERREGIONPROC) (GLuint region); +typedef void (APIENTRY * PFNGLREADBUFFERREGIONPROC) (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height); +typedef void (APIENTRY * PFNGLDRAWBUFFERREGIONPROC) (GLuint region, GLint x, GLint y, GLsizei width, GLsizei height, GLint xDest, GLint yDest); +typedef GLuint (APIENTRY * PFNGLBUFFERREGIONENABLEDPROC) (GLvoid); +#endif + #ifdef __cplusplus } #endif diff --git a/src/net/java/games/jogl/impl/windows/WindowsGLContextFactory.java b/src/net/java/games/jogl/impl/windows/WindowsGLContextFactory.java index 03fe03929..d0d270e42 100644 --- a/src/net/java/games/jogl/impl/windows/WindowsGLContextFactory.java +++ b/src/net/java/games/jogl/impl/windows/WindowsGLContextFactory.java @@ -40,6 +40,7 @@ package net.java.games.jogl.impl.windows; import java.awt.Component; +import java.awt.Dialog; import java.awt.EventQueue; import java.awt.Frame; import java.awt.GraphicsConfiguration; @@ -98,7 +99,7 @@ public class WindowsGLContextFactory extends GLContextFactory { if (!pendingContextSet.contains(device)) { pendingContextSet.add(device); GraphicsConfiguration config = device.getDefaultConfiguration(); - final Frame frame = new Frame(config); + final Dialog frame = new Dialog(new Frame(config), "", false, config); frame.setUndecorated(true); GLCanvas canvas = GLDrawableFactory.getFactory().createGLCanvas(new GLCapabilities(), null, -- cgit v1.2.3