On May 10, 6:41 pm, David Nolen <dnolen.li...@gmail.com> wrote:
> You'll need to have a similar folder structure in all of your libraries if
> you want it to be easy for other people.
>
> Stack trace
> =================================================================================================
>
> INIT GL IS: com.sun.opengl.impl.GLImpl
> Chosen GLCapabilities: GLCapabilities [DoubleBuffered: true, Stereo: false,
> HardwareAccelerated: true, DepthBits: 24, StencilBits: 0, Red: 8, Green: 8,
> Blue: 8, Alpha: 8, Red Accum: 0, Green Accum: 0, Blue Accum: 0, Alpha Accum:
> 0, Multisample: false ]
> Exception in thread "Thread-910" javax.media.opengl.GLException:
> java.lang.IllegalArgumentException: wrong number of arguments
> at javax.media.opengl.Threading.invokeOnOpenGLThread(Threading.java:271)
> at
> javax.media.opengl.GLCanvas.maybeDoSingleThreadedWorkaround(GLCanvas.java:410)
> at javax.media.opengl.GLCanvas.display(GLCanvas.java:244)
> at com.sun.opengl.util.Animator.display(Animator.java:144)
> at com.sun.opengl.util.Animator$MainLoop.run(Animator.java:181)
> at java.lang.Thread.run(Thread.java:613)
> Caused by: java.lang.IllegalArgumentException: wrong number of arguments
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at clojure.lang.Reflector.invokeMatchingMethod(Reflector.java:88)
> at clojure.lang.Reflector.invokeInstanceMethod(Reflector.java:28)
> at
> net.philh.cloggle$defn_from_method__4682$fn__4684.doInvoke(cloggle.clj:45)
> at clojure.lang.RestFn.invoke(RestFn.java:458)
> at user$go__4714$fn__4719.invoke(NO_SOURCE_FILE:232)
> at clojure.proxy.java.lang.Object$GLEventListener.init(Unknown Source)
> at com.sun.opengl.impl.GLDrawableHelper.init(GLDrawableHelper.java:72)
> at javax.media.opengl.GLCanvas$InitAction.run(GLCanvas.java:418)
> at com.sun.opengl.impl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:189)
> at
> javax.media.opengl.GLCanvas$DisplayOnEventDispatchThreadAction.run(GLCanvas.java:452)
> at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:199)
> at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
> at
> java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)
> at
> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)
> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)
> at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
> GL_VENDOR: NVIDIA Corporation
> GL_RENDERER: NVIDIA GeForce 9400M OpenGL Engine
> GL_VERSION: 2.0 NVIDIA-1.5.36
> Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:585)
> at clojure.lang.Reflector.invokeMatchingMethod(Reflector.java:88)
> at clojure.lang.Reflector.invokeInstanceMethod(Reflector.java:28)
> at
> net.philh.cloggle$defn_from_method__4682$fn__4684.doInvoke(cloggle.clj:45)
> at clojure.lang.RestFn.invoke(RestFn.java:413)
> at user$go__4714$fn__4734.invoke(NO_SOURCE_FILE:201)
> at clojure.proxy.java.lang.Object$GLEventListener.display(Unknown Source)
> at com.sun.opengl.impl.GLDrawableHelper.display(GLDrawableHelper.java:78)
> at javax.media.opengl.GLCanvas$DisplayAction.run(GLCanvas.java:435)
> at com.sun.opengl.impl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:194)
> at
> javax.media.opengl.GLCanvas.maybeDoSingleThreadedWorkaround(GLCanvas.java:412)
> at javax.media.opengl.GLCanvas.display(GLCanvas.java:244)
> at javax.media.opengl.GLCanvas.paint(GLCanvas.java:277)
> at sun.awt.RepaintArea.paintComponent(RepaintArea.java:276)
> at sun.awt.RepaintArea.paint(RepaintArea.java:241)
> at apple.awt.ComponentModel.handleEvent(ComponentModel.java:268)
> at java.awt.Component.dispatchEventImpl(Component.java:4144)
> at java.awt.Component.dispatchEvent(Component.java:3903)
> at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
> at
> java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:269)
> at
> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)
> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:184)
> at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:176)
> at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
Thank you. This does indeed appear to be caused by that bug. I think
I've worked out a reasonable way to fix it, but in the meantime I've
inserted a workaround into gears.clj. Could you test the new version?
I would also be interested in seeing the output of
(map #(cons (.getName %) (seq (.getParameterTypes %)))
(filter #(#{"glLightfv" "glMaterialfv"} (.getName %))
(seq (.getDeclaredMethods javax.media.opengl.GL))))
>
> On Sat, May 9, 2009 at 10:02 PM, philip.hazel...@gmail.com <
>
> philip.hazel...@gmail.com> wrote:
>
> > On May 10, 12:37 am, David Nolen <dnolen.li...@gmail.com> wrote:
> > > Cool, I couldn't get this to work, I get an exception like the following:
> > > Exception in thread "AWT-EventQueue-0"
> > java.lang.IllegalArgumentException:
> > > wrong number of arguments
>
> > Is this with gears.clj? Could you post a full backtrace and relevant
> > software versions? This looks like the sort of error that might be
> > caused by the second bug listed in the README, but I'd like to confirm
> > that. (Not that that bug doesn't need fixing either way.)
>
> > > The original version works alright for me.
>
> > > Also you should organize the library folder in the standard way so that
> > your
> > > library can be loaded without tweaking:
>
> > > /src/net/philh/cloggle.clj
> > That's a good point, I'll fix it now. Though I'm not sure how I'll
> > organise things for git if I want to write another library - do you
> > know of a better way than to have a separate src/net/philh directory
> > in each library's tree?
>
> > > On Sat, May 9, 2009 at 4:05 PM, philip.hazel...@gmail.com <
>
> > > philip.hazel...@gmail.com> wrote:
>
> > > > It's essentially a thin wrapper on JOGL, but I intend to improve the
> > > > interface in future.
>
> > > >http://github.com/ChickenProp/cloggle/tree/master
>
> > > > Clojure, the JVM and opengl are all fairly new to me, so I'd
> > > > appreciate feedback about my coding style, potential pitfalls, and
> > > > anything else you can think of. cloggle itself is currently less than
> > > > 60 lines, including blanks and comments.
>
> > > > This is a horrible speed metric, but the example "gears" program
> > > > (based on one posted here a while ago) runs at 240fps for me, compared
> > > > to 515fps for glxgears.
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To post to this group, send email to clojure@googlegroups.com
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---