public WrUpdateThread createUpdateThread(Drawable displayDrawable) { if (this.updateThread != null) { throw new IllegalStateException("UpdateThread is already existing"); } else { try { Pbuffer e = new Pbuffer(1, 1, new PixelFormat(), displayDrawable); this.updateThread = new WrUpdateThread(e); this.updateThread.setPriority(1); this.updateThread.start(); this.updateThread.pause(); return this.updateThread; } catch (Exception var3) { throw new RuntimeException(var3); } } }
/** Custom clCreateContext implementation (reuses APIUtil.getBufferPointer) */ public CLContext create(final CLPlatform platform, final List<CLDevice> devices, final CLContextCallback pfn_notify, final Drawable share_drawable, IntBuffer errcode_ret) throws LWJGLException { final int propertyCount = 2 + (share_drawable == null ? 0 : 4) + 1; final PointerBuffer properties = APIUtil.getBufferPointer(propertyCount + devices.size()); properties.put(CL_CONTEXT_PLATFORM).put(platform); if ( share_drawable != null ) share_drawable.setCLSharingProperties(properties); properties.put(0); properties.position(propertyCount); // Make sure we're at the right offset, setCLSharingProperties might not use all 4 positions. for ( CLDevice device : devices ) properties.put(device); final long function_pointer = CLCapabilities.clCreateContext; BufferChecks.checkFunctionAddress(function_pointer); if ( errcode_ret != null ) BufferChecks.checkBuffer(errcode_ret, 1); else if ( LWJGLUtil.DEBUG ) errcode_ret = APIUtil.getBufferInt(); final long user_data = pfn_notify == null || pfn_notify.isCustom() ? 0 : CallbackUtil.createGlobalRef(pfn_notify); CLContext __result = null; try { __result = new CLContext(nclCreateContext(MemoryUtil.getAddress0(properties.getBuffer()), devices.size(), MemoryUtil.getAddress(properties, propertyCount), pfn_notify == null ? 0 : pfn_notify.getPointer(), user_data, MemoryUtil.getAddressSafe(errcode_ret), function_pointer), platform); if ( LWJGLUtil.DEBUG ) Util.checkCLError(errcode_ret.get(0)); return __result; } finally { if ( __result != null ) __result.setContextCallback(user_data); } }
public CLContext createFromType(final CLPlatform platform, final long device_type, final CLContextCallback pfn_notify, final Drawable share_drawable, final IntBuffer errcode_ret) throws LWJGLException { final int propertyCount = 2 + (share_drawable == null ? 0 : 4) + 1; final PointerBuffer properties = APIUtil.getBufferPointer(propertyCount); properties.put(CL_CONTEXT_PLATFORM).put(platform); if ( share_drawable != null ) share_drawable.setCLSharingProperties(properties); properties.put(0); properties.flip(); return clCreateContextFromType(properties, device_type, pfn_notify, errcode_ret); }
/*** * Sets up the loading screen */ public static void loadingScreen() { backgroundLoader = new BackgroundLoader() { protected Drawable getDrawable() throws LWJGLException { return new SharedDrawable(Display.getDrawable()); } }; try { backgroundLoader.start(); } catch (LWJGLException e) { } // set up the loading screen texture LoadingScreen spashScreen = new LoadingScreen("loading2"); HUD_Manager.make2D(); while (backgroundLoader.isRunning()) { spashScreen.draw(); Display.sync(65); Display.update(); } HUD_Manager.make3D(); }
/** * Get the context shared by all containers * * @return The context shared by all the containers or null if shared context isn't enabled */ public static Drawable getSharedContext() { return SHARED_DRAWABLE; }
/** * Creates a new CLContext. * * @param platform the platform to use * @param devices the devices to use * @param share_drawable the OpenGL drawable to share objects with * @param errcode_ret the error code result * * @return the new CLContext * * @throws LWJGLException if an exception occurs while creating the context */ public static CLContext create(final CLPlatform platform, final List<CLDevice> devices, final CLContextCallback pfn_notify, final Drawable share_drawable, final IntBuffer errcode_ret) throws LWJGLException { return util.create(platform, devices, pfn_notify, share_drawable, errcode_ret); }
/** * Creates a new CLContext. * * @param platform the platform to use * @param device_type the device type to use * @param share_drawable the OpenGL drawable to share objects with * @param errcode_ret the error code result * * @return the new CLContext * * @throws LWJGLException if an exception occurs while creating the context */ public static CLContext createFromType(final CLPlatform platform, final long device_type, final CLContextCallback pfn_notify, final Drawable share_drawable, final IntBuffer errcode_ret) throws LWJGLException { return util.createFromType(platform, device_type, pfn_notify, share_drawable, errcode_ret); }