Тёмный

My Secret CGA 3D Graphics Project (2 Year Progression) 

PCRetroTech
Подписаться 7 тыс.
Просмотров 14 тыс.
50% 1

I show the CGA graphics project I've been working on in secret for almost two years. I try it out on some really cool hardware and then look at some early 3D demos and games.
A copy of the effect that runs on a normal CGA card can be found here:
github.com/wbhart/PCRetroProg...
It requires as much conventional memory as possible on a 640kb machine.

Наука

Опубликовано:

 

8 июл 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 107   
@RinoaL
@RinoaL 2 года назад
I really enjoyed this. I've been tinkering with something similar for late-90s PCs since they have so much processing power that they feel like an open playfield compared to 80s PCs.
@PCRetroTech
@PCRetroTech 2 года назад
It's amazing how fast things moved in that era isn't it.
@dolomighty74
@dolomighty74 Год назад
fun fact, actually some time ago i disassembled battlezone because it was fast and i wanted to know how they did, since transforming and drawing a similar static wireframe scene with fast inner loops didn't came out that fast. i discovered the wireframes in that game really are prerendered rotoscoped sprites, blitted in 3d projected spots. they did a really good job, since the illusion holds, thanks to the fast gameplay. also, it could have been even faster, if they employed compiled sprites
@PCRetroTech
@PCRetroTech Год назад
Oh that's very interesting. Of course it wasn't originally written for PC. I actually forget which machine it was written for, but I vaguely recall it was a vector machine. It's definitely a favourite game of mine.
@nickwallette6201
@nickwallette6201 2 года назад
You missed your era. :-) You coulda been one of those guys spending all summer programming demos. Man I miss summer vacation. If I had been a little older then, and knew where to find tech info, and maybe some .. uh ... “trial versions” of C and ASM compilers, I would’ve been a Sound Blaster hacker. I was always so fascinated by the audio engines in demos. I’m sure some day I’ll write the world’s worst DOS tracker just for the lols.
@PCRetroTech
@PCRetroTech 2 года назад
I hear you, especially with regard to summer holidays. I had access to a genuine copy of MASM at the time and a handful of books. But it was really hard to get decent info back then. I couldn't afford a modem so didn't get access to BBSs. By the time the internet came along it was pretty much too late as I had not so much spare time.
@OpenGL4ever
@OpenGL4ever 6 месяцев назад
@@PCRetroTech Obstacles were put in my way. To give an example. The public library had a few useful computer books in the adult section, but as a child I couldn't get access to them. Access was forbidden for children. In the children's section I found very few children's books with simple basic programs. I then bought a book for GW-Basic. I didn't get access to the adult section until much later.
@Scalibq
@Scalibq 2 года назад
Those early 90s PC demos are interesting in how they try to copy the Amiga aesthetic both in visuals and in sound.
@PCRetroTech
@PCRetroTech 2 года назад
I should get more familiar with the early Amiga demos. So many of those guys probably came to PC from Amiga. It must have been a weird time. It seems as soon as VGA got cheap demos popped up for it.
@Scalibq
@Scalibq 2 года назад
@@PCRetroTech Yea, it's the same for me. I grew up with a C64, which had a rich cracktro scene, and there were some early demos on it in the late 80s. My dad did get a PC in 1988 or so (a Commodore PC10-III Turbo XT), so we did have a PC in the house, but it never interested me much, as gaming with Hercules and PC speaker was nowhere near as good as on the C64 for most games. Friend of mine had an Amiga, so I saw the first 16-bit games and demos on that, and was really amazed. So I saved up to get an Amiga of my own, and we tried our hand at coding some games and demo stuff. But my dad did upgrade the PC from time to time, and I even got a Sound Blaster Pro for it. And I saw those early demos like that UltraForce one at an early stage. Spage Pigs and Sorcerers were also early PC demo groups that I remember from those days. Then Crystal Dream 2 and Second Reality pretty much put the PC on the map as a demo platform. So eventually I moved from coding on Amiga to PC myself. As you may know from the Crystal Dream end scroller, some of the Physical Crew/Triton guys came from Amiga as well. Wouldn't be surprised if the Space Pigs did as well (they had early MOD player routines). I think the Future Crew guys actually skipped the Amiga, and came straight from C64 to PC. But they have talked about how the Amiga demo Desert Dream by Kefrens was a huge influence on them. In fact, if you look at the source code, some of the effects actually reference Desert Dream. What was somewhat unique about Desert Dream at the time, was that it was very 'cinematic'. Most demos either had a single piece of music that just looped in the background, as they showed various effects, objects etc... or they would have different 'screens', where each screen would have its own music and show a particular combination of effects, and then you'd go back to a loader screen, and then the next screen would show (Space Pigs mEGAdemo copied this particular style). But Desert Dream had a soundtrack that matched the different scenes, and there was synchronization and direction between what you saw on the screen and what you were hearing. It was like watching a movie. It would flow from one effect to the other seamlessly, both visually and musically. Second Reality does that exact same thing.
@PCRetroTech
@PCRetroTech 2 года назад
Yeah I have heard that the flow of Second Reality was one of the things that really made that demo so famous. I would agree that there is a very different quality to PC demos from some point on. I actually prefer SpacePigs later demo (the one I showed in this video) than their earlier Megademo. I know it is different for other people, but I'm more graphically inclined than musical so that's probably why.
@Scalibq
@Scalibq 2 года назад
@@PCRetroTech Yea, is that from the Vicky demo? I know the Triton guys referenced the Space Pigs somewhere in their scroll text I believe. As you may know from my older blogs on polygon rasterization, you can do really fast polygon filling with EGA's bitmapped mode if you set everything up the right way. I took those ideas from studying the Triton stuff and the F29 Retaliator game, which have the fastest 3D routines I had ever seen. From the reference in the scroll text (or perhaps an nfo file?), I discovered that Vicky demo, which also uses that really fast EGA polygon filling, and it predates the Triton and Physical Crew stuff. So perhaps the Space Pigs figured it out first, and the Triton guys got it from them.
@drzeissler
@drzeissler 2 года назад
@@PCRetroTech there are lot's of excellent amiga demos that blew 386/486 with vga out of the water ;)
@ultrametric9317
@ultrametric9317 Год назад
This reminds me of learning to do register-level programming of VGA back in the WAY day. Pain and suffering but also a warm feeling when it worked.
@PCRetroTech
@PCRetroTech Год назад
Yep, that's it exactly.
@Shmbler
@Shmbler 2 года назад
Thats an extremely interesting topic. I really respect those game devs for accepting the challenge to create 3D graphics on a platform with such limited resources. Your video makes me remember how absolutely revolutionary games like Elite and Frontier on the A500 were back then.
@PCRetroTech
@PCRetroTech 2 года назад
They certainly were.
@IExSet
@IExSet 2 года назад
Cool. My HP 200LX computers has CGA graphics. MANY thanks for sources !!!!
@chuizune
@chuizune 2 года назад
That's very impressive! Crazy how far computer graphics have come. Cheers
@PCRetroTech
@PCRetroTech 2 года назад
Thanks!
@SquirrelMonkeyCom
@SquirrelMonkeyCom 2 года назад
Amazing! Subbed!
@daghtus
@daghtus 2 года назад
This reminds me of the many hours I spent playing LHX Attack Chopper as a kid on my 386SX running at 16 MHz.
@PCRetroTech
@PCRetroTech 2 года назад
Yeah that is a very nice game, that's for sure.
@sparcie
@sparcie 2 года назад
Nice video, I'll be interested to see more of your project! It's amazing what can be done with very little resources.
@PCRetroTech
@PCRetroTech 2 года назад
Thanks!
@pragensakya5238
@pragensakya5238 2 года назад
Ookokño
@damianh760
@damianh760 2 года назад
Wow! I remember messing around with stuff like this on the school macs back in the early 2000s! It specifically reminds of this one 3d movie game where you could move animated objects around a 3d scene, as well as have complete control of the camera in 3d space. I can't seem to find it anywhere, sadly. Many a fond memory of rigging low-poly sharks, ah those were the days
@PCRetroTech
@PCRetroTech 2 года назад
That is not a game I've heard of. Was that on the Mac or the PC though? My knowledge of Macs could be written on a postage stamp. If it was PC, there are definitely people here who could identify the game if they were given a good enough description of it.
@damianh760
@damianh760 2 года назад
@@PCRetroTech it was for the iMac g3, and as far as I know, was distributed to primary schools around my area in Australia around that time (2000-2010) along with Kid Pix and a couple other educational programs
@damianh760
@damianh760 2 года назад
@@PCRetroTech although my memory could be faulty about the platform. The school had a couple student PC'S, but they were mostly all iMac g3's
@damianh760
@damianh760 2 года назад
@@PCRetroTech another thing I can say for certain is that it definitely was not 3d Movie Maker. The ui was very different, and it was much more simplistic texture-wise. However, the models were all still riggable
@OpenGL4ever
@OpenGL4ever 6 месяцев назад
@@damianh760 Was it Stunt Island (1992)? This was a DOS game and had simple 3d graphics with gouraud shading. A much later game than this and 3d Movie Maker was the game "The Movies" (2006). The latter was also released for Mac.
@drzeissler
@drzeissler 2 года назад
Interesting stuff! thx I also love those demos and try to tun your code on my euro-pc :)
@PCRetroTech
@PCRetroTech 2 года назад
Please do!
@DavstrWrexham
@DavstrWrexham 2 года назад
Very nice. It be interesting to see it in Tandy Graphics as well.
@PCRetroTech
@PCRetroTech 2 года назад
Definitely!
@hotmultimedia
@hotmultimedia 2 года назад
yup nice stuff. I suppose amiga was quite a bit more able in visuals and audio (lots of late amiga games in 1993 are still compatible with the original chipset from 1985!), but after amiga failed to evolve (thanks to commodore's mismanagement) and ibm pc-compatibles got faster CPUs and VGA graphics, people started to do demos there. Especially chunky pixel modes of VGA were super important for fast texture mapped 3d graphics. Demos of course looked very much like amiga demos because that was the style back then.
@PCRetroTech
@PCRetroTech 2 года назад
In the end, Commodore started making PC's. By then the damage was already done. The PC had already won.
@OpenGL4ever
@OpenGL4ever 6 месяцев назад
Well, I think Commodore simply had no chance with their Amiga against the very cheap PC compatible ones. Not even IBM managed to assert itself in this sector and the larger Amiga models, which had more CPU power than the Amiga 500, were too expensive to counter this competition. The rest was decided by the number of units sold and Intel's ability to make the CPUs faster and faster while prices dropped rapidly at the same time. Motorola later tried with IBM and Apple to place the PowerPC architecture against the x86 architecture and failed miserably because they simply could no longer win the megahertz race against Intel and AMD.
@gnuemacs1166
@gnuemacs1166 Год назад
Very cool
@chetana9802
@chetana9802 Год назад
it is epic!
@carlc.4714
@carlc.4714 2 года назад
Now I am intrigued by the idea of a CGA 3d shooter. 😂
@PCRetroTech
@PCRetroTech 2 года назад
That would be interesting for sure. I wonder if someone will release one some time. I did see something like that on the VCFED forum about a year or so ago. I can't recall the name though.
@viti95
@viti95 2 года назад
@@PCRetroTech FastDoom supports rendering in multiple CGA modes. For me the best one is the 160x100 16 color mode, it's very fast. ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-_6Jft32G3ls.html
@Thomsonicus
@Thomsonicus Год назад
Nice
@jgordon165
@jgordon165 Год назад
Makes me wonder how expansive the demo scene would be with the Xt versus the Amiga or commodore 64
@PCRetroTech
@PCRetroTech Год назад
It's hard to say. Some things are definitely harder, which would narrow the range of interest in writing demos.
@Androx74
@Androx74 2 года назад
nice video, i don't know the exact period, but there is a game that is called simcopter that was very nice for the time :)
@PCRetroTech
@PCRetroTech 2 года назад
That one is a little late for us. 1996, but nice game.
@rasz
@rasz 10 месяцев назад
There is a new (2023) C64 centric "BRR Lines A new line drawing method for the cycle savvy" article about extremely optimized "bit reverse rendered" line drawing method you might find interesting.
@PCRetroTech
@PCRetroTech 10 месяцев назад
Yes, I saw that. These demoscene methods are usually not pixel perfect, but have other advantages, depending on the application.
@TheTarasque
@TheTarasque 2 года назад
This is very impressive, talent and persistence on the project really paid off, do you think this can end up in a game somehow ?
@PCRetroTech
@PCRetroTech 2 года назад
Thanks. That is certainly possible, but I've no specific plans for it at present.
@OpenGL4ever
@OpenGL4ever 6 месяцев назад
@@PCRetroTech You could write a nice graphic DEMO.
@darak2
@darak2 2 года назад
That Triclops Invasion game seems to be relying on a present ANSI.SYS, as it is throwing ANSI escape sequences to the screen. What a weird thing to do for a game.
@PCRetroTech
@PCRetroTech 2 года назад
Yes I noticed that. I have no idea why it wanted to do that. Very weird for a graphical game.
@JimLeonard
@JimLeonard 2 года назад
It was written in C for multiple platforms and also very early in the system's life when people were coming from trying to do things generically (ie. write code once, compile for multiple environments). While it's rare to see a game doing that, it's not unheard of. (Hack requires ANSI, for example.)
@PCRetroTech
@PCRetroTech 2 года назад
Ah, that explains it.
@darak2
@darak2 2 года назад
@@JimLeonard It's of course reasonable for a text game, and I think a number of text adventures also required ANSI. For a graphics program which needs to implement its own non-portable graphic routines anyway, it's just weird.
@JimLeonard
@JimLeonard 2 года назад
@@darak2 I've seen a few programs that expect ANSI to work in graphics mode. ANSI actually does work in graphics mode depending on which one you load.
@antialias21
@antialias21 2 года назад
Very cool effect! Any chance of a public demo release at some point? Even as a short runnable animation, would love to try this out on my IBM 5140 portable.
@PCRetroTech
@PCRetroTech 2 года назад
I've put a binary up on my GitHub and I've put a link in the description. I can't release the source code just yet, but will do so one day. This version should work on a normal CGA card. You don't require the special card I used for the "improper" mode. It needs a lot of memory. Let me know if it works on your machine.
@antialias21
@antialias21 2 года назад
@@PCRetroTech I downloaded it and works great on the internal LCD which is a half-height mono screen so a little ghosty there with the low screen refresh. Then I attached the external CGA adapter which includes a composite color output, ran great on a color CRT via composite as well. Super smooth, impressive work! I'll have to run it as a batch file loop at the next retro meetup I take the 5140 to. For reference, my machine is upgraded to 640kb.
@PCRetroTech
@PCRetroTech 2 года назад
@@antialias21 Great, I'm glad it worked for you and that it will get some exposure at a meetup.
@OpenGL4ever
@OpenGL4ever 6 месяцев назад
@@PCRetroTech I tried it in DOSBox. It still runs very fast at 192 cycles. As a suggestion for improvement, I would suggest adding the option to quit it early with the ESC key. That would certainly make testing on a real computer easier. In the DOSBox you can of course also simply close the DOSBox window.
@GeorgesChannel
@GeorgesChannel 2 года назад
Very Impressive video, since i am also very interested in the history of 3D games since the 8bit era.Well done! Where is that list of 3D DOS PC Games? I am also compiling a list of 3d games for the Atari ST for a while..
@PCRetroTech
@PCRetroTech 2 года назад
The list isn't public at the moment. But it might become public eventually.
@GeorgesChannel
@GeorgesChannel 2 года назад
@@PCRetroTech Would be very intersting for me to share what you have so far on a website. I am really interested in this topic
@PCRetroTech
@PCRetroTech 2 года назад
@@GeorgesChannel I'll do a writeup eventually, but unfortunately won't have time this year.
@Pickle136
@Pickle136 2 года назад
neat to see you push the hardware. what if you differ the shading (appears what c64 was doing) for more colors? can you change the rotation (feels like it needs more on the Y axis)?
@PCRetroTech
@PCRetroTech 2 года назад
Yes I can change the rotation. I haven't tried playing with the shading. That might be especially interesting in the improper mode.
@alanahwright4497
@alanahwright4497 2 года назад
YUP, it's funny that Jessica also started commenting on random videos as wellm and now she's raking $650 per week, lol kinda makes me mad since I was the one who told her about Tanashie McStack's website and she's making more than me!
@AllGamingStarred
@AllGamingStarred Год назад
how are you doing this exactly?
@SolarLantern424
@SolarLantern424 Год назад
How about the 640x200 mode. I was always disappointed that people did so little with it especially as the 4 colour modes looked so awful. I thought they should look at what the zx spectrum can do in monochrome such as the isometric 3d games or even some scrolling space shooting games. The graphics on the PC always seemed really poor compared to the spectrum even with the increased resolution. I thought if they used 640x200 mode it would at least be a step in he right direction. It seemed they could do so little years later. Those CGA palettes were truly awful why did anyone ever think anyone wanted to see anything in them.
@PCRetroTech
@PCRetroTech Год назад
I think whether you like monochrome or not depends a lot on whether you had black and white TV and whether you used a monochrome monitor as a kid. I had a 16 colour monitor fairly early in my teens and colour TV, so I just don't find single colour images appealing to look at. But obviously it is just a personal preference.
@SolarLantern424
@SolarLantern424 Год назад
@@PCRetroTech Thanks for the reply! No I definitely meant monochrome and not black and white. I never had a monochrome monitor or even a black and white TV. I did use a zx spectrum (named after its colours) which did 16 colours in a strange but efficient way but even cga 640x200 mode could do a variety of colours but only 2 at a time and i don't think they made the most of that and I would have even preferred the 16 colour low res cga mode over the awful cga colour palette in 4 colour mode. I think it was because by that point I was used to more colours and better graphics than anything anyone on the PC was actually doing. It was kind of disappointing,
@PCRetroTech
@PCRetroTech Год назад
@@SolarLantern424 Yes, I can understand that. Your experience probably still shaped your opinion on it of course. Although my Amstrad could do 16 colours in a special CGA mode it wasn't widely used, so I still played a lot of games in the 4 colour CGA modes. So in some sense that is what I was used to and therefore enjoyed it. Perhaps if there had been more games in monochrome (or one colour plus a background colour) then I would be more inclined toward it.
@Badspot
@Badspot 2 года назад
Have you seen the 8088 MPH demo?
@PCRetroTech
@PCRetroTech 2 года назад
Yes, certainly. I've even made videos about it.
@danielberrett2179
@danielberrett2179 Год назад
Anybody know of Impressive demoscene "Demos" that eventually became commercial or Relatively Recent Indie/homebrew playable games?
@PCRetroTech
@PCRetroTech Год назад
Do you want to know about just demos that became games (for the PC), or also about recent Indie games that have nothing to do with demos per se?
@danielberrett2179
@danielberrett2179 Год назад
@@PCRetroTech Yeah Impressive "demos" that became games
@JimLeonard
@JimLeonard Год назад
There are no demos that I know of that directly became games... but that doesn't mean they led nowhere. The european games industry is full of companies that started life as demogroups: Dice (Silents), Remedy (some Future Crew members), Starbreeze (Triton), etc. So while no specific demo was turned into a game, the skills they honed making demos did later go into game development.
@stevesmusic1862
@stevesmusic1862 2 года назад
Nice :) Did you ever check out Stellar 7?
@PCRetroTech
@PCRetroTech 2 года назад
I've looked at a video so far. It's definitely on our list.
@stevesmusic1862
@stevesmusic1862 2 года назад
@@PCRetroTech It was a game I played lots of as a teen
@g412bb
@g412bb 2 года назад
Bolls :)
@nednettapp
@nednettapp 2 года назад
What is the brand of CGA card that supports "Improper Mode"?
@PCRetroTech
@PCRetroTech 2 года назад
It's a Multitech CGA-PC. Not all Multitech cards support it though. I have found other Japanese cards that support it, but they have snow in that mode.
@nednettapp
@nednettapp 2 года назад
@@PCRetroTech Shouldn't you be in bed right now ;-)
@jinchoung
@jinchoung 2 года назад
really nice work! although it might be too much of a hamstring to stick to the original pc. i think pc xt is a good "origin" point. although that might just be because i started wtih an xt .... : )
@SquirrelMonkeyCom
@SquirrelMonkeyCom 2 года назад
You don't have a German accent. I thought you were British or Australian.
@PCRetroTech
@PCRetroTech 2 года назад
Yes I'm originally from Australia.
@ropersonline
@ropersonline 2 года назад
13:59: I have an idea on how you might be able to bring something like that to stock. I might share it via email if allowed. I still haven't managed to try it myself, but I think it possibly could work, albeit at a cost.
@PCRetroTech
@PCRetroTech 2 года назад
I don't understand what you mean by "bring it to stock" or why that would be an interesting thing. I certainly don't wish to modify it.
@ropersonline
@ropersonline 2 года назад
@@PCRetroTech Stock CGA.
@PCRetroTech
@PCRetroTech 2 года назад
I still don't know what you mean. This is a CGA card and as far as I'm aware it is stock. Do you mean turn it into an IBM CGA card? I really don't wish to do that. This has static RAM chips to avoid snow for one thing.
@ropersonline
@ropersonline 2 года назад
@@PCRetroTech By stock CGA I mean IBM CGA. I mean make something very close to this kind of "improper" mode and effect actually work on an original IBM CGA.
@PCRetroTech
@PCRetroTech 2 года назад
@@ropersonline Oh, by "bring that to stock" I thought you meant make the card at 13:59 a stock card. I definitely don't want to modify any IBM graphics cards. They are as rare as hen's teeth and very valuable. It doesn't make sense to modify an original card when cards exist which just do that mode (admittedly 2 of the 3 I have found so far have snow).
@axederby
@axederby Год назад
Yeeaaah... CGA... liar
Далее
Exploring the features of the Voodoo Graphics Chipset
32:23
ШОКОЛАДКА МИСТЕРА БИСТА
00:44
Просмотров 390 тыс.
XGA : King of IBM Graphics Standards (Part 1)
40:55
Просмотров 15 тыс.
CGA Graphics - Not as bad as you thought!
11:27
Просмотров 2,3 млн
The Original Sound Blaster : A Retrospective
21:35
Просмотров 10 тыс.
VGA Mode X and how it helps games
32:43
Просмотров 10 тыс.
A Rare Paradise Pre-EGA Graphics Card that Plays Doom
36:13
I Bought a $5000 PC in a Random Asian Tech Mall
22:12
Здесь упор в процессор
18:02
Просмотров 75 тыс.