Home 3D Art Showcase & Critiques

Rooftop race game

sublime tool
Offline / Send Message
renderhjs sublime tool
Finally my first game here at Soap Creative (my new job in Australia) is about to be launched. It should go online by tomorrow but I couldn't wait to already post some media of the game and a video.

bike_rooftop_game_s02.jpg

The game was created in 4 weeks and I was responsible for the development. I got some helping hands for the GUI and some of the textures but most of the game was developed by me.
The first time they briefed me the Project it was supposed to be a very simple 2d game with a action theme and Hollywood flair. My suggestion then was to turn it into 3D and to use a physics engine for the bike handling.

bike_rooftop_game_s03.jpg

I wrote the basic engine as kind of a proof of concept in 1 week showing the 3d engine which generates random levels based on a seeding value and a 2d physic engine based on Box2d.

bike_rooftop_game_s04.jpg

For the pipeline I used 3dsMax (my favorite tool to create game assets). Booth meshes and or splines for the collision vector are saved in a single binary file and stored within the game SWF file.
This not only saves crazy amount of filesize but also initializes extremely fast because the data is already present and in the right order (no parsing like OBJ, DAE,...).

bike_rooftop_game_s01.jpg

For the level I created 4 different groups of models:
  1. base meshes holding: entry prefabs, in between prefabs and exiting prefabs
  2. front decoration prefabs
  3. rooftop decoration prefabs
  4. far background prefabs
All in all the game uses about 40-50 different 3d models to generate the levels with a random pattern.
The more you progress in the game though the more difficult the level becomes and only certain prefabs are used. Also gab spaces between the buildings are getting longer because your bike is also getting faster.

I recored this video but since this computer is just a DualCore and I have to run CamStudio in the background to record the video the framerate is not so smooth as it should be.
On high quality settings I get about 40+ fps and on low I have 60 fps - so the game should be fast on most computers out there.

[ame]http://www.youtube.com/watch?v=Va9XLI3WNBc[/ame]

within the next few days the game should be online so everyone can play it and compete against each other. I will add the official game link as soon as it gets online.

