Jump to content

Photo

An interview with Dr. Typo


10 replies to this topic

#1 JagChris OFFLINE  

JagChris

    River Patroller

  • 2,438 posts
  • Location:Oregon

Posted Sat Feb 4, 2012 10:42 AM

What is your programming history and experience? What system did you learn C on?

I started programming in STOS Basic on an Atari 1040STF in 1990. I learned C in engineer school in 1997. We worked on Pentiums but they still had 16-bit Turbo C compiler installed on them. So we still had to manage memory in 64KB chunks. We eventually told the teachers that there were free 32 bits compilers around (djgpp) so we moved on to them.


I understand you learned assembly on a Falcon? Can you elaborate? What sort of things have you made on the Falcon?

I bought a Falcon in march 1993 and started learning assembly a few months later. I made a few typical demo effect, like rotozoom, mode7 then I started a DSP 3D engine. I tried to make a 3D game which should have been vaguely similar to Cybermorph but eventually gave up. It's really hard to make a 3D game entirely in assembly and I lacked experience in development.
What is left now is a buggy interactive demo, with tons of clipping bugs. It's a bit slow on a stock Falcon (8-10 fps). With a CT1e2 it's almost smooth (~14-16fps).


What is your favorite genre/type of game?

My favorite type of game is modern first-person shooter. I really liked the Half-Life 2 series and is waiting for episode 3! I also like Crysis 2, Just Cause 2 and Portal 2. OK, JC2 and Portal 2 are not fps but I love them. For me, Portal 2 is possibly the game of the decade. Yeah there is still 9 years to go but it set the bar really high.


With the tools and development setups available now from folks like Belboz and Jagware etc, what do you think is the level of ease of getting into Jag development?

I got started with the jag dev tools on Michael Hill's website: http://www.hillsoftw...om/?page_id=11. I also gathered various tools and documentation from Jagware and other websites.
I started on Virtual Jaguar and I'm still using it alongside the real hardware. With all theses tools and documentation I think it's rather easy to get into Jaguar development.
The Jaguar has a reputation of being of very difficult system to program for. It's not entirely true. The audio side is rather difficult: if you want to make the Jaguar produce a sound, you've to program the RISC DSP and manage its interruptions. Thank LinkoVitch for taking care of this part! A sound engine that runs entirely in the DSP and minimizes bus access is a very valuable thing. For a simple 2D game, I'd say it's rather easy to program. The object processor is taking care of everything. Managing the object list may be a bit difficult for a total newbie in assembly but it's still much easier than writing your own sprite and scroll routines.
I think doing a 2D game on a ST would be more difficult, even on the STe with its blitter and hardware scrolling. And you'd have to deal with the dreadful bit-planes based video memory. I never programed low level stuf on a ST because even basic graphic operations is difficult. The real difficulty with the Jaguar is using its full power. You've to be clever with the OP, the GPU, the Blitter and work around the hardware bugs. I'm not there yet.


So if I read that right you are saying in your opinion it is easier to do 'Shoot Em Up' on the Jaguar than it would be on the ST?

Yes, I think it is easier to do 'Shoot Em Up' on a Jaguar than on a ST, except for the sound engine.
It's most likely more difficult to write your own sound engine for a Jaguar than for any ST. You need to get into the DSP RISC and its interruptions even to play a single sample.
I avoided this issue by using LinkoVitch's sound engine.



What are your long term desires for Jaguar development? More 2-D Shooters? We need more space shooters like that. Any plans for a shooter like Captain Carnage? How about an overhead view game like Captain Carnage that's an adventure rather than shoot em up. Solve problem type things like Zelda or Jurassic Park SNES.

My long term plans? Ah, it's a secret! Well I plan to use more of the Jaguar power. I most likely won't do another 2D shooter.
I won't do an adventure game, that's to much work. Maybe a puzzle game? Anyway I don't plan to do fully polished games. Design bores me. I'll releases the source code to let others do the polishing if they want to.


Do you have any interest in 3-D development? Perhaps something along the lines of Doom using bitmaps?

I don't plan to do polygonal 3D. Partly because the Jaguar doesn't seem to be at its best with this kind of routine, also partly because I did this kind of stuff on the Falcon then on the PC, so I want to do other things now. I may do "2.5D" stuff but not of the complexity of Doom. Maybe a Wolf3D-like ?


What genre of game would you like to see done or done more of on the Jaguar?

I'd like to see a zoomed-sprite based racing game, like Super Burn Out. I may try to do one some day. But it's not in my near term or medium term plans.


Game design bores you but you seem to have an interest/aptitude in tool functionality. Is fixing the bugs in the tools just something to get out of the way whatever you need out of the way or could you possibly see this as something you could develop more interest in?

