#jogamp @ irc.freenode.net - 20170420 05:06:01 (UTC)


20170420 05:06:01 -jogamp- Previous @ http://jogamp.org/log/irc/jogamp_20170419050601.html
20170420 05:06:01 -jogamp- This channel is logged @ http://jogamp.org/log/irc/jogamp_20170420050601.html
20170420 05:38:14 * jvanek (jvanek@anon) has joined #jogamp
20170420 06:35:45 * monsieur_max (~maxime@anon) has joined #jogamp
20170420 08:05:39 * elect (~elect@anon) has joined #jogamp
20170420 08:06:35 <elect> bravo, monsieur_max
20170420 08:07:09 <monsieur_max> :) hey you're back
20170420 08:11:15 <monsieur_max> Eclesia disappeared ?
20170420 08:12:40 <bruce-> morning
20170420 09:01:43 <elect> :p
20170420 09:04:11 <bruce-> elect: have you ever attempted do make something like a shader builder kotlin?
20170420 09:04:47 <elect> not yet
20170420 09:04:52 <elect> but I did something cool
20170420 09:05:17 <elect> https://github.com/java-opengl-labs/modern-jogl-examples/blob/master/src/main/kotlin/glNext/tut16/gammaCheckers.kt
20170420 09:05:40 <elect> I worked on bringing down boiler plate gl code
20170420 09:06:52 <elect> java: https://github.com/java-opengl-labs/modern-jogl-examples/blob/master/src/main/java/main/tut16/GammaCheckers.java#L86-L106
20170420 09:07:08 <elect> kotlin glNext: https://github.com/java-opengl-labs/modern-jogl-examples/blob/master/src/main/kotlin/glNext/tut16/gammaCheckers.kt#L72-L95
20170420 09:07:20 <elect> glNext is what I came with at the moment ^^
20170420 09:07:48 <elect> java
20170420 09:07:49 <elect> https://github.com/java-opengl-labs/modern-jogl-examples/blob/master/src/main/java/main/tut16/GammaCheckers.java#L120-L163
20170420 09:07:55 <elect> glNext
20170420 09:07:56 <elect> https://github.com/java-opengl-labs/modern-jogl-examples/blob/master/src/main/java/main/tut16/GammaCheckers.java#L120-L163
20170420 09:08:06 <elect> sorry, https://github.com/java-opengl-labs/modern-jogl-examples/blob/master/src/main/kotlin/glNext/tut16/gammaCheckers.kt#L109-L137
20170420 09:08:36 <elect> I don't know if this qualifies for a truly DSL builder
20170420 09:08:47 <elect> but I'm still exploring it
20170420 09:09:38 <elect> however, there is something like what you mentioned: https://forum.nim-lang.org/t/1868/1
20170420 09:19:03 * jvanek (jvanek@anon) Quit (Quit: Leaving)
20170420 09:28:35 * hija (~petros@anon) Quit (Ping timeout: 240 seconds)
20170420 09:33:35 <bruce-> hm
20170420 09:36:24 <elect> tell me all
20170420 09:36:34 <elect> what's bothering you
20170420 09:36:38 <elect> share with the community
20170420 09:39:02 <bruce-> https://bitbucket.org/snippets/edwinlust/pn9oo this is what I am doing now
20170420 09:39:41 <bruce-> I have removed most of directly using opengl
20170420 09:39:57 <bruce-> because I think its api is incredibly unwieldy
20170420 09:42:25 <bruce-> that code is mostly a sketchpad
20170420 09:44:04 <elect> I also thought about using classes to represent gl objects instead intBuffers
20170420 09:44:21 <elect> but I abandoned to avoid too much class instantiations
20170420 09:45:12 <bruce-> I haven't really ran into situations in which that is a problem
20170420 09:45:35 <elect> honestly me neihter
20170420 09:47:00 <elect> another issue was that having those classes would have meant to decide at which level you had to create different classes
20170420 09:47:10 <elect> for example, texture, texture1d, texture1darray
20170420 09:47:22 <elect> or buffer, uniform buffer, array buffer, element buffer
20170420 09:50:13 <bruce-> yeah, I don't support all of opengl. I am building a graphics api that can do most of what need to do, with as little surprise and boilerplate as possible
20170420 09:54:20 <elect> another pro without class is that I am free to use "glNext" or not
20170420 09:54:35 <elect> without having to adjust everytime all the code occurences
20170420 10:13:11 <bruce-> https://www.dropbox.com/s/gjq2nkwofme97sf/Screenshot%202017-04-19%2019.08.57.png?dl=0 output of that code btw
20170420 10:16:24 <bruce-> anyway, what bothered me is that I have to write glsl inside a string
20170420 10:18:17 <bruce-> I wonder if something like nimsl can be made in kotlin
20170420 10:45:25 <elect> sure it can
20170420 10:45:51 <elect> but I'd stick using shaders written in files
20170420 10:46:00 <elect> or do you want to load them dinamically?
20170420 10:46:14 <elect> *create
20170420 10:46:20 <elect> bruce-,
20170420 10:58:39 <bruce-> my Drawer class provides something called ShadeStyles. this is basically implemented using shader templates that set up tranforms and have a default implementation to just write the fill color to the output
20170420 10:59:11 <bruce-> in shade style you can for example override the default fill behaviour
20170420 10:59:53 <bruce-> now you have to guess (or read the documentation) to figure out which variables I expose in the shader templates
20170420 11:00:15 <bruce-> and it is easy to create a shadestyle that doesn't compile
20170420 11:00:56 <elect> show me some basic shader sample you use
20170420 11:01:24 <bruce-> it is in the snippet I linked before
20170420 11:01:36 <elect> no, I mean a finite one
20170420 11:01:47 <elect> with gl_Color and so on
20170420 11:02:26 <bruce-> gl_Color… tut tut :)
20170420 11:02:51 <elect> let's do an example
20170420 11:02:52 <elect> https://github.com/java-opengl-labs/modern-jogl-examples/blob/master/src/main/resources/tut01/shader.vert
20170420 11:04:08 <bruce-> https://bitbucket.org/snippets/edwinlust/pn9oo#file-shader
20170420 11:04:59 <elect> crap bitbucket, doesn't jump at #
20170420 11:05:31 <elect> forget
20170420 11:07:08 <bruce-> so, there are some things that are generated by the Drawer
20170420 11:07:22 <elect> fill and stroke are always there?
20170420 11:07:37 <bruce-> yes, those are attributes of the drawer
20170420 11:10:25 <elect> bruce-, so essentially you want to DSL all the ${} there?
20170420 11:13:51 * hija (~petros@anon) has joined #jogamp
20170420 11:24:40 * hija (~petros@anon) Quit (Ping timeout: 240 seconds)
20170420 11:30:55 <bruce-> only the transform parts
20170420 11:33:11 <bruce-> the outputs, uniforms, varyingIn stuff is generated based on vbo and render target
20170420 11:36:59 <elect> create a Fill object
20170420 11:37:42 <elect> like here
20170420 11:37:42 <elect> https://github.com/java-opengl-labs/modern-jogl-examples/blob/master/src/main/kotlin/glNext/depth.kt#L35
20170420 11:38:20 <elect> and then you require a lambda offering the functions/parameters of that object
20170420 11:38:27 <elect> so that you can write something like
20170420 11:38:47 <elect> { fill = "myFill" }
20170420 11:53:06 * caelum19 (~Caelum@anon) has joined #jogamp
20170420 13:02:17 <monsieur_max> bruce-: nice rendering :)
20170420 14:26:18 <bruce-> thanks!
20170420 14:26:43 <bruce-> anyone any ideas why I am seeing stuttering when rendering HAP encoded videos through jogl's ffmpegmediaplayer?
20170420 14:57:26 <monsieur_max> nice, never heard of HAP ...
20170420 14:58:11 <monsieur_max> I used jogl mediaplayer on webm with not much trouble, except for sound sync
20170420 15:03:25 <monsieur_max> bruce-: there's a private static that handles sync, maybe you can try to make the desync time allowed higher, but that'll change the issue from stutterring to playing to slow
20170420 15:04:16 <monsieur_max> to prevent a too high desync during playback I reduced this desync time to 500ms, the original value was like 2000ms
20170420 15:04:46 <monsieur_max> I filled an issue in bugzilla to allow access to this field without having to do nasty hack
20170420 15:13:41 <bruce-> I usually don't have problems with the playback, just with these videos. it consistently drops a couple of frames (without blocking) 2 seconds after seeking to 0
20170420 15:14:20 <bruce-> there is no sound in these videos, so I don't think the desync hack is applicable?
20170420 15:19:15 <monsieur_max> well, 2sec is the max desync time allowed from the player
20170420 15:19:28 <monsieur_max> so it makes sense the drops starts from here
20170420 15:19:36 <bruce-> hm.
20170420 15:19:42 <bruce-> GLMediaPlayer.MAXIMUM_VIDEO_ASYNC? this is the static?
20170420 15:19:48 <monsieur_max> yup
20170420 15:21:14 <monsieur_max> on some low config, i reached the max async quite quickly, so to ensure sound and subtitles were not too desync, i changed the value to 500ms
20170420 15:23:22 * monsieur_max (~maxime@anon) Quit (Quit: Leaving.)
20170420 15:26:22 * monsieur_max (~maxime@anon) has joined #jogamp
20170420 15:32:54 <bruce-> monsieur_max: how did you change that value?
20170420 15:33:11 <bruce-> I tried a quick hack with reflection with but it seems to stick to the default value of 22
20170420 15:33:48 <monsieur_max> hold on
20170420 15:37:34 <monsieur_max> sorry, for the record the field is :
20170420 15:37:34 <monsieur_max> /** Maximum valid video pts diff. */ private static final int VIDEO_DPTS_MAX = 5000; // 5s max diff
20170420 15:44:32 * hija (~petros@anon) has joined #jogamp
20170420 16:10:32 <bruce-> monsieur_max: thanks, I poked around a bit, but nothing seems to really change the behaviour I have
20170420 16:10:45 <monsieur_max> duh
20170420 16:31:27 * hija (~petros@anon) Quit (Ping timeout: 240 seconds)
20170420 16:39:39 * monsieur_max (~maxime@anon) Quit (Quit: Leaving.)
20170420 16:49:53 * elect (~elect@anon) Quit (Ping timeout: 258 seconds)
20170420 17:50:35 * monsieur_max (~maxime@anon) has joined #jogamp
20170420 18:19:07 * hija (~petros@anon) has joined #jogamp
20170420 18:42:07 * gouessej (5279cfa7@anon) has joined #jogamp
20170420 18:42:12 <gouessej> Hi
20170420 18:42:28 <gouessej> Please can anybody run my game under OS X 10.12? http://tuer.sourceforge.net/en/play/
20170420 18:42:43 <gouessej> Someone claims that it's an "outdated app" and that it doesn't work
20170420 18:43:17 <gouessej> http://www.java-gaming.org/topics/tuer-truly-unusual-experience-of-revolution-fps-using-jogl/16094/msg/364898/view.html#msg364898
20170420 18:52:21 * gouessej (5279cfa7@anon) Quit (Quit: Page closed)
20170420 20:33:37 * caelum191 (~Caelum@anon) has joined #jogamp
20170420 20:35:42 * caelum19 (~Caelum@anon) Quit (Ping timeout: 268 seconds)
20170420 20:42:40 * caelum191 (~Caelum@anon) Quit (Ping timeout: 240 seconds)
20170420 20:42:44 * caelum19 (~Caelum@anon) has joined #jogamp
20170420 20:46:41 * monsieur_max (~maxime@anon) Quit (Quit: Leaving.)
20170420 21:03:58 * caelum191 (~Caelum@anon) has joined #jogamp
20170420 21:05:48 * caelum19 (~Caelum@anon) Quit (Ping timeout: 260 seconds)
20170420 22:46:02 * frobnic (fb@anon) Quit (Ping timeout: 260 seconds)
20170420 22:51:08 * frobnic (fb@anon) has joined #jogamp
20170421 00:38:13 * hija (~petros@anon) Quit (Quit: Leaving.)
20170421 00:39:27 * hija (~petros@anon) has joined #jogamp
20170421 00:42:43 * caelum19 (~Caelum@anon) has joined #jogamp
20170421 00:44:50 * caelum191 (~Caelum@anon) Quit (Ping timeout: 268 seconds)
20170421 01:37:01 * caelum19 (~Caelum@anon) Quit (Quit: Leaving.)
20170421 05:06:01 -jogamp- Continue @ http://jogamp.org/log/irc/jogamp_20170421050601.html