English Amiga Board


Go Back   English Amiga Board > Main > Retrogaming General Discussion

 
 
Thread Tools
Old 13 April 2020, 22:00   #81
Cobe
Registered User
 
Join Date: Jan 2014
Location: Belgrade / Serbia
Age: 41
Posts: 999
Quote:
Originally Posted by saimon69 View Post
Call it BoxMen Fighter then

i repeat my question, if we remove the fill, would that increase performance?
Call it Sumotori
Cobe is offline  
Old 15 April 2020, 21:12   #82
AmigaHope
Registered User
 
Join Date: Sep 2006
Location: New Sandusky
Posts: 942
Quote:
Originally Posted by roondar View Post
It's certainly true that high end 3D is out of reach of a 68030 based AGA Amiga, but those 68030 based systems with fastmemory do actually get quite a bit more "bang for the buck" out of chipmemory bandwidth than an A500 does.

Not only does the CPU have twice the bandwidth to chipmemory to begin with, it can also prepare graphics in the much faster fastmemory and only copy over the resulting display instead of building the entire display in chipmemory.

This might not seem like a big deal, but it really kinda is. An A500 has a best-case CPU bandwidth to chipmemory of 3.5MB/sec and that's it. Adding fastmemory will not increase this maximum as the 3.5MB/sec is the limit of the CPU, not the bus. A 68030/AGA machine with fastmemory on the other hand might have closer to 20MB/sec to fastmemory and 7MB/sec to chipmemory. This is quite a bit less than the consoles we've been talking about, but also much, much more than what an A500 gets.

And that's setting aside the ~10x speed increase of the CPU, which vastly speeds up the 3D math being done. Even a game that knows nothing about fast memory based rendering, such as Frontier:Elite 2 runs several times faster on a 68030 based AGA machine. Had Frontier been written with higher spec Amiga's in mind, I'm convinced it would've been much faster or better looking on such machines.
The problem with chip memory is that all that copy time locks up the CPU. Even if it's rendering lightning-quick to fast memory, you're giving up x% of your cpu to just chipmem copy (depending on framerate) so you're crippling what your CPU could potentially do.

This is why a fast 2D chipset could be used to make a good Virtua Fighter, the chipset could draw 2D primitives with just vertex instructions sent from the CPU -- i.e. the CPU does 3D while the chipset rasterizes. This is how most games on the Saturn worked (with textures done with scaled/rotated sprites) but even a less-sophisticated chipset like the S3 Trio that can only do 2D polygon fill could do a good Virtua Fighter since you're just solid-filling polygons. (i.e. the stuff the Amiga blitter could do, only much faster)

So IMHO if you had a decently fast 68040/40 and a Cybervision 64 or Picasso IV you could do a decent Virtua Fighter sending only draw commands to the card. You could beat the 32X with such a setup as the 32X has to use CPU to draw everything (32X framebuffer has NO hardware acceleration of any kind -- which is why so many 32X games use the Genesis chipset for backgrounds and low-color sprites)
AmigaHope is offline  
Old 15 April 2020, 21:25   #83
roondar
Registered User
 
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,411
Quote:
Originally Posted by AmigaHope View Post
The problem with chip memory is that all that copy time locks up the CPU. Even if it's rendering lightning-quick to fast memory, you're giving up x% of your cpu to just chipmem copy (depending on framerate) so you're crippling what your CPU could potentially do.
Certainly. It's absolutely not ideal. And as I said before, it definitely won't be able to do Virtua Fighter (or anything close to it).

My only point with that post was that a 68030 based AGA Amiga with fast memory, for all it's faults, is still a massive step up from an A500 without all that for 3D gaming and that we should really acknowledge that. Instead of posting videos of old A500 games, while implying this is close to what a 68030 will be able to do. That's all

Edit: this may have not been clear from the above, but my point about the A500 vs 68030 wasn't aimed at you. It was aimed more at the thread in general as I've seen people make statements like that.