Fixing bugs in tools is just something I make when I encounter an annoying bug. This was the case with SLN.
I also make tools for very specific tasks. But it is not something I want to invest lots of time into.


Will you always be a one man show or will you in the future perhaps take on another like minded team member(s)? Say a programmer or graphic artist? Someone perhaps to do the polish you say bores you?

It's most likely going to stay a one man show. I want to keep total freedom over my personnal projects.


Are there any games on the Jaguar, as a programmer that when you play them you go 'WOW i'd like to learn to do that on the Jaguar.'

I don't play many games on the Jaguar. From what I've seen (mostly on YouTube videos) the most impressive games are Super Burn out and Phase Zero.
For Super Burn out it's about the amount of zoomed sprites and the very high framerate. I think it really pushes the object processor.

Phase Zero is incredible. It's the only game that exceeds my expectations from the Jaguar.
Too bad it was never finished...


Are there any games or genre's that came out back in the early 90s that weren't on the Jaguar that you thought maybe the Jaguar could of done really well? For myself personally I always thought Bethesda's 'Daggerfall' game would of made an excellent transition to the Jaguar.

I think there are a few famous PC games that the Jaguar could have done well: Wing Commander 1 & 2, Comanche, and possibly Strike Commander. The Jaguar also deserved a good clone of Virtual Racing.


Thank you for your time Dr. Typo.

#2 sh3-rg OFFLINE  

sh3-rg

    River Patroller

  • 2,106 posts
  • absent
  • Location:elsewhere

Posted Mon Feb 6, 2012 3:56 AM

Chris, I saw your post on js2 where you posted a screen shot of the counter on this thread. The counters are not always reliable, don't take it that nobody even clicked on this link and nobody finds it interesting - how did 4 people [like] it if nobody read it? ;-)

EDIT: there you go, as soon as I replied, the read counter went up to 192... might be a bug in the forum software.

#3 Christos OFFLINE  

Christos

    Dragonstomper

  • 785 posts
  • Location:Thessaloniki, Greece

Posted Mon Feb 6, 2012 4:51 AM

Chris, I saw your post on js2 where you posted a screen shot of the counter on this thread. The counters are not always reliable, don't take it that nobody even clicked on this link and nobody finds it interesting - how did 4 people [like] it if nobody read it? ;-)

EDIT: there you go, as soon as I replied, the read counter went up to 192... might be a bug in the forum software.


Nah, you just hit refresh 191 times and you know it! :P

#4 Jag_Slave OFFLINE  

Jag_Slave

    Dragonstomper

  • 502 posts

Posted Mon Feb 6, 2012 6:22 AM

well theres good proof chris! Put ours up too!

#5 Jag_Slave OFFLINE  

Jag_Slave

    Dragonstomper

  • 502 posts

Posted Thu Feb 9, 2012 4:53 PM

Chris... come on man- do it for us? Just try man

#6 JagChris OFFLINE  

JagChris

    River Patroller

  • Topic Starter
  • 2,438 posts
  • Location:Oregon

Posted Fri Feb 10, 2012 8:24 PM

Yeah I'll post it. I havent been online for a few days.

#7 JagChris OFFLINE  

JagChris

    River Patroller

  • Topic Starter
  • 2,438 posts
  • Location:Oregon

Posted Mon Mar 5, 2012 2:17 PM

Chris, I saw your post on js2 where you posted a screen shot of the counter on this thread. The counters are not always reliable, don't take it that nobody even clicked on this link and nobody finds it interesting - how did 4 people [like] it if nobody read it? ;-)

EDIT: there you go, as soon as I replied, the read counter went up to 192... might be a bug in the forum software.


Yeah this forum software is WAY broken. Its got a few issues for sure.

#8 JagChris OFFLINE  

JagChris

    River Patroller

  • Topic Starter
  • 2,438 posts
  • Location:Oregon

Posted Thu Mar 8, 2012 2:25 PM

TUBE developers comments and Q&A:

I don't fully understand what I did. I shuffled instructions around, like I did countless times before and got, once again, a performance boost.
It's like the Jaguar is a bottomless pit of power.
You scratch a bit, you get 3~5% of speed increase. You scratch a bit more and get another 3~5%. And it goes on and on.
At some point you think you can't get any faster. You do other things. Then you scratch again...
I think from the first version of the routine, I must have got an overrall +60% speed increase.
It's a bit maddening actually...


Can you talk a little bit about how you actually designed the tube graphics? Is this your own artwork?

