Games with Squeak

Mikael Kindborg mikael.kindborg at gmail.com
Sun Nov 5 11:27:41 UTC 2006


On 10/13/06, Diego Fernandez <diegof79 at gmail.com> wrote:
> I would like to create something similar to the Damien's
> ImageForDevelopers but... ImageForGameDevelopers ;)
>
> Packaged with the tools and tutorials to create simple games in Squeak
> (OpenGL and SDL bindings...).
>

I would like to help with this, I develop games for children with Squeak.

We could make a page called "Game Programming" on the swiki. Was about
to do that right now, but I have no password for the swiki. Anyone
knows how to get one?

Currently, we are using Morphic, which works ok for the kind of
"game-making games" we develop (visual programming tools for children,
similar in spirit to eToys). To have the UI-model of Morphic with
support for components, drag&drop, etc, is a big productivity
advantage for us. Have also been experimenting with Tweak which is
really nice, but as I understand it Tweak, like Morphic, uses standard
Squeak Forms and Display to render graphics.

What concerns me is the blit speed of Form and Display. Have searched
the mailing list and the swiki and obviously there are lots of issues
that have been up for discussion previously, like conversion between
pixel formats, endianness, etc. Have seen mention of FXBlt,
ExternalForm, and ExternalScreen, which seems to be in the Balloon3D
package (which has been replaced by Croquet?). Also found the
NuBlt-project about speedier blits (between Forms in the image, not to
the screen?).

I am confused about the current status of Squeak technologies for high
speed graphics. From what I understand, Croquet is the most recent
work in this area, based on OpenGL.

I have found SDL to be a very good library, have been working with SDL
in Python, using the Pygame library. It has good blitting performance
(will post some performance tests later on, comparing Pygame to
Squeak). Pygame/SDL uses bitmaps in the current format of the display
screen, and I would like to look at how this could be done in Squeak.

As I understand it, there are two ways of using libraries like OpenGL
and SDL in Squeak:

1. As an "add on" that bypasses the Display, and renders "on top of"
Morphic/Tweak. This is how I understand that Croquet works. Drawback
is you cannot use Morphic/Tweak but have to do your own UI system
(like the one in Croquet).

2. As an integrated part of the VM, making Display and Forms use the
native display format. Then you could use Morphic/Tweak with the best
performance.

I have a feeling that it is not as simple as just throwing in SDL as
the graphics engine for the VM, as class Form in the image has its own
platform-neutral format. While it seems to be challenging to be both
platform independent and get maximum graphics performance at the same
time, have there been any work in this direction? I have seen
discussions about converting Forms to native format, but this has an
impact on BitBlt? What is the current status regarding these issues?
What happened to ExternalForm and ExternalScreen? I know many of you
have been working on these things for years, and it would be
interesting to hear your thoughts.

> I think that such image will attract more developers interested in
> game development.
> I think that e-toys are very powerful but not so attractive to
> teenagers who want to learn how to code games, so having a image with
> those tools makes sense to me :)
>
> So I was looking for SDL bindings, I've found some mentions in the
> swiki and in the mail archive, but they seems outdated and I didn't
> found anything in Squeaksource or SqueakMap.
> So in my spare time  I started an SDL binding using FFI (Andreas FFI
> is great :) thanks!!!).
> I didn't finish it yet but I could publish it "as is" into
> squeaksource.. so others can help me :)
>

Yes, I would be interested to look at it. How do you use SDL with
Squeak? Do you open a separate window/screen as with wxSqueak? Or do
you render graphics on the Squeak window and use Squeak events for
input? What are your thoughts of using SDL vs. OpenGL for Squeak
games?

There is information about our upcoming game here, there is also a
page with English text: http://www.kreativaspel.se/

Best regards, Micke

> I don't have a lot of time... but maybe if there are others interested
> we can create an "ImageForGameDevelopers" :)
>
> (it's possible to load the OpenGL packages used in Croquet? how?)
>
> On 10/13/06, Lord ZealoN <lordzealon at gmail.com> wrote:
> > Well, here a question to discuss
> >
> > ¿What do you think about use Squeak for make professional games? (with
> > actual VM or possible future StrongTalk VM)
> >
> > I'm not talking about something like MineSweeper or Solitarie. I'm
> > talking about a game with good graphics to sell. MMORPG (Lineage 2,
> > EntropiaUniverse, Life...), RTS (Starwars, Warcraft...), Turn-Based
> > Games (UFO, Civilization....)
> >
> >
> >
> > --
> > ::Mi blog::
> > http://blog.lordzealon.com
> >
> > Linux-User: #370919
> >
> >
>
>



More information about the Squeak-dev mailing list