Mike MGarcia's Games Development Blog

Mike MGarcia's Games Development Blog

A hobbyist Mobile/PC/Android/Console game development blog

Blog | About | Contact


This is not just about Bubsy 3D

This started with just a quick analysis of Bubsy 3D, but that bobcat hole just kept going!
Instead, turning into why Bubsy 3D and most early Playstation games look the way they do.

But first, A bit about Bubsy 3D!

Bubsy 3D comes up as one of the worst games in the Playstation’s library.
In it’s defense, it was among the first ‘open world’ 3D platform games created.
Sure tank controls (Up/Down: moving & Left/Right: rotating) are horrible now, but it was common in early 3D games.
And the fixed camera was also very common, the L2 button controls the camera, this was a time before dual analog sticks.

The design of the game is pretty limited, Bubsy can jump, shoot, run (or swim in water levels), climb and glide.
The level features are interesting but stark, moving platforms, helicopter switches and a rail system.
For it’s lack of design and features, it does have a lot of gameplay with 18 levels (some large), 4 bosses and repeatability in that collecting all the pieces of the rocket gives you the “good ending”.

However, it’s always criticized for it’s (lack of) visuals and often compared to Crash Bandicoot and Super Mario 64.
The only thing they have in common is that they came out weeks apart from each other.

Why was Bubsy 3D mostly flat shaded?

A few reasons, the game runs at the PlayStation’s highest resolution, which is in interlace mode.
This resolution on the Playstation was mostly for low CPU GPU tasks like rendering static images (ie intro & menu screens) or videos (MPEG).
Very few games run at this high resolution in game and in 3D.
It forced the fastest display refreshing the TV & Playstation can perform, (PAL:60 NTSC:50 frames per second).
And well, flat coloured polygons is what the hardware can render the fastest! (NB: lines aren’t polygons).

Bubsy 3D PS1 VRAM
[The VRAM is hardly used with empty spaces and duplication, see above (notice there’s no double buffering)]

Perhaps the original concept was to make Bubsy 3D similar in style to what 3D games were already out in 1994.
Like Sega’s early 3D “Virtua” games which are mostly flat shaded, but unfortunately very dated for the end of 1996.
I personally like the style, it’s reminiscent of the late 80’s and early 90’s 3D.
So with very little textures, I guess it made sense to use the largest amount of VRAM for resolution.

[Read More…]

- Draft -

A Net Yaroze Postmortem and gamedev lessons learnt

In 2016, I spent most of my spare time hacking away with the old playstation, Net Yaroze.
You can see all my Net Yaroze blog posts here.

My previous experience with the Net Yaroze was back in 1999.
I bought it after seeing a UK OPSM (Official PlayStation Magazine) demo disc video saying it was discounted:

At the time I was a IT student (Computer Science), I started in software development, programming C/C++, win32/MFC/OpenGL and Java.
But I majored in information systems (Enterprise), in the mid/late 1990’s business ERP products were all the rage!
It took me about a year to go through the manuals and Black Art of 3D Game Programming before actually starting anything substantial.
On my Christmas break of 2000 for 3 months, I remember being locked away in my room and crunching so hard, I was actually looking forward to the start of uni!
I learnt how to master the clunky 3D format and made a 3D side scrolling demo, with animated block people, very much like minecraft.

Click here to see/read more.

[Read More…]

Friend: Robert Swan (Rob the Swan Dev)


Rob Swan, started his game development career in 1997 with the Net Yaroze 😄
He made some very well known games on the PS1, thanks to the Official Playstation Magazine (OPSM) Demo CD’s (PAL regions).
His most famous PS1 game being Adventure game:
[Read More…]

Up to 2015, it was still relatively hard to get an ‘indie’ (bedroom/hobby coded game) onto a console.
The only exception being Android consoles (micro consoles), now just called AndroidTV boxes.

A while ago I found out about the Xbox One Dev Mode, which was launched in March 31 2016.
It basically turns any retail XBox One into a UWP device (Windows10) and you can target it via Visual Studio 2015 (community edition is free), Unity3D also has UWP support.

This feature, is still new, with UWP officially launching on XBox in 2017.
You need a DevCenter license (19USD once off) which lets you put apps on the Microsoft store.

When the XBox is in Dev Mode mode, it’s limited in memory and CPU’s it can use.

I’m not interested in using C# nor DirectX, but there is a Microsoft openGL wrapper called Angle which is in C++ and supports UWP.

This is pretty good of Microsoft to do this!

Sony unfortunately, doesn’t have a real ‘indie’ friendly platform, requiring a business entity.

More Info:
[Read More…]

A Net Yaroze Member - Looking back and forward

So I’m working on a Net Yaroze game now (abbreviated to NY or Yaroze for short).
And as a Net Yaroze member, I have access to the old Sony newsgroups which I search when I get stuck in the hope of finding answers, which I normally do.. and sometimes it’s even my past self! lol! :/ doh!

Well… today I came across something worth sharing, see newsgroup post below.
Here’s a Commodore 64 intro I coded up on the Net Yaroze:

To the un-aficionados, The Net Yaroze, was the only game console, hobbyist development system, with an official retail release.

Now, If you look even closer at that list, the only other “true” 3D console in the same era/generation was the Nintendo 64! - 3D console games were still very new in the mid 90s.
Not only that, but it didn’t require assembly! (programming directly to the hardware)
It was programmed in higher level languages such as C/C++, Lisp and I’m sure others.
This was very important, as it allowed for easy porting (portability) from other non-assembly platforms ie DOS/Mac/other 32bit machines because it didn’t talk natively to any hardware.
It’s also a lot easier to read and write code and develop for and at that time C/C++ was being taught in universities anyway (before Java).

10 Years prior, when the 8-bit computers were in homes, their manuals included an explanation on how to develop for it, most commonly in basic.
But people taught themselves assembly and coded games and released them to the public.

Wikipedia says that the Develo PC Engine development accessory predates it, but it’s not a development kit.
A development kit includes a target device to run the actual target builds on, commonly a PC daughter board or a seperate unit.

So the idea wasn’t completely new, except it was the first gaming console to do it and the last unfortunately (XNA/PSVita aren’t retail hardware kits and the HYDRA kit isn’t a console, it’s a kit), .
But I still find it strange because at the time (mid 90’s) the idea of the ‘bedroom indie game developer’ was fading fast in popularity with the 16-bit micros and PC computers.
Mostly because games required better art assets and more complex logic, which one person couldn’t do as a hobby in a timely manner (a few weeks).
[Read More…]

Links Net Yaroze & PSXDEV related material.

General feeds

My Net Yaroze related pages

Great interviews of Net Yaroze members

Youtube feeds: Yaroze PSXDEV

Tweeter feeds: Yaroze PSXDEV

Development stuff

I use code::blocks I did some videos on how I set it up here:

[Read More…]

The Net Yaroze (which means, Let’s do it in Japanese) is was an official hobbyist programmable Playstation from Sony (SCEE).
It was launch in 1997, and I remember reading about it in a Playstation magazine, it was $750 US about $1400 AUD.

At that time I just started programming part-time, and I wasn’t sure I could do it.
In 1998 I started a Diploma in programming and in March 1999, I had a Net Yaroze! (I still have my acceptance letter in my CV!)

[Read More…]