Chapter 65: Jester's Scroll Algorithm
After the two chatted over, Mark Saini, who was too sleepy, yawned and went to sleep in the lounge.
Jester sat down in the same chair that Mark Seni had been sitting in before, looking at the computer and pondering.
He could do it on a PC, he had seen the algorithm of the Carmack Scroll before he was reborn, and it was a very ingenious way to animate the reels like an arcade machine on a PC that was not suitable for making games at the time, but it was ......
Jester thought of something that made him hesitate a little.
As we all know, PC games were born very early, but it was only after the birth of the Carmack Scrolling algorithm that PC games really began to be accepted and compared in terms of quality with those exquisite home consoles or arcade games.
This is one of the two milestones in the history of personal computers, and has been used countless times in countless games, whether it is personal computers, arcades or home consoles.
Moreover, both of these milestones are related to Carmack, one is his reeling algorithm, and the other is the world's first real 3D engine he has completed.
His initiative allowed gamers to accomplish their previously dreamed but helpless ideas on the PC, the first game on the PC that was not inferior to the home console in any respect, thanks to the birth of the Carmack Scroll, which is also the ancestor of the action-adventure genre, Prince of Persia.
When later generations read Carmack's biography, Jester admired Carmack the most, that is, he was a real programmer.
The programmer here is not just a coder who can code code, but a programmer who has infinite creative power, imagination, and can complete these into incredible programs, but does not regard these programs as his own forbidden ones in the slightest.
Yes, Carmack is a staunch open-sourcer, and every program he makes is patent-free, and open-sourced to allow anyone to use it, most famously, Valve's Half-Life is an engine written by Carmack for Mjolnir, and there is no need to pay a license fee.
This is because after watching the demonstration of "Thor's Hammer", G Fat, who was full of confidence at the time, found that they couldn't make a 3D engine that could complete this effect anyway, and it happened that a friend of G Fat was the younger brother of Carmack in ID, so he got Thor's engine from ID smoothly.
In this way, the FPS came out with the most landmark work after Quake.
There's even a story about Carmack Scrolls about his attitude towards the program open source.
Carmack was working for a game magazine at the time, and he completed the reel effect and perfectly copied the first level of Super Mario into a computer with the help of a fellow artist.
Then, his boss saw the game effect demonstrated by Carmack and just said this casually.
"Oh! You should go and apply for a patent. ”
Unexpectedly, Carmack immediately got up from his seat, pointed his finger at his boss's nose, and then yelled incessantly, "what a patent!" If you dare to mention any more patents to me, I will leave immediately! ”
It didn't take long for Carmack, at the instigation of John Romero, to resign.
So, for a genius like Carmack, Jester wants to use it, but he doesn't want to use it, and he can do a lot of things that other programmers can't even think of, the problem is that his particular belief in open source programs is unbearable for any game company boss.
Can you tolerate the game engine that your company has managed to develop be open sourced and used by everyone for free?
If Jester were a game enthusiast or an indie game maker, he would have regarded Carmack with this spirit as a god, but he wasn't, even though he was.
So, every time Jester gives Carmack a task that is creative and unique, but doesn't require any advanced programming skills, and he applies for a patent for each game design solution, and keeps his correspondence with Carmack, just to prove in the future that the copyright of these games belongs to him, and Carmack is just a coder he hired to help him complete these ideas.
Jester just sat in front of the computer, looking at the glowing computer screen, worried about the impact on the gaming industry if he did make his first scrolling game on the PC.
Under the influence of the Atari shock, the most damaged is the home game console market, which has basically been completely destroyed, and the arcade machine has been slightly less affected, and now with Jester's efforts, it has begun to gradually recover, but the least affected, or rather, basically did not receive any impact, or the personal computer game industry, unlike Japanese designers, the countless European and American designers that Jester knew in his mind in later generations were honed out of making zuò games on personal computers in this era.
If you really launched a reeling game a few years in advance, will it affect your plans to launch a home console in the future?
After thinking for a moment, Jester's face suddenly appeared with a mocking smile, as if he was laughing at himself.
"I'm a little worried." Jester muttered, he was indeed a little unfounded, in his later life, when the quality of computer games could be compared with console games, and even the function of PC was stronger than that of consoles, it was difficult for the PC version of the same all-platform game to sell one-tenth of the console version, or even one-tenth of it, let alone now.
You must know that in the future, the share of PCs will be dozens of times that of game consoles.
Thinking of this, Jester's decision was made, after all, ATI is also his industry, and being able to let ATI dominate the market in advance will only benefit him and not harm.
However, Jester is not a utopian programmer like Carmack, he is the owner of a game company, and naturally, his scrolling effect is naturally impossible to be used by people for free after being open sourced, and it is inevitable to apply for a patent.
After thinking about this, Jester was also a little tired after a day's drive, and his own lounge was occupied by Mark Seni, so he had to lie down on the sofa in Mark Saini's office and barely sleep.
The next day.
Jester called Mark Saini into the office along with two of the programmers on his R&D team who had been working with him on how to do the scrolling effect on a PC the other day.
"How did you come up with the scroll effect?" Before officially explaining the Carmack scroll algorithm, Jester asked several people about it.
Mark Saini said simply: "At the beginning, we wanted to replicate the methods we had already done in the arcade directly on the PC, whether it was to draw images directly on the screen or to get more memory to get a performance boost, but it was not realistic, because the PC is too slow, although it uses a 16-bit CPU, but the PC is different from the base board of the arcade, its CPU cannot only be responsible for the calculation of our program, it has to deal with a lot of things." ”
"Later we found out that it was impossible to do the same thing on a PC as it did on an arcade machine in the current situation, unless we were using a 32-bit CPU and some other memory and video memory that went with it, so I gave up on Laris and I, except for the director." This time it was a programmer named Brian, who and the bearded programmer named Laris, who was the main programmer in Mark Seni's group, and the Avengers scroll effect was overcome.
At this time, Mark Seni spoke out with an emphasis, he spread his hands, and his tone was a little frustrated: "I have to say, I haven't achieved much in the past two days, so after you came back last night, I was going to give up this plan." ”
"Huh."
Jester chuckled when he heard this.
He prepared the wording slightly in his heart, and then said, "Don't give up in a hurry, let's talk about how we complete the scrolling effect in the arcade, I have seen the engine package you made before, and I also know a little bit of your thinking in general, it seems that you do this, when you control the movement of the character, if the character moves far enough, far beyond the screen, in order to make the background move with the player, you use the most direct way, This is to let the CPU redraw the entire pixel that makes up the picture. ”
Mark Seni nodded, they did exactly what they did in "The Avengers".
Jester saw that they all nodded in agreement, and continued.
"However, because of the amount of computation required for this, in order to make the movements of the characters not appear unsmooth in this calculation of constantly redrawing pixels, you have also come up with a few very ingenious algorithms for this, but this is not the focus of our discussion this time, so I will not talk about it, just talk about the redrawing of the scroll."
As he spoke, Jester's tone became modest.
"Your programming skills are above me, and it stands to reason that I really can't do anything in front of you, but I stumbled upon an idea when I was sitting in front of the computer last night, so listen to it first."
Marc Seni couldn't help but laugh out loud when he heard Jester's modest words.
"I was like, what do we want? ――We want the image to move smoothly as the player moves through the game. Jester continued.
The three of them weren't impatient with Jester talking about rotten street stuff, they had all seen the whimsy of their boss when designing games, and sometimes designing a great program might just be missing a whimsy.
Jester spoke quickly, but his words were still clear.
"I remembered a previous approach when I was designing an RPG game on my computer, where when the player controls the character and walks to the edge of the dungeon on the screen, I would make a big adjustment to the background, which is a very common technique, and what I'm doing now is not a pixel based roll, but a pixel-based roll, even if the player only moves a little bit, the background has to be adjusted. But here's the problem, I thought the same thing you thought at first, but after I watched the program of this scrolling animation by Mark Saini, I realized that this path is not going to work. ”
Then, Jester saw that the faces of the three of them were becoming more serious, and the smile on his face was getting thicker, so + continued, "So, I changed my mindset - why should I let the computer redraw the whole picture? Every time the player's character moves, although the background changes, it is not the whole background that changes, but only a small amount of the background. ”
At this point, the smile on Jester's face disappeared and he became serious, and he was about to get to the heart of the Carmack.
"So what if you don't redraw the entire screen every time, but only the parts that have really changed?"
As soon as Jester said this, Mark Saini's eyes lit up, they already knew Jester's thoughts, and the three of them were also very talented programmers, and they came up with the answer to Jester's question almost instantly.
What will happen?
Of course, there is no doubt that the amount of CPU computation will be only a fraction of the previous one, or even a tenth, and the reeling effect will be much faster, to be precise, much faster.
Although they hadn't really verified it with a program, all three of them, with their own sensitivity to code, knew that Jester's method might really be able to do something on a personal computer that could only be done in arcades before, with a reeling animation effect.
That's a great idea.
This was the only thought in the minds of the three of Mark Seni at this time.
PS: Ask for a recommendation ticket!!