Yeah, I designed the tube artwork. I use Paint.NET for most of the texture design, with a little help from GIMP (to make the textures seamless). This is done in 24bits mode.
Then I use Grafx2 (a modern "Deluxe Paint" like program) to handle the conversion in 256 colors.
I also design the tracks with Grafx2. A track is a plain 8bits .bmp file where each color corresponds to a specific tile (rock, fire, track, speed up...).
While we're at it, the ship's sprite is made with Blender. Then I scale down the rendering and fix a pixels with Paint.NET.
Then I convert the 24bits bmp file into raw 16bits RGB with a homemade tool.


#9 JagChris OFFLINE  

JagChris

    River Patroller

  • Topic Starter
  • 2,438 posts
  • Location:Oregon

Posted Thu Mar 8, 2012 5:15 PM

Can you discuss where the inspiration for this latest effort comes from?

The inspiration comes a long way back, in 1994, when I first saw the tunnel effect in the Falcon demo "Dementia" by Avena.
I thought that the effect was very cool. I started thinking on a game concept that could use this effect.
This was when the basic idea behind "Tube" when formed.
The problem was that with the Falcon you've to use a really low res (like 160x100) to get a decent framerate
with this effect.
So the idea went into hibernation. I used the effect in a school project in 1997 on PC.

When I started development on the Jaguar, I thought the jag could pull it of.
I made a first test in 320x200 CRY mode. It was a bit dissapointing (under 15fps if I remember).
So I reduced the screen size (272x200), switch to 256 colors mode.
It was a faster but I was not satisfied with the relatively narrow display area.
I tried 320x192 (+8 lines for speed and time display) but it wasn't fast enough.
So I had to cheat or optimize a lot.
I did both.
The tube display is not full 320x192. There is a central area with 256x192 pixels but the left and right borders have their pixels doubled horizontally.
I also managed to get the thing much faster and over 30 fps. I tell the details in another of your questions.
It was my target for NTSC mode.
PAL mode is in 320x224 (+8 lines to display info), 25fps, with the same cheat about the borders.

In the end the main problem was to get around RAM access latency. The GPU is very fast and you can stick many instructions betweeen RAM access. It's a complicated topic. I think I have many things to learn on RAM access.


Can you discuss the pseudo 3d engine you designed for this game? Did you use any existing code or is this all your own from scratch?

Well, there is no 3d engine at all, not even pseudo. It's just a trick.
I did it on my own from scratch but the tunnel effect is probably the most simple 3d-like effect you can make.
It's completely precalculated. You just fetch the pixels using a look-up table. There is no real time calculation
involved.
So what I did is a vertical scroller and use the LUT to wrap it around the screen in perspective.

Edited by JagChris, Thu Mar 8, 2012 5:16 PM.


#10 Punisher5.0 OFFLINE  

Punisher5.0

    River Patroller

  • 2,509 posts
  • Location:Illinois

Posted Thu Mar 8, 2012 8:59 PM

That was a good read.

I like the screen name too.

#11 JagChris OFFLINE  

JagChris

    River Patroller

  • Topic Starter
  • 2,438 posts
  • Location:Oregon

Posted Sat Apr 14, 2012 9:20 AM

Touching base with Marcus Losbjer

Hello Marcus. Wish to ask you a few questions about your collaboration with Dr Typo if that would be ok.

Hello Chris, of course!



Can you tell us a little bit about yourself and your artistic and musical background? Nosey people want to know!

Well, I work for a company as a graphic designer, mainly UI design (icons and stuff). I have also been working as a professional musician (drummer) on and off with different bands and artists here in Sweden.



How did this collaboration come about?

It was basically me who introduced myself and said that I wanted to help out. I've been an Atari-fan since the eighties, I love the early-mid nineties games and it's been a small dream of mine to be able to draw some graphics and maybe make some music to a game for the Jag.



Can you tell us about the tools and techniques you used to create the graphics and music?

I mainly start drawing in Photoshop or modeling in Blender (3D modeling/rendering software). If colors needs to be reduced I export the images from Photoshop and finish the stuff in Grafx2 (Deluxe Paint clone for the Mac and PC). In Grafx2 you have the ability to swap colours within a palette, something Photoshop can't do.

The music is a different story. This way of making music (Tracker software) is totally new to me. I'm used to a Logic/Cubase environment which is very different. So with this chip-music I'm still learning, trying things and hoping it will turn out to something listenable. I'm using a program called Milkytracker.



Can you tell us a little bit about how you coordinate with Dr Typo to combine your work with his?

He has some ideas and I'm just trying to recreate them and bring in some of my "touch" as well.



Dr Typo originally stated he didnt think he would take on a collaborator because he wanted to retain artistic freedom. That's probably not verbatim but its in the neighborhood I believe. How did you talk him out of this?

I just introduced myself and offered my help after I read that the graphics-area wasn't his main thing.






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users