Main > Main Forum
Question for those that actually developed an Arcade game/Juke etc...
(1/3) > >>
renobastian100:
or anyone with extensive experience in arcade game programming...
I want to develop a simple arcade game that runs on Linux. Which programming language is the most reliable for something say as simple and graphic rich as say tetrix/connect 4?

Should I go with Flash/Java/C or is it all a wash depending on programmer expertise? The arcade game will be built from scratch and I want to hook up a bill acceptor... I've found a few guys on elance and guru, but I'm completely clueless else wise on the matter.
GaryMcT:
You could do a game like that in just about any language.  Is the bill collector hooked up as a keyboard input?
MonMotha:
For simple stuff, SDL is great.  It's reasonably fast, lightweight, and it's portable.  From the sound of it, SDL would be perfect for your application and would probably do all that you need.

For more complex things, OpenGL is good for 3D (and can work with SDL to make your life easier).  OpenAL is a good audio library.  Both are portable.  You could use ALSA directly for audio, but it's kinda a mess, and it isn't portable.  There are lots of toolkits for OpenGL available to help you with UI type stuff.  SDL has rudimentary audio support if you prefer.

SDL provides some input abstraction, but you'll probably end up just handling input directly since there's no real equivalent to DirectInput on Linux, though Linux provides some very nice facilities for "raw" input access (it's just not portable, but neither is DirectX).

Most commercial arcade games use a custom I/O board hooked up via a serial port or USB.  Serial devices are readily accessible as /dev/ttySn, while "raw" USB is available via libusb.  If your I/O device looks like a HID device, you can either let the standard input layers handle it (good for keyboard/mouse/game device emulating input devices) or you can attain more "raw" access using hiddev or hidraw, depending on what you need.  None of this would be readily portable to other OSes except libusb, which works on just about anything you'd run on a PC.

If you need a physics library, Bullet is free and I'm told quite good.

All of these libraries mentioned are programmable from C.  There are some libraries to provide C++ bindings if you prefer.  Almost all Linux development is done in C and C++.  Not a ton of Java.  I just don't think it appeals to most Linux devs.  It works fine, however.  Almost no flash since the flash player/plugin architecture on Linux is pretty poorly supported by Adobe (complete lack of hardware acceleration).
renobastian100:

--- Quote from: MonMotha on September 30, 2009, 08:04:05 pm ---For simple stuff, SDL is great.  It's reasonably fast, lightweight, and it's portable.  From the sound of it, SDL would be perfect for your application and would probably do all that you need.

For more complex things, OpenGL is good for 3D (and can work with SDL to make your life easier).  OpenAL is a good audio library.  Both are portable.  You could use ALSA directly for audio, but it's kinda a mess, and it isn't portable.  There are lots of toolkits for OpenGL available to help you with UI type stuff.  SDL has rudimentary audio support if you prefer.

SDL provides some input abstraction, but you'll probably end up just handling input directly since there's no real equivalent to DirectInput on Linux, though Linux provides some very nice facilities for "raw" input access (it's just not portable, but neither is DirectX).

Most commercial arcade games use a custom I/O board hooked up via a serial port or USB.  Serial devices are readily accessible as /dev/ttySn, while "raw" USB is available via libusb.  If your I/O device looks like a HID device, you can either let the standard input layers handle it (good for keyboard/mouse/game device emulating input devices) or you can attain more "raw" access using hiddev or hidraw, depending on what you need.  None of this would be readily portable to other OSes except libusb, which works on just about anything you'd run on a PC.

If you need a physics library, Bullet is free and I'm told quite good.

All of these libraries mentioned are programmable from C.  There are some libraries to provide C++ bindings if you prefer.  Almost all Linux development is done in C and C++.  Not a ton of Java.  I just don't think it appeals to most Linux devs.  It works fine, however.  Almost no flash since the flash player/plugin architecture on Linux is pretty poorly supported by Adobe (complete lack of hardware acceleration).

--- End quote ---


thank you.
\are you a game developer?
renobastian100:

--- Quote from: GaryMcT on September 30, 2009, 07:37:13 pm ---You could do a game like that in just about any language.  Is the bill collector hooked up as a keyboard input?


--- End quote ---

is that method efficient?
Navigation
Message Index
Next page

Go to full version