Comments (14)
I'm not one to try these things on the command line. Are you using oracle java? 1.8 is recommended due to the JOGL opengl bindings. The release has all the class files in a jar, and can be run if you just want to give it a spin, otherwise it is perhaps easiest to open it up in an IDE.
Here is a link to the release: https://github.com/EulalieCoevoet/AdaptiveMerging/releases/tag/20.05
from adaptivemerging.
This got farther!
I downloaded the zip from that release then double-clicked on AdaptiveMerging.jar
.
This window briefly appears, then disappears and the app closes. Not sure how to debug this.
I downloaded java from here https://www.oracle.com/java/technologies/javase-jdk14-downloads.html . I'm on a new mac laptop.
from adaptivemerging.
oops... seems the release zip is missing the readme we included at submission time (the link for the JDK download). You shouldn't need to do anything more than click on the jar (would think java 1.8 would be best for JOGL). But that said, I wonder if the OSX migration away from opengl could be a problem. We've only tested on windows, and I suspect our gentle use of GLSL for shadows might be the thing that prevents the 3D view from opening (i.e., we use a compatability profile for Opengl... best mix of old and new). So much for cross platform simplicity of Java. Do you have a linux or windows machine on which to give it a spin?
from adaptivemerging.
from adaptivemerging.
Yeah, the real issue is that we're not using a core OpenGL profile. I should really take the time to weed out all the old school OpenGL stuff from my code so we can drop the need for a compatability profile (there are probably not too many glBegins in the code, but they are there... for drawing points?). I think the JOGL OSX bindings will still work... Otherwise, perhaps we'll update the code to check if running on a MAC to turn off the GLSL shadow code.
from adaptivemerging.
Hi Alec,
Thank you for reporting this issue!
We just made some changes to the code for MacOS. With the latest version you should be able to run the app, and see the objects merge as you go through the examples. Unfortunately, it seems that the picking (interaction with the objects in the scene) may not work on MacOS, we're trying to fix that issue.
from adaptivemerging.
Latest version still closes after briefly showing that window. If it would help I could send debug output; I just don't know where/how to get it.
from adaptivemerging.
I might guess that if you are running the release from the command line, i.e., go to the folder and run "java AdaptiveMerging.jar" then it might dump some error messages onto the console? Alternatively, I have also seen that sometimes on macs the 3D view window opens but is super tiny and you need to make it bigger. You could also check that the command line is actually running the right version of java with a "java --version" command. I have two students with Macs that I'm recruiting to help debug this too... we saw it work on one mac so far, but perhaps it is an older machine with older OS and less OpenGL deprecation than your shiny new machine? I'd really like to fix this!
from adaptivemerging.
from adaptivemerging.
from adaptivemerging.
The first warnings are expected, as JOGL is happier with java 1.8, and this MIGHT fix things, but I'm not sure it is worth installing an old version of java at this point on the off chance that it helps.
from adaptivemerging.
I've committed a small program to probe what profiles are available. I've also pushed a runnable jar to make this easier (12 MB simply because it also contains the jogamp fat jar with opengl bindings). Run as "java -jar CheckGLProfiles.jar", and please let me know what you get! On my machine I get:
Default GLProfile is GLProfile[GL4bc/GL4bc.hw]
Requested GL4bc Got GLProfile[GL4bc/GL4bc.hw]
Requested GL3bc Got GLProfile[GL3bc/GL4bc.hw]
Requested GL2 Got GLProfile[GL2/GL4bc.hw]
Requested GL4 Got GLProfile[GL4/GL4.hw]
Requested GL3 Got GLProfile[GL3/GL4.hw]
Requested GLES3 Got GLException
Requested GL4ES3 Got GLProfile[GL4ES3/GL4.hw]
Requested GL2GL3 Got GLProfile[GL2GL3/GL4bc.hw]
Requested GLES2 Got GLException
Requested GL2ES2 Got GLProfile[GL2ES2/GL4.hw]
Requested GLES1 Got GLException
Requested GL2ES1 Got GLProfile[GL2ES1/GL4bc.hw]
Incidentally, I believe the bc endings mean "backwards compatible", so you can do all the cool core stuff in GL4 while mixing it with some glBegin( GL_LINES ) ... glEnd for quick hacking!
from adaptivemerging.
On my old mac running Mac OS 10.13, I get:
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.jogamp.common.os.NativeLibrary$3 (rsrc:jogamp-fat.jar) to method java.lang.ClassLoader.findLibrary(java.lang.String)
WARNING: Please consider reporting this to the maintainers of com.jogamp.common.os.NativeLibrary$3
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
Default GLProfile is GLProfile[GL2/GL2.hw]
Requested GL4bc Got GLException
Requested GL3bc Got GLException
Requested GL2 Got GLProfile[GL2/GL2.hw]
Requested GL4 Got GLProfile[GL4/GL4.hw]
Requested GL3 Got GLProfile[GL3/GL4.hw]
Requested GLES3 Got GLException
Requested GL4ES3 Got GLProfile[GL4ES3/GL4.hw]
Requested GL2GL3 Got GLProfile[GL2GL3/GL4.hw]
Requested GLES2 Got GLException
Requested GL2ES2 Got GLProfile[GL2ES2/GL4.hw]
Requested GLES1 Got GLException
Requested GL2ES1 Got GLProfile[GL2ES1/GL2.hw]
On my new mac running Mac OS 10.15, I get:
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by com.jogamp.common.os.NativeLibrary$3 (rsrc:jogamp-fat.jar) to method java.lang.ClassLoader.findLibrary(java.lang.String)
WARNING: Please consider reporting this to the maintainers of com.jogamp.common.os.NativeLibrary$3
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release
2020-08-22 10:33:01.300 java[41665:3654586] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'NSWindow drag regions should only be invalidated on the Main Thread!'
*** First throw call stack:
(
0 CoreFoundation 0x00007fff37d88b57 __exceptionPreprocess + 250
1 libobjc.A.dylib 0x00007fff70a365bf objc_exception_throw + 48
2 CoreFoundation 0x00007fff37db134c -[NSException raise] + 9
3 AppKit 0x00007fff34fab5ec -[NSWindow(NSWindow_Theme) _postWindowNeedsToResetDragMarginsUnlessPostingDisabled] + 310
4 AppKit 0x00007fff34f93052 -[NSWindow _initContent:styleMask:backing:defer:contentView:] + 1416
5 AppKit 0x00007fff34f92ac3 -[NSWindow initWithContentRect:styleMask:backing:defer:] + 42
6 libnativewindow_macosx.jnilib 0x000000013be373fe Java_jogamp_nativewindow_macosx_OSXUtil_CreateNSWindow0 + 398
7 ??? 0x0000000112f3c6b0 0x0 + 4612933296
8 ??? 0x0000000112f369d0 0x0 + 4612909520
)
libc++abi.dylib: terminating with uncaught exception of type NSException
zsh: abort java -jar ~/Downloads/CheckGLProfiles.jar
from adaptivemerging.
Ok... Thank you! Presuming that was with Java 1.8 on the new Mac, pretty discouraging. It probably runs somewhat now with Eulalie's updates on the old mac, without shadows. Seeing the core GL4 profile gives me incentive to update things... And I see jogl is still active with test builds this year, but the bindings we are using (last release) are now 5 years old, which is probably not helping. I'll leave this issue open (renamed to running on OSX) but I think we might be stuck here for now.
from adaptivemerging.
Related Issues (20)
- Threshold / count for merging/sleeping is strange? HOT 1
- Merging of bodies must be done more than 2 at a time... HOT 2
- Pinning to the inertial frame might not be such a bad thing after all? HOT 2
- unmerging at contact level instead of body level HOT 2
- singleContactMerge.png needs gentle viscous damping? HOT 1
- Colours for merged collections: different from those that are adjacent HOT 4
- lambdas inside contact HOT 4
- Bodies going airborn on spring platforms HOT 1
- basic merging critera based on relative velocity?
- Merge with pinned body
- Bouncy bodies HOT 1
- Impulse testing with shift left click drag? HOT 1
- Visualize deltaVs in single iteration PGS HOT 1
- Cheat sheet in interface... HOT 1
- Apply body velocities after unmerge (instead of collection velocities)
- Apply results of one iteration PGS to unmerged bodies, all the time? HOT 2
- Compliance and stiffness feedback HOT 1
- Incompatibility between current pruning and contacts in collection update HOT 3
- Clean Spring class HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from adaptivemerging.