Pseudo 3D roads

Community Forums/Showcase/Pseudo 3D roads

JonnyEnglish(Posted 2012) [#1]
Pseudo3D road in BlitzPlus

Made from types generating rectangles with the rect command.

Last edited 2012

Last edited 2012

Matty(Posted 2012) [#2]
Sorry cannot see picture...

JonnyEnglish(Posted 2012) [#3]
Made from types generating rectangles with the rect command.

Matty(Posted 2012) [#4]
Hmm. Maybe something wrong with my browser...still can't see the picture.

AdamStrange(Posted 2012) [#5]
agreed, no pics here either

JonnyEnglish(Posted 2012) [#6]

GaryV(Posted 2012) [#7]
Picture link on the front page (news) for this is dead too.

Hotshot2005(Posted 2012) [#8]
It remind of AMSTRAD Game called Burning Rubber :D

MrTAToad(Posted 2012) [#9]
Will you be releasing the source code ?

Kryzon(Posted 2012) [#10]
These were taken from the gallery link he posted on #6.

How fast does this simulation run?

Blitzplotter(Posted 2012) [#11]
Reminds me of a racing game on the Amiga - might've been Lotus something or other.... Looks good.

Anatoly(Posted 2012) [#12]
This is sweeeeeet! :D

skidracer(Posted 2012) [#13]
Front page image is working for me but it may be a cookie thing, in which case I'll need to remove the article until the image can be hosted elsewhere.

GaryV(Posted 2012) [#14]
Can anybody see any of the images anybody has posted in this thread? is a good host for images for forums and it actually works.

*edit* for those who can't see the image on the front page, here is the text to go with this picture above:

Pseudo 3D road using rectangles at only 640x480!

I've been messing around with Pseudo3D and came up with my own technique using ever decreasing rectangles as types.

The road can bend and stretch really far in ANY direction without breaking up! It can also tilt slightly , do the loop, bank, hills, fade, narrow, widen, split, change the Z-transform all 'on the fly' all at insane speeds!

going from top right across...

1. Straight and Wide - Very long view distance! Notice the different shade of road. It's actually 2 roads overlapping so it can split like in Out Run. Also, notice gradient fill on each of the 'bands'. Nice!

2. Round the Bend - Far view distance on the bend all at 640x480!

3. Banking on this - Banked 'slightly tilted' road.

4. Powerslide!!! - The view angle can rotate up to 179.9 degrees!! Notice the 'slight' tilt in the horizon! Cool!

5. Like a Vergin' - Wide verges and approaching left corner.

6. Vertical Hill - No break up! (The road, not my Ex!!)

7. Night Driver - Road can fade color gradually, giving the impression of night or day.

8. Cornfields - Downhill, or is it up?

9. Over the Hill - Going round the bend at the same time!

This is an amazing looking demo. Keep up the great work!!

Last edited 2012

JonnyEnglish(Posted 2012) [#15]
Thanks guyz for all your help and info for posting pics.

Source code is extremely messy at the moment, until I tidy it up it's pointless me releasing it.

JonnyEnglish(Posted 2012) [#16]
Here is the Image upload (I hope!)..

Steve Elliott(Posted 2012) [#17]
Brings back memories of Pole Position and Outrun :)

JonnyEnglish(Posted 2012) [#18]

This is the road bent to the extreme. The lane lines are extremely thin and break up. Also the road is going up and there are pixelation issues. however, why would anyone want to drive round in circles?!?


Yes, I don't need anyone to do that, I'm already completely mad. Another example of doing something extreme. (the road, I meant! - I'm about to go 'vertical'!)


Enter the parallel world of orthogonal projection. Notice the resolution of the road is significantly decreased. Good if you like looking at the sky while driving.(Please don't in real life!!)


Yes, I know, the humor is getting worse, but at least I'm trying. This is how the road 'works'. It's just rectangles generated up the screen in separate 'strips' then a Z-transform down of alternating color bands. The 'strips' move according to the correct formulae depending on what you want the road to do.


Is that a word? Anyway, notice the subtle gradient fill between the 'bands' radiating down from the horizon to eventually lighter at the bottom. This gives an extra sense of depth and you can drive really fast before it seems like your driving backwards like a Volvo driver would!


You can Zig-Zag across the road if you selfishly want to hog all five lanes. This is because you can change the 'Heading' of the car, unlike most Pseudo3D where you are always parallel to the road and can only 'strafe' left or right so you can't like drive into a motel or even someone else's driveway! (Note to self - 'stop insulting Volvo drivers!').


Yup, I got camber!!! Now, that's what I'm talkin' about! In 'real' Pseudo3D! (kinda ironic statement) Has anyone ever done this before??? Closest I saw was in WECleMANS24 by Konami with a raised Kerb/Verge. I deliberately added 255 to the color banding so you see a kind of 'cross section'. The Kerb is at the same height as the middle of the road. Per-fik!


The left hand side of the road is cambered, the right is not. It doesn't seem to alter the speed much but then again the speed of the road is so blisteringly fast you wouldn't notice unless you were a giant mutant fly playing this demo. The reason is it relies on distorting rectangles, lots of them, instead of an 'image'.


Skyroads are easy (like in Outrun2097 - or whatever it was called!). However, doing a loop-the-loop the road tends to get very pixelated and starts to break up. The ground falls away fine. However, getting the ground to come back from the top of the screen as you would expect requires some extreme maths (Hence, the Orthogonal Projection earlier).
Now, where's my Maths professor from 10 years ago...I wonder if she will remember me?...Hmmmm...

Hotshot2005(Posted 2012) [#19]
Amazing and you must Be very good at Maths :)

Last edited 2012

Kryzon(Posted 2012) [#20]
are you high?

JonnyEnglish(Posted 2012) [#21]
LOL! No, just messing around with some maths, seeing if I can improve on the Pseudo3D Status Quo. I don't think anyone has ever made it camber or do the loop-the-loop or tilt before...?

JonnyEnglish(Posted 2012) [#22]
My IP just got banned from ???

Kryzon(Posted 2012) [#23]
I guess they don't like their drug users.

You can try

JonnyEnglish(Posted 2012) [#24]
@Kryzon...easy... I don't use illicit substances and never will.

Anyway, thanks for the heads up.

JonnyEnglish(Posted 2012) [#25]

A road to be reckoned with. 'Skyroads' are very easy to do and they don't need any concrete supports - they 'float' magically in the air. Notice the 'shadow'. This is actually a gap in the 'ground' banding where the road was.

GaryV(Posted 2012) [#26]
Impressive stuff.

Kryzon(Posted 2012) [#27]
wow, nice touch on that shadow!

JonnyEnglish(Posted 2012) [#28]

Remember that Game? Looks like it can be done in Pseudo3D as well. No 'magical' floating roads.


Yup, I can Change just ONE side to a different color! Also notice the green banding on the other side stays in perfect perspective, too.


No Brit pop here. However, you can also go down into the ground! (Or through a mountain, depending on where you place the horizon!)

Last edited 2012

JonnyEnglish(Posted 2012) [#29]
Thanks for all the kind and encouraging comments and compliments, everyone!

Just to answer a few questions, comments etc...

- The Shadow is actually where the 'road rectangles' would be. It actually was a nice 'side effect' , so I left it there. It's actually blank space, the horizon graphic could be seen through this.

- It runs as fast as you want it to go. It's all made of rectangles instead of distorting Images. The programming is not hard, it's not a long program at all. The maths is intense - but it runs fast, insanely fast I have to limit the speed of the road.

- Source code is messy and while it is in this state I definitely won't be releasing it since no one will be able to understand it, probably.

- Apologies for my terrible humor. :)!

- Latest images are now posted on

- some of the Games that I looked at included...

Burning Rubber (AMSTRAD - this in the car and background!)
Lotus Esprit Challenge (AMIGA)
Out Run (MAME)
Out Run 2019 (GENESIS)
Pole Position (All Versions)
Road Blasters (AMSTRAD, C64)

By combining all these techniques, and my own, I was able to come up with this demo. So some of you were indeed spot on!

Dabhand(Posted 2012) [#30]
Looks brill!!! :)

*thumbs up*


Foppy(Posted 2012) [#31]
Wow, this looks great, you have about all effects one could think of in there!

grindalf(Posted 2012) [#32]
This is awesome.
live long retro.

JonnyEnglish(Posted 2012) [#33]


HZ - This is the Height according to how far away from the horizon the road is. The further away the road segment greater the increase of rate in height. The HUD denotes this as 'RFval'

Kern - This is the 'bendability' of the road at the corresponding Z value.
i.e as the Z value increases so will the 'bendabilty' of the road at that Z-value. The HUD denotes this as 'EDval'

Engines ready...

Normal road. Kern value is normalized. HZ is zero. Ground value is flipped from one to minus one (so it will 'peel' downwards as the road 'peels' upwards). Rectangles are increased downwards in height to maximum possible value. The road is prepared to be looped but the player notices nothing since the Kern and the HZ value remain unchanged.

Road peels upwards (at +1) fast by increasing the HZ value, ground peels downward at the same rate (at -1).

HZ value continues to increase until ground peels away from the bottom of the screen. Kern remains unchanged.

HZ value stops increasing once the ground has peeled away from the bottom of the screen. The player continues at this road configuration until they start to get to the top of the loop.

Once at or nearing the top of the loop the Kern is increased and the HZ value is decreased at a corresponding rate to keep the shape of the road. The ground will shortly appear from the top of the screen.

The ground appears from the top of the screen moving downward and scrolling towards you at the correct rate and perspective as the Kern is increased and the HZ value is only slightly decreased this time (to allow the ground to come down the screen enough to look convincing) causing some temporary road distortion. (this is too fast during gameplay to even notice - less than 0.1 secs)

Ground is flipped back to +1 (happens instantaneously - the player won't notice at this speed) Kern goes from increasing to decreasing and road distortion will restore. (again this is where the 'changeover' happens, the player won't notice at this speed). Mathematically this is just after the top of the loop, however the player is under the impression that they are at least 3/4 way through it.

Kern is still really high and continues to decrease to BELOW normal (+1) to a negative value (-17) to mostly negate the affect of the HZ value.

Kern stops decreasing and remains constant at (-17). HZ takes over and decreases quickly to restore the road to level. So far as the player is concerned they have now 'finished' the loop.

Road is restored to level. Now the Kern is increased again (but now won't affect the road because the HZ is zero, well almost!).

Kern is stops increasing when it becomes approximately +1 again. Rectangle heights are decreased to their original heights. The road is restored to its original state.

Last edited 2012

Last edited 2012

Hotshot2005(Posted 2012) [#34]
Very Nice and it would be cool to have Tutorials on how to make Basic Pseudo 3D roads :D

Anatoly(Posted 2012) [#35]
I can find no words to describe how sexy this is.

dawlane(Posted 2012) [#36]
Very Nice and it would be cool to have Tutorials on how to make Basic Pseudo 3D roads :D
There is this written in java and of course there's Lou's Pseudo 3D. And if your interested in doing something like the original Doom then look here written in java.

Last edited 2012

JonnyEnglish(Posted 2012) [#37]
I think I've just made programming history! Has ANYONE ever made a Pseudo3D road do the Loop the Loop before? Maybe it's because nobody has ever bothered to try since the advent of 3D? (And the Maths is really tricky) Anyway, point proven, It CAN be done, convincingly enough.

Of course, now I KNOW that I can easily make it do a 'Corkscrew'/'Twistteti' - Just turn the road at the same time!

(The background image would have to rotate as well as tile/repeat in all 4 directions and be a mirror image of itself from top to bottom but this is not hard if your familiar with rotating objects [may cause slowdown] and tiled images/ parallex scrolling etc. and might need to add a temporary scrolling ground to the background image to make it look ultra convincing.)

Of course, doing all this with a 'Skyroad' would be very easy now since there would be no ground to worry about.

JonnyEnglish(Posted 2012) [#38]
Other things I now KNOW that I could make it do...

- Rounded Kerbs/Verges (Opp. Camber applied)
- Anaglyphic 3D (2 extra roads Red/Blue - color fade can be adjusted)
- Split the road in multiple directions (Top Speed - Konami)
- Cliffside Road (Test Drive/Race Drivin')
- Jumps (Stunt Car Racer/Outrun2019)
- Tunnels (Including ones that go Underground or Underwater - StuntFX)
- Caves in Mountains and Circular tunnels (Need fast computer)
- Narrow, Widen Lanes (without subtracting or adding strips of road - either like ChaseHQ on the AMSTRAD or more gradual)
- Drive off a Cliff!
- Convincing turn into a Perpendicular side road (Unlike Cisco Heat) - difficult but doable! - similar technique to the Loop.

It's time to start to tidy up the source code first, make sure all the other techniques are completed first.

Last edited 2012

JonnyEnglish(Posted 2012) [#39]

Showing the hollow rectangles at the End of the loop that extend below the road giving you a visual idea on some of what is happening. You can see the straight road formation in the distance.

NOTE this is NOT 3D just cleverly placed rectangles is Pseudo3D.

JonnyEnglish(Posted 2012) [#40]

Obviously, for real, it's smooth - this is a GIF.

Enjoy! That's all for now.

Thx, and keep the comments coming! :)

grindalf(Posted 2012) [#41]
incredible stuff :o
and thanks for the links to the tutorials

JonnyEnglish(Posted 2012) [#42]
UPDATED GIF - More Realistic GIF!!

Damn - I'm Good! :D

Hotshot2005(Posted 2012) [#43]
GOOD? You will saying I am GOD Programmer :-P

Thanks dawlane for Amazing Tutorials :D

MrTAToad(Posted 2012) [#44]
Looking forward to the code being released!

Cobra Blade(Posted 2012) [#45]
As a fan of Chase HQ (Commodore 64), World Grand Prix (Master System), Outrun (Mega Drive), Lotus (Mega Drive), Outrun 2019 (Mega Drive), Road Rash 2 (Mega Drive), Top Gear (SNES), I have to say this is incredible. Awesome work there Jonny, really impressive and looking forward to seeing more of it!

BlitzSupport(Posted 2012) [#46]
Coolest thing I've seen in a long time.

Matty(Posted 2012) [#47]
Looks great. I wonder how well it works on a device with low fill rate since it looks like there is a lot of overdraw...would love to test out the code...

JonnyEnglish(Posted 2012) [#48]
Overdraw is not a problem. I can run this at 800x600 on a 600Mhz PC - insanely fast! Just depends on how many rectangles the device is capable of manipulating at once. Use the maximum amount possible for that device for the best road resolution.

The rectangles or 'strips' of rectangles, rather, are drawn UP the Screen (not down).

Once they are all drawn one time (takes about one second to initialize) there is no need to redraw and refill you just adjust the size, position and color of the rectangles. Its all done 'mathematically' so it will always run at 60fps.

You want it to do something, anything, you just add the correct formula, so long as what you want it to do can be represented visually by rectangles, however many and small the computer is capable of manipulating at once.

The only thing the computer is ACTUALLY doing is altering the size, position and color of rectangles on the screen. Most of the rectangles don't actually move that much. So, however many rectangles the computer can manipulate at the same time is how fast the road will 'run'.

The point is there ARE NO 'ACTUAL' GRAPHICS (apart from the car and the backdrop). The 'Strip' at the horizon stays at the horizon, it just alters size, position and color giving the impression of movement rather like a stroboscope.

(The pictures don't change, just the rate at which you see them giving the impression of a moving/changing image - the image, however, is a series of images that NEVER change, in this demo the components only change slightly - compared to other techniques - which manipulates the road)

It's a trick of the eye rather than pushing graphics (or rectangles) down the screen!

Last edited 2012

Chalky(Posted 2012) [#49]
Will you be releasing the source code ?

Looking forward to the code being released!

You could start by looking at this: Pole Position/Outrun Racetrack code (2d). It's not as sophisticated as the one on this thread, but may be a good foundation for building something close.

Last edited 2012

MrTAToad(Posted 2012) [#50]
Unfortunately its a bit... messy...

Ploppy(Posted 2012) [#51]
Looks like fun, love to look at the code out of interest, have always wondered how to do that and I had dabbled at it many a year ago not getting it to work on my amiga unfortunatley (using blitzbasic too, anyone use that on amiga?? a real forerunner very quick at the time).

Reminds me of enduro racer too, same kinda technique....

skidracer(Posted 2012) [#52]
This one has some nice ideas, tilt, rear view mirrors and a nice sense of coming over the crest of a hill:

JonnyEnglish(Posted 2012) [#53]

Erm, It's a bridge!

I would liken the PSeudo3D to iROBOT (ATARI/ARCADE) or Skyroads (PC) or TrailBlazer or ThunderBlade (SEGA) (First Section of each level). Using a lot more geometry though!

Coaster Racer, Power Drift are kind of similar. I have no idea about Enduro Racer. However, I think Super Hang-On (GB ADVANCED) uses a similar style but generates the rectangles down the screen, you can see it's quite blocky near the bottom of the screen but unless you play it on an emulator you probably wouldn't notice much because the screen is so small.

I'm probably going to start a worklog on this soon since that is where this is heading.

The main point of this was to prove (to myself at least) that a Psuedo3D road can indeed do a loop the loop and you can get around the 'integer divide by zero'. It was the only thing left, that I know of, to do with PSeudo3D roads, that has never been done before...and now it has!

You saw it here first! :))

Hotshot2005(Posted 2012) [#54]
Bridge? Yes and 3D Tunnels :D

ooh you love teasing people with your lovely picture :-P

Keep em coming :D

JonnyEnglish(Posted 2012) [#55]

It's actually just a continuation of the road beyond the horizon, widening instead of narrowing with the scroll reversed. Can you see? A neat trick that saves a lot of processing power. The walls are actually 'invisible' (mask color black). Of course you could just extend the sides/height of the rectangles so the 'lights' come all the way down the sides of the tunnel wall.

It's a road above a road, kinda thing.

Tried lots of ideas. Took me about 2-3 hours to come up with something that looked decent and did the job.

JonnyEnglish(Posted 2012) [#56]

Down and Around Rome! Notice the Solid Looking Columns.

Road break up! However, you would either be going straight or to the left, which would hide this!

Some break up that you would not see, also!

It's that Bridge , again! I forgot to take it out!! Notice the inside wall down the crack, perfect perspective. :)

The Long and Straight of it!

See? It's just ALL rectangles, still Pseudo3d!

The preferred view!

Picture of it looking nice from the outside!

Well, I think I've conquered tunnels and now I've conquered Rome, too.

I thought it was going to slow down using this method but it runs soooo fast it's like driving inside a stroboscope, ultra-smooth too. :))

Another first!

Now there can't be ANYTHING left that Pseudo3D can't do?

GaryV(Posted 2012) [#57]
Jump off a ramp and have a landing ramp?

JonnyEnglish(Posted 2012) [#58]
179.9 DEGREES???

OutRun (ARCADE) hardware can rotate this far, too!

I Think that's it, folks!

JonnyEnglish(Posted 2012) [#59]

Driving with the fish!

Hotshot2005(Posted 2012) [#60]
Last bit remind of Outrun on Level 2

Move it to 1Mins 40 Seconds as you would see the tunnels of Stones :)

JonnyEnglish(Posted 2012) [#61]

Maybe this looks better!

JonnyEnglish(Posted 2012) [#62]

Oh! Wow! This just looks great!

Moves at speed too. Originally, there were lots of slowdown issues with this. Now it is minimal or none at all. Can you see the visual trick here? It saves huge amounts of processing power.

Hotshot2005(Posted 2012) [#63]

JonnyEnglish(Posted 2012) [#64]

Deeper into the sea! Also, I forgot to mention I used a programming technique too, so it's still fast, tied in with another visual trick.


JonnyEnglish(Posted 2012) [#65]
Jumps and Ramps - Combine the break in road (where the bridge is) and the stunt car racer shot.

Scud Racer - Yes! But has anyone done it with PSeudo3D?

OutRun - Yup! My 'aquaroad' looked like an underwater version of Stone Henge! It's why I had to change it! :)

JonnyEnglish(Posted 2012) [#66]

...and a rather worried, sad looking shark! My art is terrible!

Notice the 'Arches or Light' don't go all the way back AND start to disappear BEFORE they get to the top of the screen. Also notice the 'refraction' on the 'glass' itself. Moving it all looks beautiful, it really does look and move like rays of light from the sun above...although it does not look like much here!

Also, when the road bends up/down and left/right I have also exploited the pixel problem so that you get some 'twinkle' of rays of light further in the distance, occasionally. Also, if the road gets deeper or bends downward this also affects the refraction!

I could also get the rays of light to fade and increase gradually as the road goes deeper or gets shallower. Also, of course, the road can get darker or lighter as in the day/night scenario at the top of the thread!
I could also put a 'gradience' on the picture, too.

Also, processing less 'Arches' means more speed and now absolutely no detectable slowdown even at insane speeds!

This is ground (water? O_o!) breaking stuff!

Hotshot2005(Posted 2012) [#67]
IF You want your programming Skill level up then try make PowerDrift Heh heh :)

Last edited 2012

Steve Elliott(Posted 2012) [#68]
Looks like a fun project...a game from this would be good to see :)

JonnyEnglish(Posted 2012) [#69]

The picture above shows lots of arches (BEFORE) Whereas NOW , below, it only shows 2

This proves the point (even though the road is extremely bent down in this photo) and when moving it looks a very convincing effect at speed.

I really need to put some videos up, so people can see what I mean!

Last edited 2012

JonnyEnglish(Posted 2012) [#70]

It looks a bit weird here, photos don't really do it justice, but it moves beautifully giving the impression of driving under a glass semi-cylinder with rays of light shining on it. Moves exactly as you would 'expect'.

Yup. You could even do a loop-the-loop underwater!

POWERDRIFT is the standard Z-Transform (I Believe), my engine works on geometry - which is why it is so fast. It can't do half the things my road can! ;-) Not even close. However, it was made way back in 1986, pretty impressive for the time.

Game? Well one step at a time. I gonna see in the next month or so if I can put up some YouTube videos of it, first. Then a work log it as well, when I tidy up the code. Then tech demo betas, maybe get some other more experienced programmers involved.

I'm a mathematician , not really a seasoned programmer. So I can do the extreme maths but my programming skills are not as good and need to improve.

Basically, there are several more things I wish to do to before doing a game. I will have to 'recheck the tech' before any beta demo release and I guess the next step Youtube and worklog. This Thread has gone way beyond a showcase , now.

Although it is very pretty. :)

I'll post videos or links to videos here, in the next month or so.

Stay tuned to this thread.

Thanks, everyone.

Kryzon(Posted 2012) [#71]
Wow, the round arches look awesome man. Great work!

JonnyEnglish(Posted 2012) [#72]

Road and Track

Loop the Loop



Enjoy! :)

Last edited 2012

Hotshot2005(Posted 2012) [#73]
It would be better if was running youtube that we can see it on good speed!!!

JonnyEnglish(Posted 2012) [#74]

Yup! I'm guessing people really need video from now on to see it. This tunnel GIF proves the point!

I will post videos and put the links/embed here when I have time.

That's all for now.

Last edited 2012

JonnyEnglish(Posted 2012) [#75]

I finally did it! I managed to get sprites moving at EXACTLY the same speed as the road. That was my last real 'hurdle'. Notice the Signs have just a little depth to them!! Sprites can be many and anywhere I want, even as clouds (OutRun - OakTree Level) and will move EXACTLY according to the road. :)

No slowdown...and Boy can it handle a LOT of sprites!

Speaking of hurdles, also included is the 'Ramp-to-Jump-to-Ramp'. You just raise the y-position (linearly decrease the y constant) of everything it looks like a straight ramp up, you put a break in the road and you decrease it linearly too (during the jump) to make it look like its a straight ramp downward and the car will 'look like' it's doing a standard trajectory. Easy peasy! ;)

Where is Everyone??? Gimme some feedback! Positive or Negative or suggestions for improvement, all welcome.

Then I'll put up some Youtube videos! I promise! ;-)

Anyway, solved ALL technical issues. There is NO height differential according to the Z-plane (Sprites don't count!) and the solid blocks there is no Height differential!! Really - very special visual trick with rectangles. Also there is NO DZ or DDZ either! Just a Z-Transform, no Z differentials! (Again, sprites don't count!) This is probably WHY it's soooo fast, only one set of calculations, not 3.

Pseudo3D - Nailed it! - Never underestimate the power of Mathematics.

I think Pseudo3D is probably about the hardest of all 2D programming.
So if you've managed to do it , pat yourself on the back and consider yourself a real pro!

Merry Xmas everyone and I'll be back soon...

Jonny :D

Last edited 2012

Last edited 2012

Last edited 2012

Hotshot2005(Posted 2012) [#76]
Brilliant Stuff that you have Crack it and now GIMME DA CODE :D :-P

P.S. Looking forward youtube Video. It just show how good Blitz Plus is when come handling Sprites and not sure if any other basic language(purebasic/Darkbasic and so on) could cope with that!

Last edited 2012

Last edited 2012

JonnyEnglish(Posted 2012) [#77]
LOL! No one would be able to really understand it the state the code is in!

In fact, the code is really basic, it's the maths that is really hard. The formula would need at least university undergraduate level maths to understand what is really going on! It's programmed differently from normal PSeudo3D it's mainly 80% maths 20% code instead of the other way round.

I'd have to point out the variables and write out a super long readme file on what variable does what and how to use/manipulate the formulas instead of actually explain them to someone (unless they had University level maths!)

Sprites are fast mainly because of the maths and also the way in which it is programmed.

Won't be ale to make videos until Santa gets me a new laptop, this one is 600Mhz! O_0!


Hotshot2005(Posted 2012) [#78]
All you have say is

Dear Santa

I want State of Art Laptop and throw me anythings I can throw on Blitz Plus! LOL :D

JonnyEnglish(Posted 2012) [#79]
Cheers. But using CamStudio is what will slow it down.

I will need a very fast computer to record the speed output of this PSeudo3D engine to video.

I could program in a DZ calculation to make the road snake etc BUT it is unnecessary to prove the point mathematically that it is possible to make a PSeudo3D road do almost anything. (i.e PSeudo3D = NO height differential used!)

My University just got 10th in the world ranking for Mathematics! Yey!

But that's half the problem. Sending out the source code 'as is' will just confuse everyone (I've managed to confuse myself too, a lot) It requires a lot of mathematical understanding. I have to put the code in a format whereby other people can just come along and change the variables and use their own data sets to use the code in their own programs. This will take a lot of time. But, I will try to get the source out, when time allows. If I release it as is I will get bombarded with questions that will take half my maths degree to answer!

Want to do cool stuff....learn maths! ;D

Cheers all!

Matty(Posted 2012) [#80]
There's a number of people on these boards with mathematics qualifications...I'm sure there'll be people who understand it...looks good though...

JonnyEnglish(Posted 2012) [#81]

Finally figured out exactly how it's done. Super Sprite Scaling by SEGA! Figured out how to make the sprites move super smoothly like in OutRun etc. whereas in other non-SEGA PSeudo3D games they sometimes jiggled up and down a bit.


I agree. I'm sure there are people who may know maths even better than myself in these forums. However, there are a number of younger people on this forum who I wish to encourage to study maths, if they are so inclined. Maths is actually very cool when you learn what you can do with it! Unfortunately, most youngsters are not taught this in the current education system which I feel is a bit sad. I'm not trying to gloat, just encourage youngsters and make them feel more inclined and motivated in Maths.

Also, my head is a bit of a mess and it shows in my code! :)

Thanks for the support and all your comments.

Hotshot2005(Posted 2012) [#82]
Nice one...Did Mr Bean help your coding? LOL

Just Kidding...

Well Done Man :)

Dabhand(Posted 2012) [#83]
I'm literally gagging to see a demo of this... I am, I really really really realllllllllyyyyyyyyyy.... Am! :)


Kryzon(Posted 2012) [#84]
Won't be ale to make videos until Santa gets me a new laptop, this one is 600Mhz! O_0!

Hi Jonny. Remember you can use IncBin to merge all necessary data into your program and then build an EXE that you can give to someone with a fast computer to record it.

This way everything is contained within the EXE, and you won't have to risk exposing your code\media.
Consequently, if you program the EXE to simply work as a non-interactive demo (with the changing of levels, driving of vehicle etc. all scripted) the person only needs to record the footage and be done with it.
You can e-mail me the EXE if you want, I'll record it no problem.

JonnyEnglish(Posted 2012) [#85]
OUT RUN - Oak tree level

The clouds are not scaled (takes a lot of time to do), but the maths is there, I can see how they did it. Not that hard at all, compared to the other stuff. You get the picture/idea from this anyway.

Thanks Kyrzon that's really helpful. I will take a look into that.

Cheers! :))

People are really gagging to see a YT video or Demo and all I do is tease people with photos! Ugh! But that is all I can do for the moment. My internet and computer is slow so it's unintentional, I promise!

JonnyEnglish(Posted 2012) [#86]
IncBin does not work in BlitzPlus only BlitzMax. :(

Anyway,here's another piccy


It's made of 3 pieces.
The start banner is actually a left and a right very long 'flag' and the middle 'start' banner just increases vertically up the screen. It's so close it does not really need to increase in size, it just kinda 'stretches' a little , like in outrun.

Imperium(Posted 2012) [#87]
Need link to download. I must play this! :)

JonnyEnglish(Posted 2012) [#88]

No road has been programmed yet!

Still in development until further notice.

slenkar(Posted 2012) [#89]
velly nice

grindalf(Posted 2013) [#90]
Its because of this topic that I ordered Top Gear for snes from e-bay lol

JonnyEnglish(Posted 2013) [#91]
******* DEMO v 0.1b *******
(not very 'fun' but hey it all 'works')

unzip and load executable simpletrack.exe

I had to remove a lot to make the file size small enough. (So no trees, lamp posts etc in the demo - sorry!)

I deliberately limited the speed ( to prevent epilepsy :) ).

Esc - QUIT

Other controls...

F3 - WIREFRAME ON (filled rectangles)
F4 - WIREFRAME OFF (hollow rectangles)

Can't remember all of the controls so just bash you keyboard until you find all of them LOL!

Corners etc. were done in excel, really need Mathematica to make them perfect.

Also, physics is naff but I'm working on it.

JonnyEnglish(Posted 2013) [#92]
******* DEMO v 0.11b *******
(a bit of 'fun')

Here you can continue after the finish line and do exactly what you want with the road after completing the track.

I have UNLIMITED speed on this version but don't blame me if you have to end up going to the opticians after. -00- I accept no responsibility!

Oh yeah, and space bar toggles the orthogonal projection the ground to the road. If you don't know what this means it just means the ground and the road go in the opposite direction when the height of the track is altered.

Sorry, no 'amazing' levels yet.

Have fun!

Addi(Posted 2013) [#93]
I am getting the "Illegal memory address" error!

JonnyEnglish(Posted 2013) [#94]

Make sure ALL the files are IN the same folder.

I downloaded it an tested it. Seems ok.

Make sure you UNZIP the folder.

Addi(Posted 2013) [#95]
All files are correct downloaded/unzipped
but I have still the same problem ;(

JonnyEnglish(Posted 2013) [#96]
I tested both versions from the download and downloaded it to a new location.

I'm using WinXP. I have not tested it on other platforms but it should not be a problem. The graphics mode is 648x480 16 bit color windowed.

Try changing the graphics card to 16 bit color???

these are the only files used in the game.

Addi(Posted 2013) [#97]
Ahhhhhh ok now I know the problem:
My graphics card does not support this mode. :D
Hmm that is no problem if it does not work, I have seen your pictures. :)

Last edited 2013

grindalf(Posted 2013) [#98]
Thats pretty awesome
It worked fine on my crappy netbook until I entered a tunnel then it went so jerky I coudent tell if I was moving

Trinosis(Posted 2013) [#99]
I was getting the same "Illegal memory address" problem as Addi.

But it was a Windows DEP (data execution prevention) problem for me on Windows XP.

Adding the "simpletrack.exe" to the DEP exceptions list, via system properties in control panel cured the problem and the programme runs fine.

Nice work Jonny. :)

Hope you turn this into a full blown game.

Last edited 2013

JonnyEnglish(Posted 2013) [#100]
THE 100th POST (I bagsied it - yeah!!!)

Cool glad you guyz liked it. Thanks Trinosis for the tech support. Nice one. :))

If you overspeed then the maths 'runs back on itself' and it goes so fast the maths equations start to warp the road!! If you go a little 'slower' than 'twice light speed' it may not happen. My netbook is 2Gb / 900Mhz!

Looking at releasing a FULL screen demo and then a FULL demo to show of it's FULL capabilities.

Please feel free to make YouTube videos of it just so long as you post the link here! :)

Not thinking of really making a game. More like a Pseudo3D Engine I can license to other programmers so they can use it to make there own games without needing a maths degree to do it. Let me know what you think people...

Last edited 2013

Dabhand(Posted 2013) [#101]

Not thinking of really making a game. More like a Pseudo3D Engine I can license to other programmers so they can use it to make there own games without needing a maths degree to do it. Let me know what you think people...

Maybe if you moved this over to monkey, that would be a wise move, but, for b+, all you need to do is check the Blitz+ forums to see it's not the busiest, and thus, you may not shift many copies!

Though, monkey does have a demo that allows you to run HTML5 apps in a browser, so, you can pretty much get started on it without shelling out first!

My 2p


SystemError51(Posted 2013) [#102]
I read through everything now, looked at everything... I cannot help myself but to be deeply impressed by this work. That's amazing.

Gotta ask this...

Are you a wizard? O_O

Kryzon(Posted 2013) [#103]
@JonnyEnglish: I didn't know you were using BPlus. Like you said, it won't have IncBin.
Try using the Blitz Media Linker or BBCruncher. I suggest you try the media linker first, as it seems to have a more wizard based process.
You can find both of them here:

GaryV(Posted 2013) [#104]
Any progress on this or something to show off?

JonnyEnglish(Posted 2013) [#105]
Currently working doing networking and VPN stuff for a company at the mo.
Learning Java as well so don not have a lot of time.

However, I will be releasing a tidied up version ironing out all the bugs etc. with full screen and a proper options menu (inc a range of graphics modes/resolutions to try) hopefully soon.

angros47(Posted 2013) [#106]
I'd like to see if it can be translated to freebasic, too, to make it multi-platform.

Could you share the source code? Even if it's difficult to understand, maybe it's not difficult to translate (freebasic has almost all the features of blitzplus).

Thank you.

2 Unlimited(Posted 2014) [#107]
It's a shame the author hasn't shared any useful information (such as formulae) about how he updated the rectangles, depending on the road situations.