Squeak3D plugin [was Re: [squeak-dev] A new Squeak release]

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Squeak3D plugin [was Re: [squeak-dev] A new Squeak release]

Eliot Miranda-2
 
Hi Bert, Hi Stef,

moving to vm-dev cuz it makes more sense there...

On Sun, Mar 4, 2018 at 11:37 AM, Bert Freudenberg <[hidden email]> wrote:
On 4 March 2018 at 19:16, Eliot Miranda <[hidden email]> wrote:
Hi Stéphane,

On Sun, Mar 4, 2018 at 6:17 AM, Stéphane Rollandin <[hidden email]> wrote:
I can't even get that far. How did you get from the link mentioned before to the file you think might be the correct one?


On 3/4/18 6:03 AM, Stéphane Rollandin wrote:
Le 04/03/2018 à 11:44, H. Hirzel a écrit :
http://squeak.org/downloads/

should lead you to the correct place.

Under the heading 'Virtual machines' there is a link

https://bintray.com/opensmalltalk/vm/cog/_latestVersion#files

Ok, then I assume the current one for a 4.6 image is cog_win32x86_squeak.cog.v3_201608171728

I used the first link...

now from the second I just found squeak.cog.v3_win32x86_201803032041 which is more recent, but still with the same outcome: 3D primitives are missing.>
 
and if you put "B3DXUsesOpenGL=0" in Squeak.ini what happens then?  AFAICT all the 3D support is included in the VM as it ever was.  I'm sorry, but I'm not very familiar with the 3D support on Windows.  I do know that Ronie got the OpenGL example working on Mac OS in 32 and 64 bits late last year.  And I think we tested all platforms and found it worked.  What that implies for the B3DAcceleratorPlugin on win32 I don't know.

>
> Stef
 
_,,,^..^,,,_
best, Eliot


​Is the ​Squeak3D plugin included as well? I think that's the one Stef wants, in addition to B3DAcceleratorPlugin.

For reasons I don't understand the Squeak3D plugin (internal name B3DEnginePlugin & subclasses) is built only on build.linux32ARMv6, and as an external plugin.  Does anyone know how this came to be?

I will try and build the Squeak3D plugin on Mac OS X in the Squeak VMs, and if it seems to work will commit that change.  Can someone please try and build on Win32 & Win64 and the other linux platforms?  It's bizarre that this has been left out.  Also should it be included in the Pharo VM, Esteban?

​- Bert -​

_,,,^..^,,,_
best, Eliot
Reply | Threaded
Open this post in threaded view
|

Re: [squeak-dev] Squeak3D plugin [was Re: A new Squeak release]

Eliot Miranda-2
 
Hi All,

On Sun, Mar 4, 2018 at 4:49 PM, Eliot Miranda <[hidden email]> wrote:
Hi Bert, Hi Stef,

moving to vm-dev cuz it makes more sense there...

On Sun, Mar 4, 2018 at 11:37 AM, Bert Freudenberg <[hidden email]> wrote:
On 4 March 2018 at 19:16, Eliot Miranda <[hidden email]> wrote:
Hi Stéphane,

On Sun, Mar 4, 2018 at 6:17 AM, Stéphane Rollandin <[hidden email]> wrote:
I can't even get that far. How did you get from the link mentioned before to the file you think might be the correct one?


On 3/4/18 6:03 AM, Stéphane Rollandin wrote:
Le 04/03/2018 à 11:44, H. Hirzel a écrit :
http://squeak.org/downloads/

should lead you to the correct place.

Under the heading 'Virtual machines' there is a link

https://bintray.com/opensmalltalk/vm/cog/_latestVersion#files

Ok, then I assume the current one for a 4.6 image is cog_win32x86_squeak.cog.v3_201608171728

I used the first link...

now from the second I just found squeak.cog.v3_win32x86_201803032041 which is more recent, but still with the same outcome: 3D primitives are missing.>
 
and if you put "B3DXUsesOpenGL=0" in Squeak.ini what happens then?  AFAICT all the 3D support is included in the VM as it ever was.  I'm sorry, but I'm not very familiar with the 3D support on Windows.  I do know that Ronie got the OpenGL example working on Mac OS in 32 and 64 bits late last year.  And I think we tested all platforms and found it worked.  What that implies for the B3DAcceleratorPlugin on win32 I don't know.

>
> Stef
 
_,,,^..^,,,_
best, Eliot


​Is the ​Squeak3D plugin included as well? I think that's the one Stef wants, in addition to B3DAcceleratorPlugin.

For reasons I don't understand the Squeak3D plugin (internal name B3DEnginePlugin & subclasses) is built only on build.linux32ARMv6, and as an external plugin.  Does anyone know how this came to be?

I will try and build the Squeak3D plugin on Mac OS X in the Squeak VMs, and if it seems to work will commit that change.  Can someone please try and build on Win32 & Win64 and the other linux platforms?  It's bizarre that this has been left out.  Also should it be included in the Pharo VM, Esteban?

So the 3D support compiles on Mac OS X in the 32-bit regime and I'm committing the changes to include the Squeak3D plugin in all 32-bit Mac OS X Squeak VMs.  But the 64-bit compile fails due to ARC (automatic reference counting) issues.  e.g.

../../platforms/iOS/plugins/B3DAcceleratorPlugin/sqMacOpenGL.m:216:18: error: ARC forbids explicit message send of 'dealloc'
    [pixelFormat dealloc];
     ~~~~~~~~~~~ ^
../../platforms/iOS/plugins/B3DAcceleratorPlugin/sqMacOpenGL.m:224:34: error: implicit conversion of Objective-C pointer type 'NSOpenGLContext *' to C pointer type 'void *' requires a bridged cast
    renderer->theOpenGLContext = theContext;
                                 ^~~~~~~~~~
                                                 CFBridgingRelease(        )
../../platforms/iOS/plugins/B3DAcceleratorPlugin/sqMacOpenGL.m:295:14: error: 'release' is unavailable: not available in automatic reference counting mode
    [context release]; 


Is there anyone with understanding of the ARC regime who has time to update the OpenGL support for 64-bits so that this at least compiles?


_,,,^..^,,,_
best, Eliot