Welcome, Guest. Please login or register.

Author Topic: Game programming on the Amiga  (Read 5923 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline macksterTopic starter

  • Newbie
  • *
  • Join Date: Feb 2004
  • Posts: 8
    • Show only replies by mackster
Game programming on the Amiga
« on: February 06, 2004, 05:08:44 AM »
Just wondering what the best language to use to code games is on the Amiga? Is it possible to use c++ on amiga for 3d graphics? What is the best 3D graphics developement package available for the Amiga at the moment? Just a few suggestions would be great, thanks  :-)

p.s is it extremely difficult to do graphics programming on the amiga or is it easy?
 

Offline lempkee

  • Hero Member
  • *****
  • Join Date: Apr 2002
  • Posts: 2860
    • Show only replies by lempkee
    • http://www.amigaguru.com
Re: Game programming on the Amiga
« Reply #1 on: February 06, 2004, 07:01:18 AM »
warp3d is the package then! , its on aminet , 4.2

check it..

and yes its fairly easy to support 3d gfx on amiga as its api Driven.


as for languages , i dont recomend anything else than GCC or vbcc.

both is avail freely , for commercial IDE package , check out goldED AIX and Storm C.


good luck
Whats up with all the hate!
 

Offline Lando

  • Hero Member
  • *****
  • Join Date: Jun 2002
  • Posts: 1390
    • Show only replies by Lando
    • https://bartechtv.com
Re: Game programming on the Amiga
« Reply #2 on: February 06, 2004, 07:31:29 AM »
GCC for the compiler, Warp3D + MiniGL (a subset of OpenGL) for the API.  If you use GCC and OpenGL then your software can be easily compiled to run on other platforms such as Mac, MorphOS, Windows etc without changes.
 

Offline MagicSN

  • Full Member
  • ***
  • Join Date: Sep 2002
  • Posts: 145
    • Show only replies by MagicSN
Re: Game programming on the Amiga
« Reply #3 on: February 06, 2004, 10:03:59 AM »
Best language: C++
3D API: Either Warp3D or MiniGL

I would recommend MiniGL for a game, would make things easier. MiniGL on Amiga is much more complete than the PC-MiniGL, BTW, though no full GL Implementation. It was originally created to be used for the Amiga ports of Heretic II and Shogo.

graphics programming in principial:

Several options. Either you use something Amiga-specific like the chunkyppc.library or Picaso96, or you use SDL. Depends I guess of what sort of functionality you need. And if you need Multiplatform or not (for Multiplatform SDL is of course good).

These are of course all only standard APIs, if you were looking for a complete 3D engine, complete with level editing tools and everything this does not answer your questions. Was this what you had in mind, or was your question only targeted at what 2D and 3D APIs are available ?

Steffen
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
    • Show only replies by bloodline
    • http://www.troubled-mind.com
Re: Game programming on the Amiga
« Reply #4 on: February 06, 2004, 11:17:01 AM »
SDL is vital for any Game development.

Offline lempkee

  • Hero Member
  • *****
  • Join Date: Apr 2002
  • Posts: 2860
    • Show only replies by lempkee
    • http://www.amigaguru.com
Re: Game programming on the Amiga
« Reply #5 on: February 06, 2004, 11:29:17 AM »
bloodline: not os o3.x , unless if you want it to be 1 fps stuff ..
Whats up with all the hate!
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
    • Show only replies by bloodline
    • http://www.troubled-mind.com
Re: Game programming on the Amiga
« Reply #6 on: February 06, 2004, 11:38:24 AM »
Quote

lempkee wrote:
bloodline: not os o3.x , unless if you want it to be 1 fps stuff ..


If you are working on a Real Amiga then you have to hit the hardware if you want decent results anyway.

Offline MagicSN

  • Full Member
  • ***
  • Join Date: Sep 2002
  • Posts: 145
    • Show only replies by MagicSN
Re: Game programming on the Amiga
« Reply #7 on: February 06, 2004, 12:01:17 PM »
Hi!

I do not agree. Quake 2 for example does not hit the hardware, and nobody would call it slow, right ? :)

It always depends on what you are doing. For a certain kind of 2D games hitting the hardware (== directly using Blitter/Scrolling tricks or such) can have advantages, but if it is for example a 3D Game you have no advantage whatsoever there... even if you hit the hardware you only can just refresh the display... no "magic" to be found there...

Steffen
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
    • Show only replies by bloodline
    • http://www.troubled-mind.com
Re: Game programming on the Amiga
« Reply #8 on: February 06, 2004, 12:08:10 PM »
Quote

MagicSN wrote:
Hi!

I do not agree. Quake 2 for example does not hit the hardware, and nobody would call it slow, right ? :)

It always depends on what you are doing. For a certain kind of 2D games hitting the hardware (== directly using Blitter/Scrolling tricks or such) can have advantages, but if it is for example a 3D Game you have no advantage whatsoever there... even if you hit the hardware you only can just refresh the display... no "magic" to be found there...

Steffen


If your machine can run Quake2 then it can run SDL... :roll:

