It would be good to have 'AlienFFI working on linux' published so that we can 
use it.

stef

On Feb 11, 2010, at 2:20 AM, Javier Pimás wrote:

> Nice!! I'll try and let you know the results (I'm on Ubuntu).
> 
> Regards,
>              Javier.
> 
> 2010/2/10 Eliot Miranda <[email protected]>
> 
> 
> 2010/2/10 Javier Pimás <[email protected]>
> 
> Fernando,
>             thanks for the tips. I read about lumiere before, but I'm not 
> looking for a complete 3d framework, just the opengl wrappers to do some 
> experiments. A complete framework would be too much for what I want to try 
> (hw acelerated 2d animations). Anyway, your pdf gave me a better idea of the 
> status of all the available projects.
> 
>  As of Croquet, yes, someone decoupled the OpenGL part (which is the same I 
> tested yesterday and depends on Ballon3D). I finally was able to load it in 
> pharo! If anyone is interested here are the steps:
> 
> Take a pharo image (mine had FFI and VMMaker already loaded, I don't know if 
> they were needed at all)
> 
> In monticello add squeaksource.com/Balloon3D. Open it and load just this 
> packages in order: Balloon3D-constants, Balloon3D-kernel, Balloon3D-math.
> 
> Now add squeaksource.com/OpenGL and load it.
> 
> That's all to load it, to try it, doit this code, and when you get errors 
> change occurrences of Smalltalk to SmalltalkImage current.
> 
> 
> ogl := OpenGL newIn: (0...@0 extent: 3...@300).
> green := 1.
> canvas := OGLCanvas new initialize: ogl.
> fade:= 0.
> 
>     1000 timesRepeat: [
>        ogl glClearColor:0 with: fade with: 0 with: 1.
>         ogl glClear: 16r4000.
>         ogl swapBuffers.
>        fade := fade + 0.001.
>     ].
> 
> fade := 0.
> 
> 
> I think the best way would be to use AlienOpenGL, which is the future, but 
> for that I'll have to wait alien support in linux.
> 
> The alien code should "just work" on linux, but subtleties in alloca mean it 
> crashes on e.g. Ubuntu.  But Ryan Macnak juts got the AlienFFI working in 
> Newspeak on Ubuntu.
> 
> I think what's happened is that recent Linux gcc versions increase the stack 
> alignment to 16 bytes to support x86 sse2 instructions, where 16 byte 
> alignment is required to avoid alignment violations using 128-bit transfers 
> to/from the xmm registers.    So in platforms/Cross/plugins/ia32abicc.c where 
> it states
> 
> #if __APPLE__ && __MACH__ && __i386__
> # define STACK_ALIGN_BYTES 16
> #endif
> 
> this should probably read 
> 
> #if ((__APPLE__ && __MACH__) || __linux__) && __i386__
> # define STACK_ALIGN_BYTES 16
> #endif 
> 
> Give it a go and you should find the AlienFFI will work on linux.
> 
> 
> Regards,
>           Javier.
> 
> 2010/2/10 Fernando olivero <[email protected]>
> Hola Javier,  on top of AlienOpenGL , which is just an interface to OpenGL, 
> i've built a 3d framework with better abstractions called Lumiere. 
> (http://www.inf.usi.ch/phd/olivero/LumierePage.html  (A little bit 
> outdated...i've added a couple of more things recently..)
>   
> In this  paper that  we presented at the last ESUG/IWST 09 , with also did 
> brief survey of OpenGL in smalltalk. 
> (www.esug.org/data/ESUG2009/IWST/iwst09_submission_6.pd)
> 
> If there's a plugin for AlienFFI for Linux i'm not sure. But have you tried 
> the FFI binding of OGL of Croquet? That one works in Linux. Look in 
> squeaksource, because i remember someone decoupled the OGL wrapper from 
> Croquet and put it there.
> 
> I dont know if June ( for visual works) works in linux, but you could take a 
> look of it.
> 
> 
> 
> 
> Saludos,
> Fernando
> 
> 
> On Feb 10, 2010, at 3:01 AM, Javier Pimás wrote:
> 
>> Hi, I've been browsing the different ways to use OpenGL in pharo and squeak. 
>> Here is a log of the results:
>> 
>> 1 - Baloon3D - It looks like a layer on which squeaksource.com/OpenGL 
>> stands, so to use opengl you load balloon3d, then opengl and if you have the 
>> Balloon3dPlugin available then you can use OpenGL. This seems to include 
>> code dated from 2007/before. It loads fine in Squeak but in pharo I get many 
>> errors (load balloon3d-all in pharo1.0 rc2).
>> 
>> 2 - GLMorphic - It uses FFI, so no plugin is needed, but it seems to be 
>> programmed only for windows, and I'm working in linux now.
>> 
>> 3 - AlienOpenGL - It uses the new Alien FFI, which is only available in Mac 
>> platform.
>> 
>> So, the question is: is there any way to play with OpenGL in pharo on linux 
>> platform ?
>> 
>> Regards,
>>              Javier.
>> 
>> -- 
>> Javier Pimás
>> Ciudad de Buenos Aires
>> <ATT00001..txt>
> 
> 
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> 
> 
> 
> -- 
> Javier Pimás
> Ciudad de Buenos Aires
> 
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> 
> 
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> 
> 
> 
> -- 
> Javier Pimás
> Ciudad de Buenos Aires
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to