Overview Features Coding Performance Forum Downloads Products OrderV4 Contact

Welcome to the Apollo Forum

This forum is for people interested in the APOLLO CPU.
Please read the forum usage manual.



All TopicsNewsPerformanceGamesDemosApolloVampireAROSWorkbenchATARIReleases
Running Games and Apps.

Interesting 3D Racing Game for Vampire?

Steve Ferrell

Posts 410
12 Apr 2022 21:38


Here's a neat little game that's already available for AmigaOS 4, AROS, MorphOS, and Haiku.  It would be great to see it running on the Vampire  with its 3D geometry, lighting, and texture capabilities.

EXTERNAL LINK 
Video here:  EXTERNAL LINK 


Steve Ferrell

Posts 410
13 Apr 2022 01:19


Just heard back from the author and he's never heard of the Vampire so I sent him a link to the products page. I found that rather shocking.  Anyway, I think he's from Czechia so maybe some of our Czech Vampire fans can  reach out to him and see if he will consider porting this game to the Vampire.


Eddie Cejvan

Posts 13
13 Apr 2022 03:53


I'd get behind this. Apart from the porting work, the game also needs some work.

Track in video reminds me a little of the OG Top Gear/Grand Tour test track.


Tommo Noorduin

Posts 92
13 Apr 2022 15:07


Interested for 3D Racing Game for Vampire?

I like where this is going!

The RCross car behavure is also very nice.



Steve Ferrell

Posts 410
13 Apr 2022 15:14


Unfortunately, BSzili reports that this game depends on OpenGL so it looks like this is a no-go unless the Vampire gets OpenGL support.

EXTERNAL LINK


Rob M

Posts 59
13 Apr 2022 22:24


Looks like the car has suffered a head gasket failure.


Gunnar von Boehn
(Apollo Team Member)
Posts 5756
14 Apr 2022 06:29


Steve Ferrell wrote:

    Unfortunately, BSzili reports that this game depends on OpenGL
   

     
Yes this was obviousr from the first look
   
But depending on OpenGL is actually not a problem, as the basic building blocks are all there in Maggie.
If someone wants then he could make the game run.
 
If you think the game is super great then you can go ahead and port it. If you need help on this then ping us and we help you.
You can start compile the game and work with us on this if you like.

Just ping us.



Vojtěch Salajka

Posts 4
14 Apr 2022 18:43


Hi folks. The original MultiRacer author here. I have found traffic from your forum on my website, you cannot hide from me ;)
 
  The idea of porting MultiRacer to Vampire sounds interesting. After all, I like to port the game to obscure platforms :)
 
  How does Vampire handle 3D? Does it have 3D acceleration with maybe some proprietary, hopefully OpenGL-like API? And what about SDL?
 
  The main hurdle is that I do not have Vampire and it seems kind of expensive.


Eddie Cejvan

Posts 13
15 Apr 2022 03:00


Thanks for joining in, Vojtech.
I'm sure Gunnar and others will be able to give you a primer on the 3D capabilities of the V4+SAGA.

If what they say sounds workable for you, I am happy to fund the V4 hardware for you.

Also, you can connect with the whole ApolloTeam via Discord.


Steve Ferrell

Posts 410
15 Apr 2022 04:02


Vojtěch Salajka wrote:

    Hi folks. The original MultiRacer author here. I have found traffic from your forum on my website, you cannot hide from me ;)
     
      The idea of porting MultiRacer to Vampire sounds interesting. After all, I like to port the game to obscure platforms :)
     
      How does Vampire handle 3D? Does it have 3D acceleration with maybe some proprietary, hopefully OpenGL-like API? And what about SDL?
     
      The main hurdle is that I do not have Vampire and it seems kind of expensive.
   

   
Hi Vojtech.  Since you already have versions of your racer that run on AROS, MorphOS and AmigaOS4, the bulk of your code would need minimal changes for the Vampire.  The OpenGL calls would have to be converted to their 68080 assembler equivalents.  Ideally, someone who is fluent in OpenGL and 68080 assembler would update the 68K minigl implementation to take advantage of the Vampire's hardware 3D capabilities and provide the correct C/C++ header files and link library but I don't think the Vampire team is that far along yet.
   
In case you missed the videos about the Vampire's 3D capabilities, here are the links for some of the them:
   