Last edited by roondar; 15 April 2020 at 22:09.
roondar is offline  
Old 15 April 2020, 22:57   #84
saimon69
J.M.D - Bedroom Musician
 
Join Date: Apr 2014
Location: los angeles,ca
Posts: 3,520
Well, the videos of the old A500 games were to show what a 68000 can do, and implies a 68030 should do better than that - i refuse to believe that a 030 would choke on (if i try to approximate two box figures on screen count) average 200 flat polygons on screen! Might handle it at 10FPS but not choke that bad! (hmm, next time i go in italy should try the Mount Rushmore scenario in Figher Bomber on my 1200/030 and see how fast can go)

Last edited by saimon69; 15 April 2020 at 23:15.
saimon69 is offline  
Old 15 April 2020, 23:16   #85
eXeler0
Registered User
 
eXeler0's Avatar
 
Join Date: Feb 2015
Location: Sweden
Age: 50
Posts: 2,948
Is there a video somewhere showing Geoff Crammonds Formula One Grand Prix running on a 030? Ive seen it run on 060. Thats a decent ammount of flat shaded polys by Amiga standards..

Last edited by eXeler0; 16 April 2020 at 00:00.
eXeler0 is offline  
Old 16 April 2020, 00:31   #86
roondar
Registered User
 
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,411
Quote:
Originally Posted by saimon69 View Post
Well, the videos of the old A500 games were to show what a 68000 can do, and implies a 68030 should do better than that - i refuse to believe that a 030 would choke on (if i try to approximate two box figures on screen count) average 200 flat polygons on screen! Might handle it at 10FPS but not choke that bad! (hmm, next time i go in italy should try the Mount Rushmore scenario in Figher Bomber on my 1200/030 and see how fast can go)
I went back and checked and you're right, I had misread it.
Sorry, my bad

As for the 200 polygons/frame figure, I have no way of checking it but I will say I can't remember any 50Hz 3D games off the top of my head. There is that one motor cycle racing game and I think one sort-of-flight simulator, but they're both aimed squarely at the A500 and I don't think they actually run at 50Hz (could be wrong).
roondar is offline  
Old 16 April 2020, 13:53   #87
Old_Bob
BiO-sanitation Battalion
 
Old_Bob's Avatar
 
Join Date: Jun 2017
Location: Scotland
Posts: 151
Quote:
Originally Posted by AmigaHope View Post
The problem with chip memory is that all that copy time locks up the CPU. Even if it's rendering lightning-quick to fast memory, you're giving up x% of your cpu to just chipmem copy (depending on framerate) so you're crippling what your CPU could potentially do.
It can still be faster over all, even with the hit for transferring everything to Chip RAM. Because Fast RAM is so much faster. I've made some programs to test this, using 2D objects, and for very fast CPUs the advantage is clear. A hypothetical Virtua Fighter engine using 5, or maybe even 4 bitplanes, should also benefit to a large degree, IMO.

Quote:
Originally Posted by eXeler0 View Post
Is there a video somewhere showing Geoff Crammonds Formula One Grand Prix running on a 030? Ive seen it run on 060. Thats a decent ammount of flat shaded polys by Amiga standards..
I used to play this quite a bit on my Blizzard MKIV. Suitably patched, it can manage a steady 25fps. The annoying thing is you can't race with other cars on screen or it all goes a bit wonky. This is another game, along with Stunt Car Racer that was screaming out for an AGA specific version. Interestingly, the Wikipedia page mentions work being done on an Atari Jaguar version. Now, that would definitely be a Jaguar game worth buying.

For those that haven't tried it, grab PatchF1GP from Aminet and give it a spin.

B

Last edited by Old_Bob; 17 April 2020 at 17:58.
Old_Bob is offline  
Old 16 April 2020, 15:17   #88
str0m
Registered User
 
