Dread Ep 04 - "Doom" clone for Amiga 500 - Revisiting the graphics...

  Рет қаралды 10,291

KK/Altair

KK/Altair

3 жыл бұрын

4th episode of making of "Doom" clone on an Amiga 500.
This time, focused more on graphics structure and processing, especially the weapons.
Thoughts? Leave them in the comments! (I do read them all!)
Intro soundtrack courtesy of Mr. Quiet:
- soundcloud: / chiptonizee-for-futuri...
- KZfaq: / @mrquiet-tn3js
This game uses assets by FreeDoom project:
- freedoom.github.io/
Have fun!!

Пікірлер: 131
@DennisRamberg
@DennisRamberg 3 жыл бұрын
I was just thinking.... Chaos Engine 3D.... :D Amiga enthusiasts would loose their minds xD
@cederom
@cederom 3 жыл бұрын
yyyeeeaaaaaa =)
@KKAltair
@KKAltair 3 жыл бұрын
Might be a cool idea, but I won't be willing to risk going after someone's else IP. Right now we just have general Doom look & feel, but at one point we might part even with that for another setting.
@perihelion7445
@perihelion7445 3 жыл бұрын
I think I'd prefer an entirely new game built around his Engine.
@thorham1346
@thorham1346 3 жыл бұрын
Chaos Engine 3D would be an entirely different game.
3 жыл бұрын
Not only a fantastic 3d engine, but now also a great graphics converter. Amazing, as always :D
@KKAltair
@KKAltair 3 жыл бұрын
Thanks! :)
@ctbullett300
@ctbullett300 3 жыл бұрын
Great work. Cant wait to see what the Amiga community will do with this engine. Your hard work is really appreciated.
@KKAltair
@KKAltair 3 жыл бұрын
Thanks a lot! :)
@someguy872
@someguy872 3 жыл бұрын
I just feel like if this game was released in '93-'95 this would have prevented from people upgrading just for doom for the most part. Amazing work!
@KKAltair
@KKAltair 3 жыл бұрын
People would probably would still upgrade, but at least for me, it would definitely replace hours spent on Citadel, Behind the Iron Gate and Death Mask. I dreamed about making such thing when I was a teenager (already programming in AMOS). Even the game name "Dread" stayed from back then. :)
@serloinz
@serloinz 3 жыл бұрын
@@KKAltair i made so many things in AMOS .. good times.. and great job on this. I was in a similar boat just dying for anything remotely like doom on the amiga :)
@KKAltair
@KKAltair 3 жыл бұрын
@@serloinz Same here. :) And I think I'll show my early AMOS works one day here just for fun. :)
@serloinz
@serloinz 3 жыл бұрын
@@KKAltair do it...would be great to see.. unfortunately all mine are lost..still have the memory though :)
@kcolbinyar
@kcolbinyar 3 жыл бұрын
@@KKAltair That would be great if you shared that. All any AMOS stuff I did is long forgotten, and probably not very good! Would love to be able to pick through someone's and get a feel for it again.
@daishi5571
@daishi5571 3 жыл бұрын
Your tenacity in fixing what is in the scheme of thing quite minor, is much appreciated. And while I can run Doom on my accelerated A1200, I look forward to seeing what you can do with this, as it ultimately shows what was possible with an Amiga (from 1985) and some clever programming.
@KKAltair
@KKAltair 3 жыл бұрын
I completely agree it's minor, but it's more an introduction to the next episode (which is mostly ready) which will bring the hand weapon to whole new level. And I had to do it, because a gfx artist friend already sent me pixelled graphics, and it was a shame not to use them. :)
@daishi5571
@daishi5571 3 жыл бұрын
@@KKAltair It definitely is an improvement, and most certainly would be a waste. Just as a question, will there be an option in the engine to increase the colour depth for those who have an accelerator but have OCS/ECS. I realize it would require different graphics, i'm just enquiring.
@KKAltair
@KKAltair 3 жыл бұрын
@@daishi5571 I don't plan it right now. Let's better get the good old (t)rusty A500 rocking first! :)
@MegaMasa2000
@MegaMasa2000 3 жыл бұрын
"quite minor".. nonsense It is most important thing to fix. Weapon hand is visible always and if it looks crap like before and still does, playing this game is shit experience.
@kcolbinyar
@kcolbinyar 3 жыл бұрын
Great to see an update so soon and see the progress. Amazing work.
@KKAltair
@KKAltair 3 жыл бұрын
More to come! :)
@dermannohnenamen7183
@dermannohnenamen7183 3 жыл бұрын
You are awesome! Amiga enthusiasts like you make the Amiga live on and on. It is incredible work - or even more, it's art! Please keep on finishing that project. And give all Amiga (Retro) Lovers a possibility of reminescence of the good ol' days.
@KKAltair
@KKAltair 3 жыл бұрын
Thanks! :) I'm on it!
@MrSoulast
@MrSoulast 3 жыл бұрын
If I good remember the game Elfmania on Amiga did use some special technic (code) to increase the quality of colors.
@KKAltair
@KKAltair 3 жыл бұрын
It would be challenging to find an Amiga game which didn't use any tricks. This platform is just beautiful to hack around.
@AmigaCammy
@AmigaCammy 3 жыл бұрын
I love seeing how you optimise everything in your engine, it's truly incredible. I think at this point the thing that will enhance the look the most will be to adjust your game palette. I believe there are a few colours that are too similar to each other, and not enough variety. Considering all the graphics are dithered and you have enough grey scales I think the greyish-green colours can be made a little more vibrant, and you need a pink colour in there somewhere which will make the hands look so much better. I have an old video on my channel of Doom running on my Workbench screen in a window. The Workbench is running in 1280x720 in 16 colours, using Rebel's optimised palette (which uses OCS values). Please look at how good it looks, and it has no dithering or other optimisations for running in low colour. I think you should have a good look at Rebel's palette (it's become a favourite in the Amiga community now and is included in Classic Workbench) and see if you can adjust your palette to give it a little more useful colour based on his hard work (which he explained once and I was amazed how many variables and calculations he did to arrive at this palette).
@KKAltair
@KKAltair 3 жыл бұрын
The palette and the assets should have a big "temporary content" attached. In my plans every map will have a chance to specify its own palette for variety. And in the end, I hope it will be graphicians/modders job to get some good looking content. I'm just a coder, and while I consider myself capable of some entry-level gfx or pixelling, I prefer to leave things for people more skilled (if some will happen to be interested in this project).
@valenrn8657
@valenrn8657 3 жыл бұрын
Link amigablogs.net/feed/2012/01/guide-making-workbench-prettier-using-rebels-palette-and-skins OCS/ECS 16 color Workbench with Rebel's optimized palette.
@valenrn8657
@valenrn8657 3 жыл бұрын
Bitmap Bother's Gods and Xenon 2 games have 16 colors that work on Atari ST's limitation.
@stinger1533
@stinger1533 3 жыл бұрын
Fantastic work! I've been hanging out for an update for a while now. It would have been exciting to see this on the pages of CU Amiga or The One Amiga in the early 90s.
@KKAltair
@KKAltair 3 жыл бұрын
Thanks! :) I would have been excited myself back then! :)
@PixelShade
@PixelShade 3 жыл бұрын
This is awesome! I'm always longing for a status update! The video really help us understand the backbone of the technology. Just let me know if you ever need help with graphics. I really believe that with custom graphics as well as custom palettes this game would look truly remarkable, even with the low color count. The biggest issue right now for me is the harshness in colors as well as the very gray gradients. it's not a very flexible palette. At the same time I understand the limitation of using Freedoom sprites and assets. If the art was built ground up for the engine together with added sprites, Amiga users would be in for a real visual treat. :D
@KKAltair
@KKAltair 3 жыл бұрын
Palette is going to be switched per-level. Right now I don't know how the art should be reworked, but feel free to contact me (find my contact details on devkk.net webpage) and we can chat about what can be done.
@CRG
@CRG 3 жыл бұрын
Great work KK, looking forward to more updates.
@KKAltair
@KKAltair 3 жыл бұрын
Working on the next one. Expect ~20 minutes this time. :)
@CRG
@CRG 3 жыл бұрын
@@KKAltair the more the merrier. If you ever need any help with testing on the real machines just shout. 500, 1200, 1200 030 and CD32 sitting here patiently waiting for KK Doom :)
@KKAltair
@KKAltair 3 жыл бұрын
@@CRG Unfortunately testing is the only thing I don't really need right now. :)
@jakobholgersson4400
@jakobholgersson4400 3 жыл бұрын
I'm not an Amiga guy, but this is impressive. Do you intend to make bespoke art assets to give this game more of an identity of its own, or is the focus more to make an homage game of sorts?
@KKAltair
@KKAltair 3 жыл бұрын
Ideally, I'd prefer having my own assets. And even better, if they were more in Heretic/Quake fantasy/Lovecraft setting. But I'm not good at art, so hopefully someone will show to help once the engine truly gets off.
@SomeOrangeCat
@SomeOrangeCat 3 жыл бұрын
Squeezing every inch you can out of this hardware is something a lot of younger gamers just aren't going to know how to appreciate.
@KKAltair
@KKAltair 3 жыл бұрын
Not really. This all is more like a careful choice of algorithms rather hardware squeezing. (as long as I don't have to count cycles and keep the perfect routine timing, I don't consider it squeezing)
@SomeOrangeCat
@SomeOrangeCat 3 жыл бұрын
@@KKAltair Fair enough.
@AaronEins3
@AaronEins3 3 жыл бұрын
Great video!
@KKAltair
@KKAltair 3 жыл бұрын
Glad you enjoyed it :)
@Jammet
@Jammet 3 жыл бұрын
Fantastic! Can't wait to see more!
@KKAltair
@KKAltair 3 жыл бұрын
Next time a bit sooner, hopefully. And mostly by a guest speaker. :)
@d_vibe-swe
@d_vibe-swe 3 жыл бұрын
I really love your job you're doing with this!
@KKAltair
@KKAltair 3 жыл бұрын
Thanks! :)
@bobankrsmanovic9398
@bobankrsmanovic9398 3 жыл бұрын
amazing as always :)
@KKAltair
@KKAltair 3 жыл бұрын
Thanks again!
@betterbeavailable
@betterbeavailable 3 жыл бұрын
Amazing work.
@KKAltair
@KKAltair 3 жыл бұрын
Thanks a lot!
@nikosidis
@nikosidis 3 жыл бұрын
Love it :) So great you got rid of the stripes on the weapons. Also cool to see other weapons that looks great. Any chance for a playable demo this year?
@KKAltair
@KKAltair 3 жыл бұрын
Definitely! And to speed things up, I'm seriously considering releasing the "shooting range" executable to have something earlier.
@nikosidis
@nikosidis 3 жыл бұрын
@@KKAltair Great :) Looking forward to that. I have the Furia card now so this will give the card something to do ;)
@0xABADCAFE
@0xABADCAFE 3 жыл бұрын
One thing that I especially like about this project is that it gives me hope that one day, when my kids are old enough to entertain themselves and I have some time to call my own, I can revisit my own old Amiga projects. One of which eas also a 2.5D game engine. Mine was intended for RTG though and more an experiment in how far 2.5D could be messed around with.
@KKAltair
@KKAltair 3 жыл бұрын
Well... my kid is definitely not old enough to entertain himself, but keeping his good sleep schedule helps. Slow progress is still the progress. :) Good luck! :)
@0xABADCAFE
@0xABADCAFE 3 жыл бұрын
My kids are at the most dependent age still. I'm not sure my Amigas will even work any more by the time I get to it.
@CaptainNow2
@CaptainNow2 3 жыл бұрын
Mindblowing!! Liked and subbed
@KKAltair
@KKAltair 3 жыл бұрын
Thanks for the sub! :)
@VincentRiviere
@VincentRiviere 3 жыл бұрын
Just... WOW
@KKAltair
@KKAltair 3 жыл бұрын
Thanks! :)
@per-olaeriksson2589
@per-olaeriksson2589 3 жыл бұрын
AMAZING !! WORK !
@KKAltair
@KKAltair 3 жыл бұрын
Thanks a lot! :)
@dvuemedia
@dvuemedia 3 жыл бұрын
Looks nice!
@KKAltair
@KKAltair 3 жыл бұрын
Thanks! :)
@nikosidis
@nikosidis 3 жыл бұрын
Been watching the video more closely and I don't know if I like the green, yellow hand? It kind of make me feel like an alien ;) It was better before even with the dithering if I had to choose.
@KKAltair
@KKAltair 3 жыл бұрын
The next episode will make this dilemma go away. ;)
@nikosidis
@nikosidis 3 жыл бұрын
@@KKAltair That is great to hear ❤️
@104d_3rr0r_vince
@104d_3rr0r_vince 3 жыл бұрын
Amazing!
@KKAltair
@KKAltair 3 жыл бұрын
Thank you! :)
@alien9737
@alien9737 3 жыл бұрын
Keep up the great work.
@KKAltair
@KKAltair 3 жыл бұрын
Thanks! :)
@Dr_Hingis
@Dr_Hingis 3 жыл бұрын
how well does this run on an a1200?
@KKAltair
@KKAltair 3 жыл бұрын
About 20-23 FPS.
@0xABADCAFE
@0xABADCAFE 3 жыл бұрын
Could I offer a simpler solution to the pistol and shotgun hand dithering problem? Make the character wear black gloves. I mean, a good pair of murder gloves is essential for the more sophisticated slayer. Your palette seems to have ample shades of grey to pull it off.
@KKAltair
@KKAltair 3 жыл бұрын
Nice idea. Yet, the next episode will offer a completely different solution.
@bluethunder8383
@bluethunder8383 3 жыл бұрын
Pretty awesome
@KKAltair
@KKAltair 3 жыл бұрын
Thank you!
@lecturesalternatives8421
@lecturesalternatives8421 3 жыл бұрын
Waiting impatiently for your next video. The explanation "the 3d engine always works on 2x2 pixel blocks which immediatly makes the rendering four times faster" was what I wanted to know. I hope there'll be a real game at the end of all this because otherwise it'll be very frustrating. :p Anyway, as the center of the screen is what is most important, couldn't it be in 1x1 pixel blocks ? Like, a small square of 80x60 pixels would be more precise and for exemple, the extreme borders of the screen would be 3x3 in order to balance and not lose fps ? I suppose it would be too visible and might be detrimental to the general feel, but I'd be curious to see it. Or maybe, the screen resolution cannot be split that way.
@KKAltair
@KKAltair 3 жыл бұрын
Splitting resolution would make tracing edges a lot more complex. And tracing edges is what currently is one of the most demanding parts already.
@lecturesalternatives8421
@lecturesalternatives8421 3 жыл бұрын
@@KKAltair Ok, thanks a lot for the answer.
@noice6421
@noice6421 3 жыл бұрын
imagine this game in 4k
@illegalquantity
@illegalquantity 3 жыл бұрын
Amazing job, but your voice almost made me sleep! You are definitely better than warm milk. ;)
@DjMetune
@DjMetune 3 жыл бұрын
Totally incredible!!! But would it be possible to use a 15 color hardware sprite for the hand? Or would that introduce also a slowdown, just as if using 32 color screen?
@KKAltair
@KKAltair 3 жыл бұрын
Possible, and it even helps with the performance a bit. But I don't want to spoil the next episode too much... ;)
@DjMetune
@DjMetune 3 жыл бұрын
You give me the impression that I'm on the right track there! 😀
@one_b
@one_b 3 жыл бұрын
Is not using a 32 color screen a speed issue or amount of chip ram issue on a stock A500?
@KKAltair
@KKAltair 3 жыл бұрын
5th bitplane does start to truly cut into CPU time, but more importantly, makes chunky-to-planar much more complex. Right now a logical pixel is made of two 16-color blocks. 4 bits each. So 8 bits per texel - a perfect byte. So after chunky frame is rendered, Blitter just has to shuffle 4 bit pairs around in two passes and that's all. Adding 5th bit would really complicate all the above.
@one_b
@one_b 3 жыл бұрын
@@KKAltair I must have missed somewhere in the videos that you are using a C2P routine so nice byte alignment makes sense. Thanks for the response.
@Borgan_Black
@Borgan_Black 3 жыл бұрын
Czemu by nie zrobić tak że w kolejnej kopiowaniej linii, pary subpikseli były by odwrócone kolejnością? Wtedy nie było by pionowych kresek. Czy dla tego że to za duże zadanie dla koprocesora?
@KKAltair
@KKAltair 3 жыл бұрын
One nie są kopiowane. Copper w locie przestawia adresowanie ekranu przez co każda linia jest wyświetlana dwa razy z tej samej pamięci. Można żrobić to kopiowaniem, ale to nieco kosztuje - zrobiłem to w Ep 06.
@0xABADCAFE
@0xABADCAFE 3 жыл бұрын
The screen space hitscan is an interesting idea. How do you identify which pixels belong to which damageable entity? Or is it more a test against the clipping rectangles they were drawn into? And is it really much faster than a ray plane intersection calculation for a handful of rays?
@KKAltair
@KKAltair 3 жыл бұрын
I just write per-column object number into the buffer during back-to-front rendering.
@0xABADCAFE
@0xABADCAFE 3 жыл бұрын
@@KKAltair Interesting! But where does that leave AI entities that shoot back?
@KKAltair
@KKAltair 3 жыл бұрын
@@0xABADCAFE Old fashioned BSP line hitscan. It is also used for AI visibility checks. So that's kind of mixed approach.
@0xABADCAFE
@0xABADCAFE 3 жыл бұрын
Since the players shot hitscan is calculated on the basis of the previous frame, how does that impact (pun not intended) the accuracy when the target is fast moving? For example in the current frame's timestep, the target object could have moved sufficiently far that it no longer overlaps with the previous frame position at the point of intersection. Is there a secondary test to see if the entity is still hit by the ray?
@KKAltair
@KKAltair 3 жыл бұрын
​@@0xABADCAFE There are no targets moving fast enough for it to get noticeable at that framerate. And I'm not sure even if modern games take this into account - e.g. if a game updates objects sequentially, during any hitscan test some objects will be after and some before the move. In any case, using previous frame for hitscans lowers the prediction you have to make to aim, which I expect only to improve the gameplay. But time will tell.
@sebastientoccupe5704
@sebastientoccupe5704 Жыл бұрын
I can't find the final video of this project. Did you eventually released it?
@UncleAwesomeRetro
@UncleAwesomeRetro 3 жыл бұрын
This is really amazing work :D Could I steel some seconds of your video? I wan't to start a new series called "retro computer news" to make a summery of whats going on in the computer world for people who don't follow everything closely. Also from what I understand, you are creating an engine that you will eventually release for everyone to use and create games? Will they need to pay a license? And will it be easy to make games based on this engine that will benefit faster Amigas?
@KKAltair
@KKAltair 3 жыл бұрын
Feel free to include some of it, just give a link to my channel as well. :) I hope to gather an open community of some sort around it, so I hope one day more than one game is made.
@UncleAwesomeRetro
@UncleAwesomeRetro 3 жыл бұрын
@@KKAltair Thanks :) I will link to your channel. Looking forward to seeing more :)
@KKAltair
@KKAltair 3 жыл бұрын
@@UncleAwesomeRetro Thanks and good luck! :)
@thedungeondelver
@thedungeondelver 3 жыл бұрын
Great stuff, of course. So, will this feature auto-targeting for enemies on different levels, as Doom does, or will you have mouselook, or neither?
@KKAltair
@KKAltair 3 жыл бұрын
Right now floors are all flat, but I'll be going for the auto-targetting option.
@thedungeondelver
@thedungeondelver 3 жыл бұрын
@@KKAltair Cool, cool. I hope you can suss out different floor heights. I have... _ideas_ ... I want to try out once you get this bad boy published :D
@intrepidis1
@intrepidis1 3 жыл бұрын
Is this using chunky to planar? Or is the CPU directly drawing each pixel to 5 separate bitplanes in memory? You mentioned elsewhere that each pixel is written with a single MOVE instruction, so I'm guessing C2P, but that would be very expensive?!?
@KKAltair
@KKAltair 3 жыл бұрын
I'm using C2P, but with special layout. All the processing it needs afterwards is two Blitter passes - which are done asynchronously driven by interrupts.
@intrepidis1
@intrepidis1 3 жыл бұрын
@@KKAltair Nice. Makes sense. Thanks for the info. 😀 Actually I'm just reminded of an old Amiga game called "Alien F1", where the developer claimed the texture mapping was all done in planar. Hmm, I'll have to try and find the source code and take a peek... 🤔
@KKAltair
@KKAltair 3 жыл бұрын
@@intrepidis1 Don't bother. The "New World Order" demo from TEK does texturing in planar, so I believe. :) 3bpp, but fullscreen 50fps.
@intrepidis1
@intrepidis1 3 жыл бұрын
I didn't find the source of Alien F1, but perhaps better, an interesting interview with the dev, Paolo Cattani. 😊 amigatronics.wordpress.com/2019/03/24/amigatronics-virtual-interview-with-paolo-cattani-the-alien-bonus/
@zeljkomatic
@zeljkomatic 3 жыл бұрын
Your engine is perfect for Wipeout2022 A500 clone. Can you make some fast tunnel with this code
@KKAltair
@KKAltair 3 жыл бұрын
Wipeout probably would also benefit from floor textures.
@romaneberle
@romaneberle 3 жыл бұрын
@@KKAltair ouhyeah, make a WipeOut 2097 clone (with nullmodem/tcpip multiplayer), that would be awesome!
@KKAltair
@KKAltair 3 жыл бұрын
@@romaneberle I was never a big fan of racing games. But technology is there and I'm all open to building a community, so maybe someone else will, one day. :)
@romaneberle
@romaneberle 3 жыл бұрын
@@KKAltair awesome. :-) in fact i'm working on one, but it's crap, no textures, still super slow... xD, nowhere near your awesome efforts. i'm a huge fan of VirtualGP, which has the best amiga 3d engine ever IMHO, i've been investigating a little, it uses some interesting techniques (e.g. 64 colors limit, 68020 bitfield instructions). anyway, awesome stuff, i'll have to watch your other videos, I bet I can learn something. ;-)
@KKAltair
@KKAltair 3 жыл бұрын
@@romaneberle Not much technical content in my videos so far, but I try to keep them coming. Good luck with your project! :)
@rootbeer666
@rootbeer666 3 жыл бұрын
Either your palette needs a skin tone or you need to repaint the hand entirely. There's no reason why your guy can't wear gloves. Solves your color problem.
@KKAltair
@KKAltair 3 жыл бұрын
My only problem considering the hand is to finish Episode 05 video. The issue itself is solved completely in the best way imaginable now. :)
@Corsa15DT
@Corsa15DT 3 жыл бұрын
Make a sample exe, run it on real Amiga 500. Just to make sure the UAE gives the right fps numbers
@KKAltair
@KKAltair 3 жыл бұрын
Already done several times!
@Corsa15DT
@Corsa15DT 3 жыл бұрын
@@KKAltair the result? do you have a video?
@KKAltair
@KKAltair 3 жыл бұрын
@@Corsa15DT Result is identical. I don't have video because I still haven't found a way to grab one.
@Corsa15DT
@Corsa15DT 3 жыл бұрын
@@KKAltair Great
@jorgefernandomirandamirand3297
@jorgefernandomirandamirand3297 3 жыл бұрын
I thought it was "FreeDooM"
Llegó al techo 😱
00:37
Juan De Dios Pantoja
Рет қаралды 58 МЛН
Finger Heart - Fancy Refill (Inside Out Animation)
00:30
FASH
Рет қаралды 28 МЛН
Dread Ep 09 - "Doom" clone for Amiga 500 - The Demo Map Release
15:56
Dragon's Lair II Time Warp, Commodore Amiga Intro.
0:52
Hache Beroldo
Рет қаралды 2,6 М.
Gotek Disk Drive Emulator Upgrades
26:27
Jan Beta
Рет қаралды 53 М.
Dread Ep 07 - "Doom" clone for Amiga 500 - Adding Sound FX...
27:08
Amiga games : AGA vs ECS OCS
11:06
Alex Harkonnen75
Рет қаралды 18 М.
Before I Slumber - PC 4k intro by KK/Altair  [4k reupload]
3:38
KK/Altair
Рет қаралды 1,3 М.
🤫Что скрывается за сюжетом Duck Season?
22:56