I'm Enrico Cerica and I'm glad to share this CG experience with you.
This is not to be considered as a tutorial, it's the making of my project "Magic Bullet", so you will not find "how to" workflows neither a detailed step by step process to achieve the result but helpful information assuming you already have some experience with Blender & Yaf(a)ray, UV Mapping, materials definition and lighting.
If you'd like you may send your feedback about this making of: firstname.lastname@example.org
About the image
I had the "Magic Bullet" idea two years ago and it was mainly a texturing exercise and a good opportunity to learn about UV mapping. Well, this is not a very complex scene and this is probably the main difficulty as I noticed that in such a simple environment, the details are probably the key to get a realistic result.
At this moment I rendered the scene with Yafray ( http://www.yafray.org ) and some weeks ago I decided to make a new rendering with Yaf(a)ray which is the successor of Yafray and still in development.
Modelling the box
Let's start by modelling the box. First, I drew the box as if it was unfolded to get all the faces. Before folding them to get the 3D volume I extruded the unfolded faces to set the thickness of the paperboard. I also extracted the UV map as these operations are easier and much more efficient in this 2D situation. During this step I also added several edges corresponding to the folds locations and created groups to identify each face, this will help to select them separately once the box is assembled.
It's now time to fold the box; I rotated each face around the folds until getting the box as it appears in the scene. I deformed some parts of the paper board as it would be after it has been opened and manipulated.
Modelling the bullet
There is nothing special for the bullet, just a cylinder and a stretched hemisphere. The back of the bullet should be a bit more elaborated to reproduce the primer. As I will texture the bullet based on an UV map, I've defined seams to help during the creation of the UV face layout and to get a much more uniform map. Metal shaders will then be applied over that UV map.
Modelling the plastic containers
The plastic container should hold 16 bullets, so I started with a single plane and I divided it based on the size of the bullets. I also add the subdivisions needed to split each cell. These splitting areas will be filled and bumped with dotted lines during the texturing.
Now we should give to each cell the required volume to contain the bullet. Before modifying this mesh, I duplicated it, the copy will be used to create the thin metallic sheet used to cover and close the cells.
I used the subsurf modifier to get a smooth round volume and moved up the vertex corresponding to each cell. I also moved the splitting areas a little bit to make them more evident. I finally extruded the mesh to give some thickness to the plastic.
These 2 elements (plastic + metallic sheet) will then be duplicated to create the second container on top of the first one. This container should be modified as two bullets have been extracted from it. Once again, before changing the geometry of the metallic sheet mesh, I generated the UV map. Firstly the 2 empty cells are deformed as if they were pressed to expulse the bullets. Secondly the metallic part corresponding to the opened cells is torn and deformed. As the metallic sheet will be on top and will be the visible part of the container, I applied a fractal subdivision to get a less smooth surface.
Modelling the notice
Last but not least, I modelled the notice. I added a plane and subdivided it into 8 vertical bands and 2 horizontal bands. Based on this mesh I created the UV map.
I then folded the vertical bands in accordion and finally I folded the horizontal bands to get the final result. To reduce the rigidity of the notice I made several subdivisions, I added a subsurf modifier and I moved some vertex to raise the corner and to separate the sheets in a less uniform disposal.