Replies

  • SyncViewS
    Offline / Send Message
    SyncViewS polycounter lvl 13
    Congratulations for the great results! It looks very smooth and enjoyable, despite the Camtasia resource thief. Parallax scrolling background layer reminds me to great old time games like Psygnosis' Shadow of the Beast, anyone remember? (20 years ago!?! Gosh, I'm feeling old).
  • pior
    Offline / Send Message
    pior grand marshal polycounter
    Quote of the year!
    I wrote the basic engine as kind of a proof of concept in 1 week showing the 3d engine which generates random levels based on a seeding value and a 2d physic engine based on Box2d.

    Badass
  • Xoliul
    Offline / Send Message
    Xoliul polycounter lvl 14
    Looks awesome, I really want to try playing this, and that's somethign i don't usually say about flash games.
    Also, sounds like you really found a great job ;) Definitely sounds fun to have that sort of freedom!
  • LoTekK
    Offline / Send Message
    LoTekK polycounter lvl 17
    Wow. Just... wow. That's crazy impressive. :O I tip my hat to you, sir. And congrats on both getting this game out and on finding a rad job. :)
  • Neox
    Offline / Send Message
    Neox godlike master sticky
    haha you are definitely one hell of a crazy dude :D
    very cool work
  • larolaro
    Offline / Send Message
    larolaro polycounter lvl 9
    Awesome! Hurry and post the link, i want to play :D
  • glynnsmith
    Offline / Send Message
    glynnsmith polycounter lvl 17
    This is ace, but I'm interested in playing the 3D version after seeing the screens, not the side scroller :P

    Seems an awful lot like Canabalt, too.
  • Xenobond
    Offline / Send Message
    Xenobond polycounter lvl 18
    Haha. Sweet!

    I can't wait to play this.
  • brandoom
    Offline / Send Message
    brandoom polycounter lvl 15
    Looks awesome. You have some mad talent. Congrats :)
  • killingpeople
    Offline / Send Message
    killingpeople polycounter lvl 18
  • Razorb
    Offline / Send Message
    Razorb polycounter lvl 15
    ya really fugin cool stuff i must say!
  • rollin
    Offline / Send Message
    rollin polycounter
    haha .. nice 1 :)
  • Slum
    Offline / Send Message
    Slum polycounter lvl 18
    Excitebike on steroids. looks awesome! great work as usual :)
  • Baddcog
    Offline / Send Message
    Baddcog polycounter lvl 9
    haha, I also thought of excite bike, loved that game.

    Congrats on this, very cool.
  • renderhjs
    Offline / Send Message
    renderhjs sublime tool
    thanks for the nice comments :)

    Magnum Force 10
    http://www.betheking.com.au/game/

    bike_rooftop_game_s05.jpg

    so it is finally online although it is still hidden in a way (but public), it will go mainstream tomorrow or Sunday - so I still have a day or some hours in between to give my final go.





    Initial development started in September the first day I arrived at work. I had a briefing with the others of what they already agreed on with the client to create. It was about a timing game inspired by the popular Canabalt flash game where you have just 1 key to jump and progress.
    So their initial design was about a 2d sprite motorbike game on rooftops with flash with Hollywood and action flair. Effects and lights or visuals were important to them so I suggested to go 3d. And so the first things I did were creating technical mockups explaining what I had in mind engine wise.
    bike_rooftop_game_s10.jpg
    The basic idea was to scroll/ clip through an endless level of buildings in 3d space each randomly generated through a seeding generator on the fly. But the bike and many other active elements would be displayed in flat planes.

    After I presented this idea to them some of the designers started on some mockups to get a go from the client.
    bike_rooftop_game_s11.jpg
    (the bottom background loop was something I started but that was never used for the game)

    And so my first taks for that week was to create a technical proof of concept demo that shows:
    • 3D engine
    • collision detection and physics
    During all weeks so I was kind of responsible for all the tech, pipeline and review / fix any art that would go into the 3d engine. I made a quick video showing most of the major demo progression steps:
    [ame]http://www.youtube.com/watch?v=sLYd6LPWU20[/ame]


    The 2nd week was a closer collaboration with the designers here at Soap, getting them into 3D texturing and explaining stuff for creating parallax scrolling layers, animated textures or diffuse textures.
    Some of the designers didn't even knew that their Photoshop CS4 could open 3D models :) CS4 was bitching again and a pain in the utter ass, the performance was barely usable but I think I'll switch to Blender or Sketchup next time so that the mac guys can preview their 3d models.

    While I was working on the 3D models and trying to unwrap them as fast as possible some of the designers already started with backgrounds and active sprites objects.
    bike_rooftop_game_s06.jpg
    Of course I had to script some custom tools and exporters in max in order to work efficient. Many of the scripts are part of older projects (like the race game engine) and include some nifty tools for snapping verts on a world grid much like most classic game editors. The advantage comes in when you need to make sure prefabs snap perfectly together later and that works best if you have some kind of 4,8,16 or 32 based unit grid.
    Exporting was simplified as well I just had to specify the target path and selected objects would automatically be created or replaced in folders. Each 3d model can hold 1 additional spline object for the collision detection.

    Most of the initial textures came from the designers but I reworked most textures and added stuff someone with low Poly modeling and 3d texturing experience has a better eye for. Like for example: reflections, gradients, transparent surface planes, blurred pixel padding and beveled corners (in the texture) to really pop out the 3d models and bring out the best with the limited technology.
    bike_rooftop_game_s09.jpg


    For the effects I got a FX animator here to make me some particles. They are used for the smoke, bullet shots and spark effects.
    bike_rooftop_game_s07.jpg
    it uses simple 3d space planes to project an animated texture that is cached from this animation:
    bike_rooftop_game_s08.gif
    At first our FX animator didn't understand what I meant by UV layout and why all animations were supposed to be in 1 animation all together :) but I explained him with a few illustrations how it works from a technical level and was ready to go.


    can't wait to get my hands dirty with Unity for some future project - time to push the polycount.
  • kwakkie
    Offline / Send Message
    kwakkie polycounter lvl 12
    Man I have to say I always love your stuff and you totally outdid yourself again here :D

    PS: Where are you from? Your name is 100% Dutch but you seem to be all over the globe haha :p
  • osman
    Offline / Send Message
    osman polycounter lvl 18
    Nice to see it finished, looks great and its fun, awesome job.
    Kwakkie get this: He's a dutch guy, raised in germany, working in australia. (right render?)
  • jacob07777
    Offline / Send Message
    jacob07777 polycounter lvl 15
    This is freakin legit. I honestly can't wait to play this game. I don't think there's been this much anticipation for a video game since Call of Duty Modern Warfare 2! lol
  • Ben Apuna
    Wow, 4 weeks!? Looks great!

    Congrats on your first shipped title over at Soap Creative :)

    Thanks for the breakdown/postmortem, it's an interesting read to say the least.
  • larolaro
    Offline / Send Message
    larolaro polycounter lvl 9
    It plays so well, nice work man!

    Best i can do is 940m
  • Mark Dygert
    Super badass buddy, really nice work.
  • mLichy
    Yeah, you are a crazy mother F***er, lol. Seriously, you can do everything, lol.
  • shotgun
    Offline / Send Message
    shotgun polycounter lvl 20
    i dunno half the things u explain but it looks very impressive. the game has an excellent feel and the physics work great.

    one thing that kept happening to me was that there would be a small ramp that would bump me just before a small big-jump ramp, so instead of climbing it for a big jump i'd land on it and topple down. think there should be a minimum distance threshold there
  • salman_fas
  • SHEPEIRO
    Offline / Send Message
    SHEPEIRO polycounter lvl 17
  • Gallows
    Offline / Send Message
    Gallows polycounter lvl 9
    The definition of manliness. How is box2D itself?
  • Quack!
    Offline / Send Message
    Quack! polycounter lvl 17
    Pretty awesome to see this much detail into game dev, no matter the scope. Cool stuff to see you explain something then dissect that when playing the game.
  • Michael Knubben
    Finally

    Haha. Those must've been a rough four weeks, keeping quiet for so long ;)

    Thanks for going into so much detail, I'll enjoy reading through this.
    How much of those effects are hand-made, and how much comes from animation libraries?
  • achmedthesnake
    Offline / Send Message
    achmedthesnake polycounter lvl 17
    freakin badass work man - and excellent in such a small time frame -
    hope sydney's not too hot and humid for ya :D
  • sama.van
    Offline / Send Message
    sama.van polycounter lvl 17
    Very good topic and work as well!
  • warby
    Offline / Send Message
    warby polycounter lvl 18
    looks great but i wished there was a bit more to the gameplay than just jumping at least acceleration / deceleration should be player controlled i feel ...


    anyway very impressive for such a small team and time frames !!!

    rock on !
  • DrunkShaman
    Offline / Send Message
    DrunkShaman polycounter lvl 14
    Nice work!!!!!
Sign In or Register to comment.