alpha-blending:  EXTERNAL LINK   
Dungeon Demo:  EXTERNAL LINK   
Textured Cube Demo:  EXTERNAL LINK   
A better cube demo:  EXTERNAL LINK   
Katalin Demo:  EXTERNAL LINK     
There's an SDL 1.2 implementation for classic Amigas here:  EXTERNAL LINK 
I don't think SDL2 exists for 68K Amigas but I may be wrong.   
   
   


Gunnar von Boehn
(Apollo Team Member)
Posts 5756
15 Apr 2022 07:08


Vojtěch Salajka wrote:

Hi folks. The original MultiRacer author here.

Very nice to see you here!

Your racer looks quite funny.
Its refreshing to not have Porsche and Ferraris. :-)

The Apollo V4 systems are new 68K Amiga models.
As you might know, the Amiga was at a certain time the worlds most successful home computer.

Your racer is already ported to OS4 and MOS - both OS are Amiga OS clones for non Amiga HW Systems. (they are for PC HW with no Amiga chipset)

In contrast to this our system are real Amiga hardware.
The design Amiga is based on a DMA chipset with strong Audio and Grafik capabilities.
The Amiga can play and mix multi-channel 16bit audio with DMA based hardware channels. The Amiga has Sprite DMA, it has 2D rendering GFX acceleration DMA (Blitter) and we also have 3D acceleration DMA (Maggie). The Amiga also has a programmable Display Control Engine called Copper. The Amiga provides smooth HW scrolling, and multible graphic playfield overlays, supports double buffering and more.

The Amiga design idea is that the chipset does all the display and rendering and music on its own - often controlled by the Copper - and that the CPU acts mostly as orchestra conductor.

Regarding SDL.
Yes there is SDL 1.2 for the AMIGA.
SDL tends to not fully use the Amiga chipset and tends to use the CPU as work horse for all jobs, like e.g. audio mixing.

SDL makes porting simple and maybe SDL games run good on Amiga.
Of course if you use the Amiga hardware as its intended to be used the result will be much better.

I assume for your game using SDL is not needed.
The Amiga HW is surprisingly easy to code.
And with just 2 pokes you can display a screen in your desired resolution and with 5 pokes you can tell the hardware to play CD quality music. Often its less coding work to use the Amiga hardware as intended - instead using SDL.
But we should review this for your game.

We should of course not forget to mention that the Amiga systems also have some limitations, both in CPU clockrate as in amount of memory. So if your game needs gigabytes of memory or is coded to require gigaherz of CPU then this will not work

Games and programs on Amiga are usually very well written and tuned and perform therefore good. 

Maybe you can tell me a little bit more about your game.
How much memory does it need. How many vertices are your models in average?

Cheers
Gunnar



Vojtěch Salajka

Posts 4
15 Apr 2022 08:10


To answer some of your questions: The game is quite old, it is from 2009 and the development started in 2007 - 2008, so the minimum system requirements are roughly 500 MHz Pentium 3, 128 MB of RAM. The game uses OpenGL 1.x, no shaders, but it relies on a decent 3D performance. Something like GeForce 4 MX. I don't remember triangle counts off the top of my head, but I'll say it's roughly comparable to Quake 3.
 
  I am still confused about all the hardware variants. Which one do you have in mind as the target for the game?


Gunnar von Boehn
(Apollo Team Member)
Posts 5756
15 Apr 2022 08:45


Vojtěch Salajka wrote:

  To answer some of your questions: The game is quite old, it is from 2009, but the development started in 2007 - 2008, so the minimum system requirements are roughly 500 MHz Pentium 3, 128 MB of RAM. The game uses OpenGL 1.x, no shaders, but it relies on a decent 3D performance. Something like GeForce 4 MX.
 
  I am still confused about all the hardware variants. Which one do you have in mind as the target for the game?

 
 
The hardware we speak about are these V4 systems:

V4 Icedrake,  V4 Firebird,  V4 Standalone, (and future V4 variants)
see here EXTERNAL LINK  or see here CLICK HERE 

