Jump to content
  • Advertisement
Sign in to follow this  

Trying to make a 3D platformer, but don't know where to start.

This topic is 3154 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hey all. I'm a bit of a newbie when it comes to the 3D engine scene, and I used to use a program called "3D Game Studio" by Conitec. It wasn't free, and used DirectX. I frown upon using DirectX, and I perfer OpenGL (my 64bit AMD64 computer setup loves OpenGL, it can get some really high frame rates!). I have looked at APOCALYX, a 3D OpenGL engine using Lua, but it seems the user community is dead and I don't want to use something that has no supporters. I thought I'd like to make a platformer game, featuring my website mascot, when she's been converted into 3D format. Before you ask "what is the platformer you ask", I'm talking about a 3D platformer like New Super Mario Bros on the Wii and related consoles. Crash Bandicoot is another example, I've attached some screenshots to help aid you to get an idea as to what I mean: http://image.com.com/gamespot/images/2009/292/960544_20091020_screen004.jpg This is a screenshot from New Super Mario Bros Wii. As you can see, it's a 2D Platformer, but Mario, the guy in the white and red outfit with a ball of fire is actually 3D. So, it's like 2.5D. The fish are also 3D Models. Crash Bandicoot is 3D with a twist, instead of left and right scrolling, parts of the screen are up and down scrolling: http://ui09.gamefaqs.com/1704/gfs_10923_2_2.jpg http://ui22.gamefaqs.com/1205/gfs_10923_2_16.jpg The latter image of Crash Bandicoot is what I'm trying to achieve. A 3D Platformer, however you're stuck with 2D controls (Left and Right movement only, etc). The game I'm prototyping is something like Super Smash Bros Melee's Adventure Mode (for people who have ever played that game). Can someone point me to a step by step guide or a engine with a GUI that can help me make this? As I said, I'd like to use OpenGL, as I don't want to be restricted with DirectX limitations. I'd be willing to pay someone to design the engine if it comes down to that. Cross-platform preferred, I code on Linux and run mainly on my Mac. If it's Windows-only, that's no biggie. Thanks in advance.

Share this post

Link to post
Share on other sites
Remember that the games you use for reference required a large group of experienced people (artists, programmers, designers, audio geeks, etc.), over the course of multiple years, costing several million dollars.

I'm afraid there are no point-and-click engines that can do quite what you describe, although GameMaker has a 2D platformer demo that you might be able to use. It certainly won't do all of what you described, but it can give you something close without much work.

There are many different engines out there that could easily handle it. Both Ogre3D and Unity3D are more than enough for what you describe. Both require a lot more development to build the game, but it would do whatever you designed.

Share this post

Link to post
Share on other sites
Since you are willing to pay you may prefer an existing engine like Frob pointed out. However, if you are into programming... then prepare for a long ride :) (unless you already master stuff like rendering). I did a Super Smash Bros kind of game once for fun. It worked pretty well, although the characters them selves were flat 2D sprites (had lots of photoshoots with friends, great fun).

2D or 3D, it doesn't matter that much when it comes to visualizing, texturing and eventually shading. Just make sure that you can:
- model a world and import it (or create your own editor to model that world)
- import (animated) models. Look at Milkshape for example.
- how to texture your models and maps
- render a background image plane(s)
- do some sprite effects
- how to render flat HUD components (health bar, timer, bonus items, ...)
- Put a camera on the side and let if follow your character, do some zooming, skake effects, etc.
- Eventually learn some shaders (although Super Smash Bros isn't that much of a technical highlight). Cell shading for cartoonish looks, or maybe you aim more for photo-realistic effects (check normalMapping, shadows, reflections, etc.).

I'd say, just for a start, find your favourite modelling software. I did my maps and models in LightWave for example. Then make or download a file importer to loads the mesh (and eventually its texture coordinates and materials) and render it. Create a good camera system and then start adding your models on that world.

A game like this gives you some big benefits. First of all, the world is ussually small (a few screens?), so you can skip complex culling algorithms, splitting it into sectors, streaming data in the background, and so on. Just load the whole thing at once. If your world is somewhat bigger, culling is pretty easy with a 2D side scrolling camera.

The physics is another story. In my game I drawed a bitmap that indicated to "solid" and "passable" pixels. This was used for collision detection. Furthermore only some simple gravity physics. But you can do a whole lot more, and maybe even easier. (Free) phyics libraries such as Newton can help you with accurate collision detection, gravity or even ragdolls. The only thing that is different, is your movement freedom. Enforce the library to move along the XY axis only. But that shouldn't be too hard.

That's the visual aspect. When that works a little bit, you can go into controls and AI. Probably you need some sort of custom made editor to define all the moves and keybindings(combo's). Button X makes the character move left, button Y makes him kick, pressing it fast again triggers another move, and so on. First you could make "versus" a gamestyle with 2 human players. Later on add CPU bots. I was able to make opponents without doing too complex stuff. If you want a fighting game, they basically just need to approach you and then start bashing/defending. You can perform their moves based on distance.
Long-range -> charge up, search bonus items or approach.
Medium-range -> approach, throw a fireball
Short-range -> combat!

The more difficult part is finding your way without falling into the abys. You can check your steps or even do (A*) pathfinding algorithms.

Good luck!

Share this post

Link to post
Share on other sites
Found a screenshot. Too bad I didn't make more back then. The camera is zoomed out pretty far, but the 2D (Mario) world, is that what you are aiming for?


Share this post

Link to post
Share on other sites
Sign in to follow this  

  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!