In all the games I've worked on, the the Asset Creation Pipeline goes something like this:
- the concept artist (for levels/backgrounds/level models) or character artist (for models) will generate sketches for characters/levels/etc. usually multiple options are given to the creative director / lead art to decide which one they like better.
- The concept / character art that has been approved is given to a modeler to use as reference. Sometimes additional profile/front on art is done by the character artist to provide a cleaner frame or reference for the modelling process. I've seen many a modeler with the concept art stuck up within 3d max/maya/etc as direct reference.
- The modelers typically generate the base textures for the model as well, usually with the correct shader materials for the runtime. shaders are used to render the model in the game, and may have specific texture/uv/etc requirements which need to be provided by the modeler or assigned texture artist.
- It will be the Level Designer's job to piece together the assets to "build" level itself.
Its unusual for an entire level to be built as a single piece of geometry. Most levels are built of pieces, or sections. (eg: infamous used a set of hexagon "tiles" http://www.gamasutra.com/php-bin/news_index.php?story=118581 and skyrim (and many others) use a lego style approach to piece together levels http://www.gamasutra.com/blogs/JoelBurgess/20130501/191514/)
There's usually a level editor of some description involved in this process, although many games have used 3d modelers as "level editors" for instancing previously created assets.
- Once all this is done, the assets are typically processed by the Toolchain which turns the 3D Modeler friendly files into game ready data which can be loaded directly into the Runtime.
Toolchains (the bit that takes the raw assets and transforms them into game ready data) are often some of the most complicated pieces of engineering in game development. They need to talk to many different applications, understand many different file formats, and also understand how to transform data into a more efficient and instantly usable format. Toolchains typically also perform lighting pre-passes, vertex welding, LOD generation and so on. Often building the entire data set for a large AAA game will take a very long time, often greater than 8 hours for a complete rebuild. So Toolchains typically also contain distributed processing to spread the load across all the PC's in the entire studio.
The Runtime is the game itself. The executable which runs on your PC, or Console. Inside the Runtime there will be a system called a Resource Manager. It's the Resource Manager's job to load the assets requested by other systems within the game.
E.g.: When you tell the game load into a Level, the Level's metadata will provide the Resource Manager with a list of which assets need to be loaded to display the level. Likewise, each Asset will contain a list of any Textures, Materials, or Sub Assets that are required to be loaded.
- Once everything's actually loaded into memory. The game will send things which are visible to the Renderer which will then interact with the API used to actually draw things on the screen.
Programmers can (and do) generate vertex information by hand. This is typically called "Immediate Mode Rendering". It's not very efficient, and is only used for situations where its not possible to use pre-generated, or shader manipulated vertex data. Eg: UI Rendering, Fullscreen Quads.
Typically 99% of the objects onscreen will be pre-generated vertex information rendered in "Retained" mode, With shaders performing any manipulation required. Eg: Skinned Animation