Home Technical Talk

long 3d game level

Hi,
we trying develop 3rd person adventure game, the level 01 will be like this:

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

we should design with 3ds max 2009 large and long 3d game level, this will be long road will contains straight roads and curves roads, and contains many models besides the track, my questions:

- what is the right unit I'll use in 3ds max 2009 (meter or kilometer)?
- what is the best length of the road from start to end?
- what is the right modeling way with 3ds max 2009 to start modeling this road?

regards
iammfa

Replies

  • MoP
    Offline / Send Message
    MoP polycounter lvl 18
    What engine are you modelling for? An existing one, or is it your own custom engine?

    1. The units don't matter as long as everything in the game is constructed to the same unit scale. You could even just use generic units and not worry about meters or kilometers at all. If it's your own engine, ask your programmers what units they'd suggest working with. Most often an engine has its own internal method of measuring distance, it's probably best if you work with the same values (eg. if a programmer says 1 metre in the engine is 10 max units, then you can just work with that - if you want to make a 10-metre walkway then it should be 100 units long, etc).

    2. Your second question makes no sense. How can a road have a "best length"? It really depends what you're using it for... you should not have to ask that question, it's something you should be working out for yourself based on your game's requirements.

    3. Once again this is a bit of a weird question to ask. There are many valid ways you could start modelling this road. I'm not going to sit here and write out descriptions of each one, it's again something you should be learning for yourself.
    Hint: Splines are good for this sort of thing. Look into the Sweep modifier or the Loft modifier. If you want to do polygon modelling, then the Path Deform(WSM) modifier may also be useful. You can find more info on all of these things in the Max help files.
  • rooster
    Offline / Send Message
    rooster mod
    just to add something about unit scale- if you're working with physics, some physics engines seem to prefer certain unit types, so check that out too. I remember at work we switched from cm to meter because of this (i guess its because the numbers were smaller it's dealing with? numbers get pretty big fast using cm)
  • renderhjs
    Offline / Send Message
    renderhjs sublime tool
    the game Hercules instances a lot of graphics (sprites, 3d models [aka prefabs]). Most of such games or engines come often with a custom editor so the level designers can put all the assets together as a level.
    Think of a level editor just like a DTP (destop publishing) software like InDesign or Quark Xpress. Those software packages alone are totally useless you still need software like Photohop to create and edit the Bitmaps/photos and a package such as Illustrator for the vector graphics because InDesign or Quark alone don't have the features to do that- but they are superb when it comes to bringing different media nice together production ready.

    So what I was trying to say is that max often rather is a asset creator instead of a level editor. That does not mean that you cant use it as a level editor but it makes often more sense to develop a level editor to feed the engine with exactly what it likes the best and not some brute force raw data like a complete level as mesh with all the animations attached to it.


    If you work with a existing engine that already has a editor have a look at that instead and try to figure out how to use it to your advantage and how to quickly block out or design the levels you want.


    As for the road and unit question:
    Just get at least started somehow that might help you and others better to adjust things or give hints about certain things. You can resize (+xReset) things later anytime if the units should be wrong.
    From a personal engine and maxscript expierence I would suggest though generic units becuase thats what max handles internally anyway. The metric, kilometer,.. stuff has been rather added for architects and the kind of people that have to deal with real life simulations. For game engines (HL, Quake, Unreal,...) it always has been generic units because thats how game engines work as well.

    Little pro / con:
    pro:
    - Metric units make it easier for some people to grasp units, to get a feel for them because they can relate to them in real life (especially if they have a different background like architect,..)
    - you could easier integrate blueprints and other reference material in your level as trace source.
    con:
    - results often in numeric aka non integer values when converting or handling in the engine so that prefabs or block do not always snap 100% perfectly on each other
    - in most editors for engines (radiant, unreal editor,...) its generic units that are displayed - so often it might be easier to relate to them. For example in Unreal 1 a player height always was like 72 units - if I know that I know how to create a minimal door height in max, or like stair height recognition units ect.

    roads:
    check these tutorials:
    http://www.inspiredrealms.com/racetracktutorial.html
    and
    http://supertuxkart.sourceforge.net/Blender_track_modelling_tutorial
  • rooster
    Offline / Send Message
    rooster mod
    hmm render, we never had that integer problem since one ingame unit = 1m in maya, and its not hard to keep prefabs to a meter grid. i guess you're talking about when 1m= 1.x ingame units?
  • renderhjs
    Offline / Send Message
    renderhjs sublime tool
    well it depends on the engine and the scale of things (accuracy of the numbers). Its just that I often noticed that using generic units made it often easier to snap verts to world grid units (e.g 8,16,24,32,64,..) just like in the unreal engine for example or doom engine.

    whereas if you use metric units and set for example a size of 1.75 meters depending on the translation it might for example result into a conversion value of 278.211178 generic units which it will export in the end anyway. So depending on the digits after the "." on how the conversion is handles ( i read somewhere that max uses ~ 20 digits internally) it might differ slightly with some verts.
    Back in your engine depending on how it works it might be than translating your input data with a different accuracy because in that case you would hand over a scale value so that the engine knows how to handle your input "metric" units.

    Either way theoretical it might be possible that values from verts can differ especially if you have a mix of maya, max and perhaps other packages that export to the same engine. Oh well maybe its just nitpicking what I do here :)
Sign In or Register to comment.