[Pharo-project] OpenGL in Pharo?
Dear all, I wanted to ask whether there are some news I missed with respect to having a decent OpenGL framework in Pharo. I checked the following page: http://book.pharo-project.org/book/LanguageAndLibraries/3DGraphicsAndOpenGL/ ..but it sounds all a bit outdated and not something I can rely on in the long run. Ideally there should be something like the Jun framework (available for VisualWorks), but when I met the Jun maker at ICSE and I asked him whether there were any plans of porting Jun to Pharo he told me that it was not in their plans. Long talk, short sense: Is anyone working on OpenGL for Pharo? Cheers Michele
On Thu, Nov 17, 2011 at 4:52 PM, Michele Lanza <michele.lanza@usi.ch> wrote:
Dear all, I wanted to ask whether there are some news I missed with respect to having a decent OpenGL framework in Pharo. I checked the following page:
http://book.pharo-project.org/book/LanguageAndLibraries/3DGraphicsAndOpenGL/
..but it sounds all a bit outdated and not something I can rely on in the long run. Ideally there should be something like the Jun framework (available for VisualWorks), but when I met the Jun maker at ICSE and I asked him whether there were any plans of porting Jun to Pharo he told me that it was not in their plans. Long talk, short sense: Is anyone working on OpenGL for Pharo?
Did you talk to Aoki Atsushi ? I meet him 2 days ago in Kyoto and i show him a quick demo of Pharo. He shows me very interesting demonstrations of haptic device & 3D visualisation with Cincom Smalltalk. Regards, -- Serge Stinckwich UMI UMMISCO 209 (IRD/UPMC), Hanoi, Vietnam Matsuno Laboratory, Kyoto University, Japan (until 12/2011) http://www.mechatronics.me.kyoto-u.ac.jp/ Every DSL ends up being Smalltalk http://doesnotunderstand.org/
Igor is working on it i've heard. I am also waiting for it Alexandre On 17 Nov 2011, at 04:52, Michele Lanza <michele.lanza@usi.ch> wrote:
Dear all, I wanted to ask whether there are some news I missed with respect to having a decent OpenGL framework in Pharo. I checked the following page:
http://book.pharo-project.org/book/LanguageAndLibraries/3DGraphicsAndOpenGL/
..but it sounds all a bit outdated and not something I can rely on in the long run. Ideally there should be something like the Jun framework (available for VisualWorks), but when I met the Jun maker at ICSE and I asked him whether there were any plans of porting Jun to Pharo he told me that it was not in their plans. Long talk, short sense: Is anyone working on OpenGL for Pharo?
Cheers
Michele
On 17 November 2011 11:22, Alexandre Bergel <alexandre.bergel@me.com> wrote:
Igor is working on it i've heard. I am also waiting for it
NativeBoost bindings for OpenGL working fine under Windows. On Macs and Linux there still missing platform-specific glue code to initialize context. I started Mac implementation recently, but i didn't finished it. Since there are increasing interest, i will try to finish it in nearest days.
Alexandre
On 17 Nov 2011, at 04:52, Michele Lanza <michele.lanza@usi.ch> wrote:
Dear all, I wanted to ask whether there are some news I missed with respect to having a decent OpenGL framework in Pharo. I checked the following page:
http://book.pharo-project.org/book/LanguageAndLibraries/3DGraphicsAndOpenGL/
..but it sounds all a bit outdated and not something I can rely on in the long run. Ideally there should be something like the Jun framework (available for VisualWorks), but when I met the Jun maker at ICSE and I asked him whether there were any plans of porting Jun to Pharo he told me that it was not in their plans. Long talk, short sense: Is anyone working on OpenGL for Pharo?
Cheers
Michele
-- Best regards, Igor Stasenko.
We are advancing on making OpenGL work with NativeBoost right now. If you have to write an app that uses OpenGL now, I would strongly recommend you to use NBOpenGL. It's already working on Windows, and we are fixing the missing stuff to make it work on the other platforms. As a side effect, we are developing a base FFI library covering the windowing systems. I started today wrapping XLib and it's already working! here is a screenshot. Of course, it lacks asynchronous calls, but that's only for now. We are also writing a chapter in pharo by example to make it easier for everybody. Cheers, Javier. On Thu, Nov 17, 2011 at 11:32 AM, Igor Stasenko <siguctua@gmail.com> wrote:
On 17 November 2011 11:22, Alexandre Bergel <alexandre.bergel@me.com> wrote:
Igor is working on it i've heard. I am also waiting for it
NativeBoost bindings for OpenGL working fine under Windows. On Macs and Linux there still missing platform-specific glue code to initialize context. I started Mac implementation recently, but i didn't finished it. Since there are increasing interest, i will try to finish it in nearest days.
Alexandre
On 17 Nov 2011, at 04:52, Michele Lanza <michele.lanza@usi.ch> wrote:
Dear all, I wanted to ask whether there are some news I missed with respect to having a decent OpenGL framework in Pharo. I checked the following page:
http://book.pharo-project.org/book/LanguageAndLibraries/3DGraphicsAndOpenGL/
..but it sounds all a bit outdated and not something I can rely on in
the long run. Ideally there should be something like the Jun framework (available for VisualWorks), but when I met the Jun maker at ICSE and I asked him whether there were any plans of porting Jun to Pharo he told me that it was not in their plans. Long talk, short sense: Is anyone working on OpenGL for Pharo?
Cheers
Michele
-- Best regards, Igor Stasenko.
-- Lic. Javier Pimás Ciudad de Buenos Aires
On Thu, 17 Nov 2011, Javier Pimás wrote:
We are advancing on making OpenGL work with NativeBoost right now. If you have to write an app that uses OpenGL now, I would strongly recommend you to use NBOpenGL. It's
I see the hype about NBOpenGL, but I don't see how is it better than the FFI based OpenGL implementation. Can someone shed some light on it? Levente
already working on Windows, and we are fixing the missing stuff to make it work on the other platforms.
As a side effect, we are developing a base FFI library covering the windowing systems. I started today wrapping XLib and it's already working! here is a screenshot. Of course, it lacks asynchronous calls, but that's only for now.
We are also writing a chapter in pharo by example to make it easier for everybody.
Cheers, Javier.
On Thu, Nov 17, 2011 at 11:32 AM, Igor Stasenko <siguctua@gmail.com> wrote:
On 17 November 2011 11:22, Alexandre Bergel <alexandre.bergel@me.com> wrote:
Igor is working on it i've heard. I am also waiting for it
NativeBoost bindings for OpenGL working fine under Windows. On Macs and Linux there still missing platform-specific glue code to initialize context. I started Mac implementation recently, but i didn't finished it. Since there are increasing interest, i will try to finish it in nearest days.
Alexandre
On 17 Nov 2011, at 04:52, Michele Lanza <michele.lanza@usi.ch> wrote:
Dear all, I wanted to ask whether there are some news I missed with respect to having a decent OpenGL framework in Pharo. I checked the following page:
http://book.pharo-project.org/book/LanguageAndLibraries/3DGraphicsAndOpenGL/
..but it sounds all a bit outdated and not something I can rely on in
the long run. Ideally there should be something like the Jun framework (available for VisualWorks), but when I met the Jun maker at ICSE and I asked him whether there were any plans of porting Jun to Pharo he told me that it was not in their plans. Long talk, short sense: Is anyone working on OpenGL for Pharo?
Cheers
Michele
-- Best regards, Igor Stasenko.
-- Lic. Javier Pimás Ciudad de Buenos Aires
2011/11/18 Levente Uzonyi <leves@elte.hu>:
On Thu, 17 Nov 2011, Javier Pimás wrote:
We are advancing on making OpenGL work with NativeBoost right now. If you have to write an app that uses OpenGL now, I would strongly recommend you to use NBOpenGL. It's
I see the hype about NBOpenGL, but I don't see how is it better than the FFI based OpenGL implementation. Can someone shed some light on it?
The marshalling code is faster. It also deals nice with per-context feature availability (depending on context you created, some functions may be availabale, some not). And it contains a lot of extensions (over 3000 OpenGL functions), up to version 3.1 , because all functions are automatically generated from specs taken from official source. A future versions of OpenGL is easy to use: you just regenerate sources from specs. I also plan to integrate it with JIT, so when you invoking a method with native code, it will just run this code without extra checks and popping out of 'jit' mode.
Levente
-- Best regards, Igor Stasenko.
On Fri, Nov 18, 2011 at 9:54 AM, Igor Stasenko <siguctua@gmail.com> wrote:
2011/11/18 Levente Uzonyi <leves@elte.hu>:
On Thu, 17 Nov 2011, Javier Pimás wrote:
We are advancing on making OpenGL work with NativeBoost right now. If you have to write an app that uses OpenGL now, I would strongly recommend you to use NBOpenGL. It's
I see the hype about NBOpenGL, but I don't see how is it better than the FFI based OpenGL implementation. Can someone shed some light on it?
The marshalling code is faster. It also deals nice with per-context feature availability (depending on context you created, some functions may be availabale, some not). And it contains a lot of extensions (over 3000 OpenGL functions), up to version 3.1 , because all functions are automatically generated from specs taken from official source. A future versions of OpenGL is easy to use: you just regenerate sources from specs.
Looks great Igor ! I'm a bit curious, how this generation is automatically done ? Could you use the same technique for others C librairies ? Regards, -- Serge Stinckwich UMI UMMISCO 209 (IRD/UPMC), Hanoi, Vietnam Matsuno Laboratory, Kyoto University, Japan (until 12/2011) http://www.mechatronics.me.kyoto-u.ac.jp/ Every DSL ends up being Smalltalk http://doesnotunderstand.org/
On 18 November 2011 03:00, Serge Stinckwich <serge.stinckwich@gmail.com> wrote:
On Fri, Nov 18, 2011 at 9:54 AM, Igor Stasenko <siguctua@gmail.com> wrote:
2011/11/18 Levente Uzonyi <leves@elte.hu>:
On Thu, 17 Nov 2011, Javier Pimás wrote:
We are advancing on making OpenGL work with NativeBoost right now. If you have to write an app that uses OpenGL now, I would strongly recommend you to use NBOpenGL. It's
I see the hype about NBOpenGL, but I don't see how is it better than the FFI based OpenGL implementation. Can someone shed some light on it?
The marshalling code is faster. It also deals nice with per-context feature availability (depending on context you created, some functions may be availabale, some not). And it contains a lot of extensions (over 3000 OpenGL functions), up to version 3.1 , because all functions are automatically generated from specs taken from official source. A future versions of OpenGL is easy to use: you just regenerate sources from specs.
Looks great Igor !
I'm a bit curious, how this generation is automatically done ? Could you use the same technique for others C librairies ?
Well, it parsing the spec files , which having special format and of course has nothing to do with other C libraries. There is a project i seen on last ESUG conference, which using GCC compiler to automatically generate bindings to libraries. But still do not think that you can avoid manual work: if you care about quality and comprehensiveness of the code, you have to get your hands dirty, involving creating different classes to represent various abstractions provided by library, add a convenience layer etc etc.
Regards,
-- Serge Stinckwich UMI UMMISCO 209 (IRD/UPMC), Hanoi, Vietnam Matsuno Laboratory, Kyoto University, Japan (until 12/2011) http://www.mechatronics.me.kyoto-u.ac.jp/ Every DSL ends up being Smalltalk http://doesnotunderstand.org/
-- Best regards, Igor Stasenko.
On Fri, 18 Nov 2011, Igor Stasenko wrote:
2011/11/18 Levente Uzonyi <leves@elte.hu>:
On Thu, 17 Nov 2011, Javier Pimás wrote:
We are advancing on making OpenGL work with NativeBoost right now. If you have to write an app that uses OpenGL now, I would strongly recommend you to use NBOpenGL. It's
I see the hype about NBOpenGL, but I don't see how is it better than the FFI based OpenGL implementation. Can someone shed some light on it?
The marshalling code is faster. It also deals nice with per-context
Why is it faster? Can you give me some pointers?
feature availability (depending on context you created, some functions may be availabale, some not). And it contains a lot of extensions (over 3000 OpenGL functions), up to version 3.1 , because all functions are automatically generated from specs taken from official source. A future versions of OpenGL is easy to use: you just regenerate sources from specs.
I also plan to integrate it with JIT, so when you invoking a method with native code, it will just run this code without extra checks and popping out of 'jit' mode.
It seems to me that besides the marshalling part, everything can/could be done with FFI too. Am I right? Levente
Levente
-- Best regards, Igor Stasenko.
2011/11/18 Levente Uzonyi <leves@elte.hu>:
On Fri, 18 Nov 2011, Igor Stasenko wrote:
2011/11/18 Levente Uzonyi <leves@elte.hu>:
On Thu, 17 Nov 2011, Javier Pimás wrote:
We are advancing on making OpenGL work with NativeBoost right now. If you have to write an app that uses OpenGL now, I would strongly recommend you to use NBOpenGL. It's
I see the hype about NBOpenGL, but I don't see how is it better than the FFI based OpenGL implementation. Can someone shed some light on it?
The marshalling code is faster. It also deals nice with per-context
Why is it faster? Can you give me some pointers?
it is faster because marshalling code generated for each concrete call. if your function expects int agrument, then it will generate code for converting smalltalk object to int. FFI plugin, however first have to read the function signature(s) and only then pick appropriate conversion.
feature availability (depending on context you created, some functions may be availabale, some not). And it contains a lot of extensions (over 3000 OpenGL functions), up to version 3.1 , because all functions are automatically generated from specs taken from official source. A future versions of OpenGL is easy to use: you just regenerate sources from specs.
I also plan to integrate it with JIT, so when you invoking a method with native code, it will just run this code without extra checks and popping out of 'jit' mode.
It seems to me that besides the marshalling part, everything can/could be done with FFI too. Am I right?
maybe. with even more expense. Imagine that you have two instances of OpenGLApi, where one should fail on some functions and don't try to call them (because it could lead to crash), while other not.
Levente
-- Best regards, Igor Stasenko.
Hi michele Do not expect something like Jun because this is 10 or 15 years. Now I saw today a cairo graphics displayed on the machine of Javier :). This is an example for the Alien chapter of the new pharo book (quite draft). I hope that I will get somebody will work on a minimal code city for moose based on a opengl solution. Now if people have more cycles it will go faster. I hope igor will release soon the opengl binding for mac. Stef On Nov 17, 2011, at 8:52 AM, Michele Lanza wrote:
Dear all, I wanted to ask whether there are some news I missed with respect to having a decent OpenGL framework in Pharo. I checked the following page:
http://book.pharo-project.org/book/LanguageAndLibraries/3DGraphicsAndOpenGL/
..but it sounds all a bit outdated and not something I can rely on in the long run. Ideally there should be something like the Jun framework (available for VisualWorks), but when I met the Jun maker at ICSE and I asked him whether there were any plans of porting Jun to Pharo he told me that it was not in their plans. Long talk, short sense: Is anyone working on OpenGL for Pharo?
Cheers
Michele
I would like to ask on the future of FFI technologies in Pharo. What will be the prefered project? Alien, NativeBoost or both? That means what projects will have support in the "official" VM for all main platforms? Some week ago I played with FFI calls on Linux and the only project that worked well was NativeBoost. The Alien failed to locate the libraries (it was 32bit VM on 64bit system, possible source of complacations). Cheers -- Pavel 17.11.2011 v 18:51, Stéphane Ducasse <stephane.ducasse@inria.fr>:
Hi michele
Do not expect something like Jun because this is 10 or 15 years. Now I saw today a cairo graphics displayed on the machine of Javier :). This is an example for the Alien chapter of the new pharo book (quite draft).
I hope that I will get somebody will work on a minimal code city for moose based on a opengl solution. Now if people have more cycles it will go faster. I hope igor will release soon the opengl binding for mac.
Stef <alien.pdf>
On Nov 17, 2011, at 8:52 AM, Michele Lanza wrote:
Dear all, I wanted to ask whether there are some news I missed with respect to having a decent OpenGL framework in Pharo. I checked the following page:
http://book.pharo-project.org/book/LanguageAndLibraries/3DGraphicsAndOpenGL/
..but it sounds all a bit outdated and not something I can rely on in the long run. Ideally there should be something like the Jun framework (available for VisualWorks), but when I met the Jun maker at ICSE and I asked him whether there were any plans of porting Jun to Pharo he told me that it was not in their plans. Long talk, short sense: Is anyone working on OpenGL for Pharo?
Cheers
Michele
On 18 November 2011 00:55, Pavel Krivanek <pavel.krivanek@gmail.com> wrote:
I would like to ask on the future of FFI technologies in Pharo. What will be the prefered project? Alien, NativeBoost or both? That means what projects will have support in the "official" VM for all main platforms?
I think both. On some platforms you cannot afford to run dynamically generated code, and NativeBoost doesn't supports ARM. So, a C implementation may serve as a way to have FFI, when you constrained.
Some week ago I played with FFI calls on Linux and the only project that worked well was NativeBoost. The Alien failed to locate the libraries (it was 32bit VM on 64bit system, possible source of complacations).
Well, the problem with locating libraries is same in NB, since by default it using same library lookup as FFI (it just calls a VM function for that). So, i actually surprised why it worked with NB, and not with FFI. Of course with NB, you are free to change the way you search for library, in case of need.
Cheers -- Pavel
17.11.2011 v 18:51, Stéphane Ducasse <stephane.ducasse@inria.fr>:
Hi michele
Do not expect something like Jun because this is 10 or 15 years. Now I saw today a cairo graphics displayed on the machine of Javier :). This is an example for the Alien chapter of the new pharo book (quite draft).
I hope that I will get somebody will work on a minimal code city for moose based on a opengl solution. Now if people have more cycles it will go faster. I hope igor will release soon the opengl binding for mac.
Stef <alien.pdf>
On Nov 17, 2011, at 8:52 AM, Michele Lanza wrote:
Dear all, I wanted to ask whether there are some news I missed with respect to having a decent OpenGL framework in Pharo. I checked the following page:
http://book.pharo-project.org/book/LanguageAndLibraries/3DGraphicsAndOpenGL/
..but it sounds all a bit outdated and not something I can rely on in the long run. Ideally there should be something like the Jun framework (available for VisualWorks), but when I met the Jun maker at ICSE and I asked him whether there were any plans of porting Jun to Pharo he told me that it was not in their plans. Long talk, short sense: Is anyone working on OpenGL for Pharo?
Cheers
Michele
-- Best regards, Igor Stasenko.
What I want for January: Igor knows it. I told him weekly if not daily. one single 100% fully working solution on all platforms (Callback+ Threaded + DOCUMENTTION) : let us called it Spock Probably - FFI/Alien for solution where code cannot be generated (but we want one name) - NativeBoost Stef On Nov 17, 2011, at 11:55 PM, Pavel Krivanek wrote:
I would like to ask on the future of FFI technologies in Pharo. What will be the prefered project? Alien, NativeBoost or both? That means what projects will have support in the "official" VM for all main platforms?
Some week ago I played with FFI calls on Linux and the only project that worked well was NativeBoost. The Alien failed to locate the libraries (it was 32bit VM on 64bit system, possible source of complacations).
Cheers -- Pavel
17.11.2011 v 18:51, Stéphane Ducasse <stephane.ducasse@inria.fr>:
Hi michele
Do not expect something like Jun because this is 10 or 15 years. Now I saw today a cairo graphics displayed on the machine of Javier :). This is an example for the Alien chapter of the new pharo book (quite draft).
I hope that I will get somebody will work on a minimal code city for moose based on a opengl solution. Now if people have more cycles it will go faster. I hope igor will release soon the opengl binding for mac.
Stef <alien.pdf>
On Nov 17, 2011, at 8:52 AM, Michele Lanza wrote:
Dear all, I wanted to ask whether there are some news I missed with respect to having a decent OpenGL framework in Pharo. I checked the following page:
http://book.pharo-project.org/book/LanguageAndLibraries/3DGraphicsAndOpenGL/
..but it sounds all a bit outdated and not something I can rely on in the long run. Ideally there should be something like the Jun framework (available for VisualWorks), but when I met the Jun maker at ICSE and I asked him whether there were any plans of porting Jun to Pharo he told me that it was not in their plans. Long talk, short sense: Is anyone working on OpenGL for Pharo?
Cheers
Michele
Fascinating :) ________________________________________ From: pharo-project-bounces@lists.gforge.inria.fr [pharo-project-bounces@lists.gforge.inria.fr] on behalf of Stéphane Ducasse [Stephane.Ducasse@inria.fr] Sent: Friday, November 18, 2011 7:32 AM To: Pharo-project@lists.gforge.inria.fr Subject: Re: [Pharo-project] OpenGL in Pharo? What I want for January: Igor knows it. I told him weekly if not daily. one single 100% fully working solution on all platforms (Callback+ Threaded + DOCUMENTTION) : let us called it Spock Probably - FFI/Alien for solution where code cannot be generated (but we want one name) - NativeBoost Stef On Nov 17, 2011, at 11:55 PM, Pavel Krivanek wrote:
I would like to ask on the future of FFI technologies in Pharo. What will be the prefered project? Alien, NativeBoost or both? That means what projects will have support in the "official" VM for all main platforms?
Some week ago I played with FFI calls on Linux and the only project that worked well was NativeBoost. The Alien failed to locate the libraries (it was 32bit VM on 64bit system, possible source of complacations).
Cheers -- Pavel
17.11.2011 v 18:51, Stéphane Ducasse <stephane.ducasse@inria.fr>:
Hi michele
Do not expect something like Jun because this is 10 or 15 years. Now I saw today a cairo graphics displayed on the machine of Javier :). This is an example for the Alien chapter of the new pharo book (quite draft).
I hope that I will get somebody will work on a minimal code city for moose based on a opengl solution. Now if people have more cycles it will go faster. I hope igor will release soon the opengl binding for mac.
Stef <alien.pdf>
On Nov 17, 2011, at 8:52 AM, Michele Lanza wrote:
Dear all, I wanted to ask whether there are some news I missed with respect to having a decent OpenGL framework in Pharo. I checked the following page:
http://book.pharo-project.org/book/LanguageAndLibraries/3DGraphicsAndOpenGL/
..but it sounds all a bit outdated and not something I can rely on in the long run. Ideally there should be something like the Jun framework (available for VisualWorks), but when I met the Jun maker at ICSE and I asked him whether there were any plans of porting Jun to Pharo he told me that it was not in their plans. Long talk, short sense: Is anyone working on OpenGL for Pharo?
Cheers
Michele
participants (10)
-
Alexandre Bergel -
Igor Stasenko -
Javier Pimás -
Levente Uzonyi -
Michele Lanza -
Pavel Krivanek -
Schwab,Wilhelm K -
Serge Stinckwich -
Stéphane Ducasse -
Stéphane Ducasse