nullnoname / jgl-core Goto Github PK
View Code? Open in Web Editor NEWUnofficial fork of jGL, a 3D graphics library
License: GNU Lesser General Public License v2.1
Unofficial fork of jGL, a 3D graphics library
License: GNU Lesser General Public License v2.1
jGL Unofficial (jgl-core) Copyright (C) 2013 NullNoname Copyright (C) 1996-2006 Robin Bing-Yu Chen Original README file is available as "README.original" in the root directory. GET THIS LIBRARY FROM JITPACK ============================= https://jitpack.io/#NullNoname/jgl-core INTRODUCTION ============ jGL Unofficial (jgl-core) is an unofficial fork of jGL, a 3D graphics library that doesn't require video cards or native libraries. jGL is a 3D Graphics Library for Java* programming language with an API which is similar to that of OpenGL**. jGL has not supported all the OpenGL functions, but the usually used ones. This fork removes all AWT dependencies and most of GUI-related GLUT functions. This change makes it possible to use jGL under the places where AWT is missing such as text-consoles or Android***. This fork is compilable with 6u45 with Java 1.4 target. I think it's still compatible with real Java 1.4 SDKs, because this fork doesn't use any new features from Java 1.5 or 1.6. jGL Unofficial (jgl-core) is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation. Please refer to the LICENSE file or the following site for licensing details. https://www.gnu.org/licenses/lgpl.html * Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners. ** OpenGL(R) is a registered trademark owned by Silicon Graphics, Inc. *** Android(TM) is a registered trademark of Google, Inc. MAIN CHANGES ============ *Package name changed from "jgl" to "com.github.nullnoname.jgl.core". This is done because this fork is not API compatible with the original. *There are no GLCanvas, GLApplet, or jgl.glut.glut_menu in this fork. They are removed because of heavy AWT dependencies. *GUI related functions are removed, mainly from GLUT. *To initialize the screen you can use glXMakeCurrent: myGL.glXMakeCurrent(null, 0, 0, width, height); *GL.getImageBuffer() is added in order to access the screen buffer. You can create MemoryImageSource by using it: new MemoryImageSource(width, height, myGL.getImageBuffer(), 0, width); *The original jGL printed all error messages to System.out. This fork adds a logger class (JGLLogger) and sends errors to it instead. By default all error messages are sent to System.err, but you can change it by writing your own JGLLogger implementation and pass it to GL constructor: new GL(new YourJGLLogger()); AUTHORS ======= jGL Unofficial (jgl-core): NullNoname Original jGL Codes: Robin Bing-Yu Chen ORIGINAL jGL WEBSITE ==================== http://www.cmlab.csie.ntu.edu.tw/~robin/JavaGL/ HOW TO COMPILE THE SOURCE CODES =============================== Unlike original jGL it doesn't use Makefiles. This fork uses Maven instead. Setup JDK and Maven, then execute "mvn package". Alternatively, just import whole source into your IDE; it doesn't contain any third-party dependencies. ------------------------------------------------------------------------ Sep. 13, 2013 by NullNoname Nov. 26, 2006 by Robin Bing-Yu Chen at NTU......
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.