Join Date: Oct 2016
Location: Newcastle, UK
Posts: 264
There is a Jag version of Stunt Car Racer, ST port, I was playing it the other day via my SD cart, unless you mean F1
str0m is offline  
Old 16 April 2020, 16:03   #89
Old_Bob
BiO-sanitation Battalion
 
Old_Bob's Avatar
 
Join Date: Jun 2017
Location: Scotland
Posts: 151
Quote:
Originally Posted by str0m View Post
There is a Jag version of Stunt Car Racer, ST port, I was playing it the other day via my SD cart, unless you mean F1
Sorry, I was referring to F1GP. Although, a Jag port of Stunt Car Racer sounds interesting. Does it merely run the 68K ST code? Or, does it use the Tom and/or Jerry chips to speed things up?

B
Old_Bob is offline  
Old 16 April 2020, 16:21   #90
roondar
Registered User
 
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,411
I only just made the connection between the Jag's Tom & Jerry chips and a certain cartoon... Never too old to learn it seems
roondar is offline  
Old 16 April 2020, 16:53   #91
str0m
Registered User
 
Join Date: Oct 2016
Location: Newcastle, UK
Posts: 264
Old Bob - Not sure, paragraph at the top here mentions a few techniques used. I think the frame rate was slightly higher than on say a 500 but then the ST had a quicker cpu anyway. I expect mostly it is running ST 68k code which some minor improvements as opposed to being re-written to use the custom chips. There are tons of ST ports for the Jag but most needed the Skunk board (flash cart but only takes a couple), now the SD cart has been released they are redoing some for that (further down first post), music is changed on some for example so not using ST noise https://atariage.com/forums/topic/24...to-the-jaguar/

Bit off topic

Getting back on topic, there are some truly dreadful 3D games on the Jag which is probably what would happen if a VF port was tried on a 030 Amiga lol
str0m is offline  
Old 16 April 2020, 17:34   #92
coder76
Registered User
 
Join Date: Dec 2016
Location: Finland
Posts: 168
There are some possibilities to make a good conversion of Virtua Fighter. The polygonal characters don't appear to have many colors, so you could make a 4+4 bitplane split with AGA, having 16 colors for background and 16 colors for characters + floors. Other splits are also possible, such as 32 colors for characters and floor and 8 for background. Using a 4-5 bitplane c2p makes the c2p conversion fast. Then the screen area needed to be c2p converted could be optimized further by only converting each character separately and not most of the screen. Sprites could possibly also be used for static background for more colors. The floor seems simple enough to be drawn with blitter, and could be done in meanwhile while the CPU draws the polygonal gfx into fast ram. The copper could be used to increase colors (also sky gradient) for background and floor.

So in this solution I would use a hybrid approach, with chunky and planar pixels. Chunky pixels are faster to render individually with CPU in fast ram, while the native planar mode allows using bitplane groups, to allow for a dualplayfield approach for an overlap of characters over background and saving colors+processing time, and also allows also for using blitter to render part of screen, while CPU is working in fast memory.
coder76 is offline  
Old 17 April 2020, 04:07   #93
ReadOnlyCat
Code Kitten
 
Join Date: Aug 2015
Location: Montreal/Canadia
Age: 52
Posts: 1,178
Quote:
Originally Posted by no9 View Post
Sorry, I didn't read the whole thread. i just want to add one more 030 demo example on the topic
Demos are not a good example of what the machine can do:
- not interactive
- lots of precaculated content
- 100% of the CPU + Blitter available for rendering

A game:
- reacts to user input and computes opponent AI
- runs gameplay logic and physics (if any)
- cannot precalculate massive amounts of data

Quote:
Originally Posted by roondar View Post
I'll be honest, that is a disappointingly low figure.

Out of interest, how do we determine these figures? Is this just "common knowledge", or do have we some sort of 3D benchmark somewhere I'm just not aware off? I'm asking because I've always found Amiga 3D performance to be a particularly nebulous area. I've never found a clear result for any Amiga really and there seems to be a lot of misinformation out there.
Well, just list the operations a 3D game must go through:

