PDA

View Full Version : Was Delphi/Win32, Soon Kylix/Linux, Need Advice



Bendito
28-01-2004, 05:31 AM
I have a few years experience playing around with Delphi. I dabbled in DirectX and especially OpenGL. But now I'm switching to Linux, and would like some advice. I'd like to create some graphical apps, 2D and 3D, perhaps even some games for the Linux platform.

I don't know where to start! Please give me your advice.

I'd like to stick with Pascal, so I assume first of all, Kylix. But maybe FreePascal is pretty nice, too?

Any 2D APIs for Linux? I'm really impressed by Gnome. Is it possible to use the GTK+ library (the API for Gnome) with Kylix, and make Gnome graphical apps and games? When you create an app with Kylix will it run under Gnome? If so, surely the underlying API is accessible? Surely Borland have created Pascal headers for the GTK+ library?

But would Gnome be too slow for a 2D scrolling game (think of something like Panzer General)? I like games which make use of the underlying windowing system (rather than having to switch resolutions to a full screen), as long as speed is not compromised.

I hear nice things about SDL. Is it good for fast 2D games?

For 3D I reckon I'll stick with OpenGL. I hope that's not impossible with Kylix.

Any pointers, advice and tips are most welcome.

{MSX}
28-01-2004, 08:24 AM
I'd like to create some graphical apps, 2D and 3D, perhaps even some games for the Linux platform.

Good choice!



I'd like to stick with Pascal, so I assume first of all, Kylix. But maybe FreePascal is pretty nice, too?


They're both avaiable, but SDL compile on Kylix better than on FreePascal.
If you want to to use freepascal, you have to modify a little bit the headers or maybe download the last cvs version of Jedi-sdl.
I think you'll better start with kylix.



Any 2D APIs for Linux?

SDL is the most commond, it is extremely easy to use.


I'm really impressed by Gnome. Is it possible to use the GTK+ library (the API for Gnome) with Kylix, and make Gnome graphical apps and games?

Well there are some libraries that i have succesfully used to get GTK on Kylix, that you can find here:
http://gtk2forpascal.sourceforge.net/
Unluckly, if you use GTK you can't use kylix to build your forms, since kylix is statically bound to QT (an older version, too).



When you create an app with Kylix will it run under Gnome? If so, surely the underlying API is accessible? Surely Borland have created Pascal headers for the GTK+ library?

It depends on which library you include in kylix. Here some rules:
If you use standard forms in kylix, you'll need to distribute a library (something like libborqt.so) and it will work fine.
If you use GTK, you have to distribute nothing, and it will work on system with GTK.
If you use SDL, you have nothing to distribute and it will work on system with SDL.
The underlying api is always accessible with the library you choose. Note that QT was originally designed to be C++, so the api conversion wraps that around (and there comes the needs for the stupid library, i guess)



But would Gnome be too slow for a 2D scrolling game (think of something like Panzer General)? I like games which make use of the underlying windowing system (rather than having to switch resolutions to a full screen), as long as speed is not compromised.


For 2D games, you can use SDL, which run both windowed (in whatever window manager) and fullscreen.



I hear nice things about SDL. Is it good for fast 2D games?


Yes, it is good. I'm currently using it. It's "fastness" depends on the support for your video card hardware capabilities, but usually it's good enought.



For 3D I reckon I'll stick with OpenGL. I hope that's not impossible with Kylix.

It's possible. You can use SDL for 3d (which integrates OpenGL in a very nice way), or plain OpenGL.

Remember that SDL is completely cross platform, so your game will compile for both windows and linux.

If you're interested in GTK, you can take a look to Lazarus (http://lazarus.freepascal.org), a freepascal based open Delphi clone. It have a visual designer based on GTK (and on other libraries too!).
I think it still needs lots of code to reach maturity, but it is very interesting.

holybyte
28-01-2004, 04:42 PM
[..]

I'd like to stick with Pascal, so I assume first of all, Kylix. But maybe FreePascal is pretty nice, too?



The freepascal compiler has some minor limitations, but it is quite as good as delphi and the compatibility to delphi is growing constantly.

www.friends-of-fpc.org
the side has a tutorial about FPC+ Linux OpenGL initialization
--------------------------------------
{$MODE DELPHI}

Bendito
30-01-2004, 06:40 AM
Thanks for your responses. Now to finally settle on a Linux distribution. :)

WILL
30-01-2004, 07:05 AM
Sad to say, I had a rather large post written up before my system froze. Damn Norton Internet Security. :?

Anyhow, I basically stated that I myself recently have been feeling my way into Linux myself and that I found Delphi/Kylix to be a great complement. They are *exactly* the same in functionality(Installs great on SuSE 9.2, should be good for Mandrake 9.2 too). As for APIs... I'd recommend using something that is most cross-compatable like JEDI-SDL(works under Linux/Kylix & Windows/Delphi and MacOS X I believe if you would need it too.) SDL can be used to make PlayStation games aswell! So imagine if JEDI-SDL were to implement that support. SDL also makes use of OpenGL, which is the most cross-compatable graphics lib out there(to the best of my knowlage). Anyhow, stick with very portable tools like these and you should be fine.


My recommendations for APIs and Tools:

:arrow: Delphi for Win32

:arrow: Kylix for Linux(either SuSE or Mandrake. RedHat is no good for desktop use!) in either KDE or Gnome(KDE has been worked on more so than Gnome, but either enviroment can run each others GUI apps)

:arrow: JEDI-SDL for Gamming API

:arrow: OpenGL for graphics 2D & 3D(if it couldn't support 3D then it wouldn't be a part of the demos and examples would it? ;))

:arrow: OpenAL for audio(same reasons as OpenGL. It was designed to compliment it after all)


Thats my list... And pretty much what I plan on supporting from here on in. Best of luck with your Linux endevors, I know I just might need some along the way. :)

Useless Hacker
30-01-2004, 10:27 AM
Thanks for your responses. Now to finally settle on a Linux distribution. :)I thoroughly recommend Fedora Core 1 (http://fedora.redhat.com/) (which is based on Red Hat 9).

Bendito
01-02-2004, 02:32 AM
I'm actually leaning towards the Slackware distribution. I'm a bit of a control freak and I'd like to get down and dirty with the OS. :D I understand that there are few extra steps involved in installing Kylix with Slackware Linux, but that's fine with me.