They all have the same Specs:
 
  * Apollo 68080 CPU (Performance is application dependent:
      up to ~ 1000MHz 68030 / 500MHz 68040 / 250MHz 68060
  * 512 MB DDR3 Memory
  * Video: SuperAGA, RTG, Truecolor 32-bit, 1280x720@60Hz
  * Audio: 8/16-bit, 56 kHz, 24-bit mixing, 8 DMA voices
  * Maggie 3D acceleration
 
 
The CPU performance of the Systems is below your Pentium 3@500Mhz and the 3D texture performance is below your Geforce 4.
For sure some adjustments in regards complexity of scenes and models or vertex count will be needed models to make it run smooth. Maybe some of your code needs also be profiled and tuned. Maybe the port makes even no sense.
 


Vojtěch Salajka

Posts 4
15 Apr 2022 09:35


Yes, it seems porting MultiRacer would be too much work at this point.

Anyway, I will keep an eye on this, because I believe the software support in ApolloOS will come eventually, especially 3D API for Maggie, not necessarily OpenGL, but something along those lines. Then SDL for window creation and controls. Concerning the sound, 8 hardware voices is plenty.

The C++ compiler seems to be g++ based, which is also good.

Lastly, the easiest way to increase performance is reducing draw distance. Even now you can go to Options, View distance, set it to the minimum and see the result.


Gunnar von Boehn
(Apollo Team Member)
Posts 5756
15 Apr 2022 10:30


Vojtěch Salajka wrote:

  Then SDL for window creation and controls.
 

 
Yes, SDL could be used for this...
But for Screen opening on the Hardware you only need 2 lines of ASM or C code.
And as on Amiga all the hardware devices are fully memory mapped - it is very easy to directly query with 1 instruction the mouse, joypad or other device. So you never need drivers for this an Amiga.
 
This means with change only a handful lines in core - and you can open screen directly and directly query mouse or joypads.
So 20 bytes of code - instead 1000000 bytes of SDL linked to it.
 
 
But both options work.
 


Gunnar von Boehn
(Apollo Team Member)
Posts 5756
15 Apr 2022 11:48


Vojtěch Salajka wrote:

Yes, it seems porting MultiRacer would be too much work at this point.

I agree. We could give it a try. :)
I failed to find the sourced for it on your website?
Can you please point me to them?


Tommo Noorduin

Posts 92
15 Apr 2022 12:04


Gunnar von Boehn wrote:

  I agree. We could give it a try. :)
  Can you please point me to them?
 

  EXTERNAL LINK  That should be the one.
 
 
Eddie Cejvan wrote:

  Thanks for joining in, Vojtech.
  I'm sure Gunnar and others will be able to give you a primer on the 3D capabilities of the V4+SAGA.
 
  If what they say sounds workable for you, I am happy to fund the V4 hardware for you.
 

  Very generous offer,
  my hat off for you sir!
 
 


Vojtěch Salajka

Posts 4
15 Apr 2022 15:24


As the license.txt states, the game is freeware, but proprietary. I have not released the source. I did provide it to BSzili solely for the purpose of porting it to AmigaOS 4, AROS, and MorphOS. We worked together and eventually were able to pull it off. But those systems are quite mature and have extensive collection of libraries. MultiRacer does not have much dependencies, but still requires the following: SDL, OpenGL, OpenAL, png, jpeg. Without those, porting it does not seem workable at the moment.

For this reason, I have to refuse Eddie Cejvan's generous offer for now.

Maybe the best course of action would be to firstly convert a 3D game engine that is open source like TORCS, Quake 1, Quake 2, Cube, etc. Most probably someone is working on it already. And hopefully that someone is taking the right approach, which is making a reusable MiniGL implementation, rather than trying to rewrite the renderer.

Let's revisit this topic later.


Gunnar von Boehn
(Apollo Team Member)
Posts 5756
16 Apr 2022 07:08


Vojtěch Salajka wrote:

to AmigaOS 4, AROS, and MorphOS. We worked together and eventually were able to pull it off. But those systems are quite mature and have extensive collection of libraries.

   
Yes, all 3 are copies / clones of AmigaOS and they have all the same libraries and tools as Amiga OS. We run both AmigaOS and AROS on our system.
   
If you say that it compiles for Aros, then you also clearly say that it compiles for us too.
   
But if you not want to show your code, then we have to accept this.
 
To prevent misunderstanding - I do not think that it makes sense that you would do any tuning work for Amiga. And it makes no sense to send a V4 system to you.
Tuning for Amiga hardware is much easier for someone knowing the Amiga.
Therefore it would make sense that e.g we would completely do this job. We wrote several games ourselves and also ported many PC games before, so we are quite proficient doing this.




Artur Jarosik
(Apollo Team Member)
Posts 92
18 Apr 2022 20:39


Hi Vojtech, I have ported some OpenGL games to AmigaOS 3.x including Cube1&2 EXTERNAL LINK 
  We have also Quake 1&2&3 ports.
  If your game doesn't use more GL functions than those than it would compile straight (I have working SDL, OpenAL and MiniGL).

posts 20