1- hierarchical polygonal model animation
-> this is many times more expensive than 3D projection
-> forget it, too many matrix multiplications, the Amiga 030 must use Quake-like animation (pre-stored positions)

2- Culling
-> Determine which objects are visible on camera, essentially a bunch of bounding sphere visibility computations, not too expensive and for a 2 players fighting game we can make sure they are always visible and avoid that

2- 3D-2D project polygon vertices
-> these are essentially matrix multiplications, it is easy enough to benchmark it: write a 4x4 matrix multiplication routine and see how many times you can run it per frame (fixed point obviously)

3- Clipping
-> Looks like nothing but one must determine which polygons intersect the edges of the screen and clip them appropriately.
This is not free but for Virtual Fighter it may be possible to cheat (compute the camera to ensure fighters are never clipped).

4- Hidden face removal
-> one scalar product per polygon

5- Z sort
-> must be done object by object, then polygon by polygon -> O( n log n + m log m) (n = objects, m = polygons per object)
You can cheat by storing lists of draw order as a function of angle to the camera.
(Crash Bandicoot did that on the PS1 nto save CPU time.)

6- Polygon rasterization.
-> I will leave that to you

The cost of each of these passes in terms of multiplications and additions can be estimated as a function of the number of objects drawn and their number of polygons.

The two biggest steps will be:
- projection (= matrix multiplication)
- rasterization

The latter is a bit tricky to benchmark but here are a few things one can do:
- assume an average screen pixel count per polygon
- assume an average screen height per polygon
- determine the number of mults+adds necessary to determine the span of each rasterized line
- determine the number of 16 bit words writes needed per polygon

Doing that should give a relatively useful cost estimate per polygon.
And do not forget that this is for a bitplane architecture, so polygons must be rasterized on n bitplanes at a time.
ReadOnlyCat is offline  
Old 17 April 2020, 07:07   #94
no9
Registered User
 
no9's Avatar
 
Join Date: Feb 2018
Location: Poland
Posts: 352
Quote:
Originally Posted by ReadOnlyCat View Post
Demos are not a good example of what the machine can do:

Demos I presented here are sufficient examples that there is no way of achieving quality required to have a game like VF on 030 Amiga.
no9 is offline  
Old 17 April 2020, 16:41   #95
eXeler0
Registered User
 
eXeler0's Avatar
 
Join Date: Feb 2015
Location: Sweden
Age: 50
Posts: 2,948
Honestly, at this point it *would* be interesting to just know what can be done on a 50MHz 030 + AGA + 16MB RAM. Forget Virtua Fighter Arcade experience, but if really pushed, what could be done on a 030 system.. If someone wants to start playing I can provide custom 3d models for testing..
eXeler0 is offline  
Old 17 April 2020, 18:55   #96
roondar
Registered User
 
Join Date: Jul 2015
Location: The Netherlands
Posts: 3,411
Note: I shorted your reply a bit to make this post smaller, not because I didn't read it or didn't find it interesting. Far from it, I thank you for the effort you took
Quote:
Originally Posted by ReadOnlyCat View Post
Well, just list the operations a 3D game must go through:

1- hierarchical polygonal model animation
-> this is many times more expensive than 3D projection
-> forget it, too many matrix multiplications, the Amiga 030 must use Quake-like animation (pre-stored positions)

...many more interesting points...

Doing that should give a relatively useful cost estimate per polygon.
And do not forget that this is for a bitplane architecture, so polygons must be rasterized on n bitplanes at a time.
Thanks for the long list of parts of a 3D renderer, but I'm afraid I'm not going to be making one. My heart lies with 2D programming on the Amiga, I'm just also interested in knowing what can/can't be done on the 3D front

Last edited by roondar; 17 April 2020 at 18:57. Reason: Cut out part of the quote to save some space
roondar is offline  
Old 17 April 2020, 23:12   #97
VladR
Registered User
 
