22 April 2021, 16:58 | #21 |
Registered User
Join Date: Jan 2020
Location: oslo/norway
Posts: 1,616
|
|
22 April 2021, 17:19 | #22 |
Junior Member
Join Date: Sep 2001
Location: No(R)Way
Age: 42
Posts: 3,222
|
Many years since a high quality soccer game, this looks very cool already.. Keep on the good work all involved
|
22 April 2021, 17:56 | #23 |
Ex nihilo nihil
Join Date: Oct 2017
Location: CH
Posts: 5,018
|
Cool playfield scrolling !
The goal seems 'flat'. Do you plan to add some kind of visual depth to it ? |
24 April 2021, 08:32 | #24 |
Registered User
Join Date: Apr 2021
Location: Germany
Posts: 97
|
@vulture
@nikosidis @Steve @kriz Thanks guys @Wavemaker Thanks! I don't know Taito World Cup and I didn't hear of Striker until somebody recently mentioned it My only inspiration was "Super Formation Soccer" for the Super Nintendo, which has more or less the same perspective - and from which I took the current temporary crowd gfx... Souverän Soccer vs. Super Formation Soccer [ Show youtube player ] @malko Thanks! Yes, the goal looks rather flat indeed. Better use of the available colors and a slightly different positioning should do. |
02 May 2021, 19:48 | #25 |
Registered User
Join Date: Apr 2021
Location: Germany
Posts: 97
|
New progress video #14
https://www.youtube.com/playlist?lis...yr1OhOssiA0axW Changes and improvements since the previous video: The whole grass drawing has been fully minced once more. Now the alternating typical soccer grass bars aren't achieved by using two fixed hardcoded 12bit color values anymore but instead consist out of 24bit fully distance faded colors. As a nice side-effect that also sort of cancels out Moiré-like color issues at the distance. You should compare it to one of the previous videos, the quality gain is huge! Other than that we now got up to more than a whopping 700 colors simultanously on screen instead of the previous 500. And those ugly color stripes in the outer border are gone too. Under the hood all color values are now variable, nothing hard-wired anymore. I'll probably exploit that in the next video Some of those changes, especially in the copper-list, gave me some headaches. E.g. suddenly the sprites became a problem - they'd eventually vanish when partially moving off screen to the left - well, the sprite's first row was still where it should have been... Was a timing-trial-and-error orgy to get that right again and of course the results on the real machine differed from the emulation But was worth it. And while the quality was enhanced a lot, the copper-list actually actually shrank significantly In other news: the parrot-logo is now HAM8 instead of HAM6 and the 68060 freeze issue has been found and fixed, thanks to Márton for testing! |
03 May 2021, 01:05 | #26 |
Registered User
Join Date: Oct 2007
Location: Athens , Greece
Posts: 1,858
|
oh man, that really look better all the time! well done m8!
|
03 May 2021, 01:33 | #27 |
Jackie Chan
Join Date: Mar 2012
Location: Ireland
Age: 46
Posts: 1,001
|
Looking good.
|
03 May 2021, 07:38 | #28 |
mä vaan
Join Date: Nov 2001
Location: Finland
Posts: 1,685
|
This is strategically good choice. There has been virtually no no new sports game, since Eat the Wistle.
|
03 May 2021, 08:55 | #29 |
Registered User
Join Date: Apr 2002
Location: Germany
Age: 43
Posts: 743
|
Looks really good. I noticed something, though:
The ball is currently close to the lower half of the screen. Scrolling is bound to it. When you're playing upwards you have a good sight of the playfield. When you're playing downwards though you see approaching players very late. I assume tilting the playfield is a little late at this stage of development. But possibly zoom out a little more ? Or will you move the ball more in the centre at later development stage ? (Cologne ?) |
03 May 2021, 11:07 | #30 | ||||||
Registered User
Join Date: Apr 2021
Location: Germany
Posts: 97
|
wip videos: https://www.youtube.com/playlist?lis...yr1OhOssiA0axW
@vulture @Adrian Browne Thanks @utri007 My thoughts were: what would be a technical challenge with a wow-effect while not requiring toooo much boring (to me) stuff like level-design or so, and sth. that doesn't need toooo much artwork or sth. where you can get away with lots of procedural gfx so that even my coder-art skills could be enough. @Konrad Thanks Quote:
Quote:
Quote:
Quote:
However, maybe this can be improved by e.g. adjusting the camera's depth-offset a bit depending on which team currently owns the ball. Quote:
However, ddni came up with the idea of adding a null-modem mode and I'll most likely consider adding that Quote:
Last edited by Daytona675x; 03 May 2021 at 11:35. |
||||||
18 May 2021, 13:19 | #31 |
Registered User
Join Date: Apr 2021
Location: Germany
Posts: 97
|
New wip video #15
https://www.youtube.com/playlist?lis...yr1OhOssiA0axW That video is somewhat different as it shows how I just made optimizing the game much more comfortable. GCC's inline assembly is quite some pita. Every line has to be enclosed into "", every line has to be terminated with \n, register names like d1 become %/d1, parameters coming from C have to be listed in a fixed order and cannot be referenced by name but only by their position in that list. Also, you have to track all your scratch registers by yourself and add those to the so called clobber list at the very end. When using branches you have to add a b or a f to the target label to tell gcc that it has to branch Back or Forward As you may imagine this quickly becomes a mess, especially if your parameter list changes because you add or remove something. Because of that I spent the weekend to get into VSCode extensions because for this game project I'm using VSCode and the great Amiga C/C++ plugin by Bartman^Abyss. For stuff like the menus, most precalculations etc. you can easily get away with C++ most of the time. But sometimes the not-so-brilliant GCC 68k code generator produces such sub-optimal code that asm is your only option if your targets are unaccelerated Amigas. To work around the gcc inline asm hell I wrote a little extension which can convert GCC-style asm into something more readable, allows me to edit that and then converts it all back, while also adjusting all branches, parameter-references and the clobber list accordingly. It integrates nicely into VSCode. I simply have to mark the asm code, hit ctrl+F1 to un-gcc it, do my changes, mark everything again and hit shift+ctrl+F1. Cheers! |
18 May 2021, 17:01 | #32 | |
Registered User
Join Date: Aug 2018
Location: Untergrund/Germany
Posts: 410
|
Quote:
Yeah, GCC asm doesn't seem to be made for humans . Good solution from your side! Just in case, here are the essential GCC compiler options for fast code: -Ofast -fwhole-program -flto -fno-tree-loop-distribution Your latest build looks really smooth! I feel like the grass could look better with less noise. I would mipmap away even all noise on the far distance. Of course, thats just a matter of taste |
|
18 May 2021, 17:33 | #33 | |
ex. demoscener "Bigmama"
Join Date: Jun 2012
Location: Fyn / Denmark
Posts: 1,638
|
Quote:
Code:
__asm__ __volatile__ ( \ "pop __tmp_reg__ \n\t" \ "sts %[mcusr], __tmp_reg__ \n\t" \ : "=m" (mcusr_) \ : [mcusr] "i" (&mcusr_) \ ); |
|
18 May 2021, 17:48 | #34 |
Registered User
Join Date: Apr 2021
Location: Germany
Posts: 97
|
@hooverphonique
Thanks, you're right, by placing [xyz] in front of a register assignment, e.g. [var_name]"a"(var) you can then use %[var_name] instead of %index. I didn't know that one. While this is certainly better than %index I still prefer var_name without %[] But I could extend the back-to-gcc-style part to use that feature! |
18 May 2021, 18:00 | #35 |
Registered User
Join Date: Jun 2020
Location: Druidia
Posts: 389
|
The inline assembler is actually much better than most people realize, it's just harder than you'd expect to get it right.
I recommend reading through the docs carefully: https://gcc.gnu.org/onlinedocs/gcc/Extended-Asm.html |
18 May 2021, 18:15 | #36 |
Registered User
Join Date: Apr 2021
Location: Germany
Posts: 97
|
@Jobbo
To be honest, even if it's not the total desaster I thought it was and stuff like %[var_name] exists, it's still so extremely annoying to type and use that I'm happy to have made me that helper extension to never look back. @pink^abyss Thanks a lot For the grass I plan to have different options, especially for people who prefer checker-board grass coloring instead of bars. But I could also make texel size and noise configurable, thanks for the idea! Last edited by Daytona675x; 18 May 2021 at 18:22. |
18 May 2021, 18:32 | #37 |
Natteravn
Join Date: Nov 2009
Location: Herford / Germany
Posts: 2,539
|
Do you really need assembler fragments within a C function? When the whole function is asm you could simply write it with a real assembler of your choice and link the object files.
|
18 May 2021, 18:51 | #38 |
Registered User
Join Date: Apr 2021
Location: Germany
Posts: 97
|
@phx
Yes, I need that. Usually only fragments need to be optimized and I actually like mixing C with inline asm, I find that much more convenient (now ). |
22 July 2021, 09:21 | #39 |
Registered User
Join Date: Apr 2021
Location: Germany
Posts: 97
|
New wip video #16
https://www.youtube.com/playlist?lis...yr1OhOssiA0axW I've been quite busy recently, unfortunately not so much with Amiga coding There has been significant progress nevertheless:
Cheers! |
22 July 2021, 10:03 | #40 |
Registered User
Join Date: Oct 2007
Location: Athens , Greece
Posts: 1,858
|
Looks really good
|
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
[WIP] Creeping Me Out! | Mixel | project.Amiga Game Factory | 348 | 05 October 2023 09:21 |
WIP: Stormlord | Ultron | project.Sprites | 5 | 25 January 2016 20:13 |
M.O.V.I.E. Spriteset - WIP | invent | project.Sprites | 2 | 11 July 2014 04:58 |
PC WORLD calls sensible soccer the best soccer games of all times! | pbareges | Retrogaming General Discussion | 11 | 28 June 2010 09:25 |
WIP-titles | Tim Janssen | Nostalgia & memories | 11 | 15 January 2002 03:07 |
|
|