Offline SlimJim

  • Hero Member
  • *****
  • Join Date: Feb 2002
  • Posts: 752
    • Show only replies by SlimJim
Re: Game programming on the Amiga
« Reply #9 on: February 06, 2004, 12:14:25 PM »
A quick summary of what SDL is for those of us trying to
learn a snippet here and there? :-)
.
SlimJim
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
    • Show only replies by bloodline
    • http://www.troubled-mind.com
Re: Game programming on the Amiga
« Reply #10 on: February 06, 2004, 12:23:02 PM »
SDL = Simple Directmedia Layer.

It is a platform independant way to access a computers Graphics, Sound and other misc hardware.

A program witten using it can be compiled to run on almost any platform.

It is very fast as it always uses the fastest possible method to use the hardware.

It also supports OpenGL for 3D :-)

Physically SDL is a shared Library, sdl.library, and it is acess in the same way as the graphics.library, the advantage it has over the graphics.library is that it supports modern Hardware and is available for most operating systems.

Offline MagicSN

  • Full Member
  • ***
  • Join Date: Sep 2002
  • Posts: 145
    • Show only replies by MagicSN
Re: Game programming on the Amiga
« Reply #11 on: February 06, 2004, 12:43:11 PM »
>Physically SDL is a shared Library, sdl.library, and

Not always. The OS 4 version of SDL for example is (at least currently) a Linker Library. As is the Linux-version of SDL.

Anyways, basically SDL covers the aspects:

- Joysticks (I have a Beta of an SDL version which
  uses AmigaInput, BTW :) )
- Sound
- Video (2D), also includes Blitting, and also conversion to a specific pixel format
- Interface to GL for 3D
- Timer
- Semaphores and other stuff for Multithreading and such
- Mouse/Keyboard

Hope I did not forget anything :)

There are also some "Extra-"Libraries for SDL (but not officially part of SDL):

SDL_mixer: For mixing of sounds
SDL_image: various image-loaders
SMpeg: Movie Replay

Basically, if done good, you can take the same source and compile it on any OS.

SDL also has some disadvantages though, and
because of that it was always quite a dispute, some
coders always use SDL, some never :) :

- It does not include a Text() function, you have to do
  all textoutput code yourselves
- You cannot access the Amiga Screen/Window
  handles if you'd want to do so (but if you code
  OS-independent, you'd not do so anyways)
- You do not have Direct Access to the Video RAM
  (okay, you can hack that in using MiniGL commands
  were you HAVE such possibilities, hehehe :) But
  of course then you throw OS-independency out of
  the window again)
- Not all Amiga Implementations of SDL have MiniGL
  Support
- The 2D Blitting functions (used for screen refresh) of some SDL implementations on Amiga are said to be slow

Based on the current SDL Beta for OS 4 there are
several ports using SDL for OS 4 already, including
MAME and other popular stuff.

Steffen
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
    • Show only replies by bloodline
    • http://www.troubled-mind.com
Re: Game programming on the Amiga
« Reply #12 on: February 06, 2004, 01:00:55 PM »
And Simple Networking as well :-)

Offline itix

  • Hero Member
  • *****
  • Join Date: Oct 2002
  • Posts: 2380
    • Show only replies by itix
Re: Game programming on the Amiga
« Reply #13 on: February 06, 2004, 01:07:18 PM »
Quote

SDL is vital for any Game development.


I would not use SDL for Amiga only games. If you are porting your game to Linux (or other non-Amiga platform) then SDL
is must but in general SDL is nothing but wrappers for Amiga library calls. IMO it is better use customized GUI toolkit
(MUI or CA) rather than SDL.
My Amigas: A500, Mac Mini and PowerBook
 

Offline Neo

  • Jr. Member
  • **
  • Join Date: Oct 2003
  • Posts: 77
    • Show only replies by Neo
Re: Game programming on the Amiga
« Reply #14 on: February 06, 2004, 02:01:04 PM »
C++ is a great language to program with if you now how to do. Otherwise it gives you to many choices and it's likely you never get of the ground. Then better use C.

Now, C++ is backwards compatible with C and most programmers are actually only wrapping C into C++ containers to make it look like C++, which you could do ofcourse.

As for compilers for the Amiga there are a few I now of.

  SAS C 6.5 - Dead, some C++ support with patches. But linking C++ object files appears not to work properly.

  StormC 3.0 - Available on Amiga Developer CD 2.1. C++ supported, but lacks basic features like namespace. There is StormC 4.0 with PPC support that may be better, but I wouldn't count on it.

  VBCC - *FREE* Don't support C++.

  GCC - *FREE* Most advanced C/C++ compiler available. But, if your not a UNIX geek you will get gray hairs long before you compiled your first hello world example.

The best part with StormC is that it has an IDE which is good if you are a beginner.
A3000D CyberstormPPC 040/25 (oc. 40MHz), 604e/180, 128MB Ram, CyberVisionPPC, AriadneII, AmigaOS 3.9 BB2, MiamiDX, Voyager 3.3, SMB-Handler, FroggerNG, Compal 15\\" TFT Monitor