Join Date: Dec 2019
Location: North Dakota
Posts: 741
Quote:
Originally Posted by eXeler0 View Post
Honestly, at this point it *would* be interesting to just know what can be done on a 50MHz 030 + AGA + 16MB RAM. Forget Virtua Fighter Arcade experience, but if really pushed, what could be done on a 030 system.. If someone wants to start playing I can provide custom 3d models for testing..
50 MHz 030 with 16 MB RAM sounds intriguing...


To really push the visual envelope we can't be doing fast-paced games that suck at low framerate. This rules out the following genres:
- racing
- FPS
- fighting
- simulations


You need a genre that can get away with 8 fps. Like a turn-based action squad game - something like Incubation or Space Hulk.
There, you have the -mostly static- overhead camera that only moves when you need to scroll over the map, so the low framerate doesn't hurt that much, as say, in FPS game where you must be able to make a quick 180 turn.


Or, a 3D indoor platformer (with sprites for characters) that will play fine at 10 fps, giving you 6 full frames of CPU+Blitter time. Something like Prince Of Persia on X360 (minus the perpixel shaders).


I've done a lot of experiments at various framerates for such 3D Platformer on Jaguar. As long as you keep the framerate constant (no framedrops, even one framedrop completely kills it), the movement is actually smooth even at 12-15 fps. It's quite a balancing act, but it can work very convincingly.


The reason why even 12 fps works is that if the front (near) plane of the 3D walls moves only 12 pixels per second, then every frame jumps only a single pixel. Which feels smooth (even if somewhat slow).
Alternatively, you move 2 pixels per frame, which doubles the scrolling speed, but is obviously less smooth...
VladR is offline  
Old 17 April 2020, 23:17   #98
VladR
Registered User
 
Join Date: Dec 2019
Location: North Dakota
Posts: 741
Question : Can you have a Chunky 256-color RTG Framebuffer on a vanilla 030 ? Or do you need some accelerator for that ?

The Chunky-To-Bitplane conversion, especially at low framerate of 8-10 fps, should be much faster than multi-stage bitplane rendering, as it would happen just once every ~6 frames...
VladR is offline  
Old 18 April 2020, 00:05   #99
Samurai_Crow
Total Chaos forever!
 
Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 49
Posts: 2,186
Quote:
Originally Posted by VladR View Post
Question : Can you have a Chunky 256-color RTG Framebuffer on a vanilla 030 ? Or do you need some accelerator for that ?

The Chunky-To-Bitplane conversion, especially at low framerate of 8-10 fps, should be much faster than multi-stage bitplane rendering, as it would happen just once every ~6 frames...
I played Doom at a playable frame rate on my 030 accelerated A1200 with 16 megs of Fast RAM for years. Chunky to planar is certainly possible on an 030.
Samurai_Crow is offline  
Old 18 April 2020, 16:25   #100
spiff
Oh noes!
 
spiff's Avatar
 
Join Date: Mar 2003
Location: Neverland
Posts: 766
Quote:
Originally Posted by eXeler0 View Post
If someone wants to start playing I can provide custom 3d models for testing..
  1. Dump 3d models and levels from VF
  2. Convert to 3d construction kit format
  3. Import
  4. Benchmark
  5. ???
  6. ... profit!!!

spiff is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Found: Shadow Fighter (Was: Anime Fighter) LaundroMat Looking for a game name ? 6 14 June 2017 20:52
DKB Cobra/Viper 030 (Full 030) + FPU + Ram £100 ElectroBlaster MarketPlace 1 08 March 2013 12:52
DKB Viper 030 + 128mb simm for A500 030 + ram... ElectroBlaster Swapshop 0 18 August 2012 19:48
[Found: Virtua Cop] shootie game with a gun cosmicfrog Looking for a game name ? 11 05 October 2009 22:11
GVP G-force 030 board for A2000-problem switching between 030 and 68k Unregistered support.Hardware 5 19 August 2004 10:04

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 05:54.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.11105 seconds with 14 queries