Making the Massive in Bryce
Ever wanted to put a huge number of figures into a scene in Bryce? Or build a city? A while ago, I received a challenge to make an image of an army in bryce. Being on a PIII 450 with 320MB of ram at the time, it was obvious that this could not be put together in one single scene file. Hence I worked on the idea of building the scene in sections, rendering each part of the scene separately, and then joining all of the renders together afterwards in an image editor to form the entire image.
Step 1 - Setting the scene.
Once you've worked out what you want your image to be about, you need to divide all the elements in the scene into two parts - the environment and the fine details.
By environment, I mean the ground, buildings, the sky, the lighting rig you may be using, any volumetric fogs and hazes you may want in the scene, large trees that may cast shadows over a large part of the final scene - i.e. the big detail.... the setting for the scene... the basic things that everything else in your scene will be placed around or have their locations determined by. For an image of an army marching though a field, the environment would be the field, while for an aerial shot of a massive city, the environment may just be the ground the city sits on with the roads shown.
The fine detail would be the small stuff - for example it would include small shrubs and plants that cast shadows on only a small area of the scene, people, small rocks.. or in the case of the city mentioned above, the fine detail may be the buildings and individual city blocks.
For this tutorial, I'll use one of my images in which I made a battle scene in a field as an example of this process.
Figure 1 shows an example of the environment for the image. As you can see, it basically is the bare bones of the scene - i.e the field, most of the distant grass, the sky backdrop, background ruins, lighting, and a couple of volumetric smoke clouds to help with depth. Also, at this point, choose your camera location that you'll use for your point of view and save it in one of the memory dots on the top left of the bryce GUI.
Now save this environment scene to a file and name it something obvious like environment.br5.
In general, when you're making a scene like this, keep everything to the same scale if you can. Also, once you've made your basic scene, make a screen grab of the empty scene from a top down view - this will come in useful when you start putting things together later on.
Step 2 - Dividing your scene up.
The next step involves a bit of planning and requires you to work out how to divide your scene up into regions. The basic idea behind doing this is that you will build the fine detail that is in each region separately, then render each region of the image separately. In effect you're breaking all the fine detail up into smaller sections which are individually less resource/memory hungry than the total would be.
For this particular image of the battle in the field, I divided the area where the combatants would be into several different regions. The first region was the immediate foreground, then there were several regions behind that, and several more behind that and so on going from the front of the scene to the back of the scene (Figure 2). The exact size of the regions can be varied once you start putting the detail into them - at the moment it's just a rough guide to help you keep track of things later on.
It's normally best, when dividing your scene up into regions, to make use of any existing structures in your environment as the boundaries of your regions. You mainly do this to limit the appearance of "seams" in your image that may occur at the boundaries between adjacent regions and to limit occurences of when fine detail that's being added to one region may cast shadows/reflections onto the detail thats added in another region.
Also, you may want to vary the shape of your regions depending on what you want to do later for post processing of your image. For example, if you plan to add a lot of depth of field or haze effects in postwork, then you may consider making your regions into wide but not very deep shapes rather than the approximately circular shapes I've used in this example.
Step 3 - Making the detail.
Now that you've thought out how you want to make your scene, the next part is to pick a region, then fill it with the detail.
The best way I've found for doing this is to load the environment scene that was made in Step 1 into Bryce and then remove every bit of the environment scene that isn't in the region that you're about to detail. Once you've done this, group everything thats left into a single group (called the "base" group). Make sure you do not move this base group or the elements in it. If you do move it, then when it comes to merge the fine detail back into the environment scene later, things will be out of place in your scene. Once you've done this, you can load/import/add/position all of the detail/people/models/small plants/city blocks that will appear in this region onto this base group.
Using only a part of the environment for the base instead of the whole environment will save system resources/memory and thus make life easier. By using the camera point of view you stored in the memory dot in Step 1, you can also do quick renders just to see how the added fine detail fits into its part of the image. Once you're happy with how the detail of this first region looks, delete the "base" group and save all the detail/people/models/small plants into its own br5 file. Name it something obvious like region1_detail.br5 (Figure 3).
Then repeat this for the next region (i.e. load the environment scene, trim it down to only what's in the second region, detail the region, remove the base, save as region2_detail.br5) and so on until you've done all the regions. At this point you'll have one environment.br5 file along with a host of regionXX_detail.br5 files.
In general I tend to try and keep all the individual region .br5 files down to a size dictated by the following formula:
br5 file size of one region's detail < (total ram - ram needed for OS)/2 - (file size of environment.br5 file)
So what this means is that, if you have 320MB of ram, and your OS takes about 60MB and the base environment br5 file is about 40MB, then you would limit your detail br5 file sizes to about 90MB (ish) or less. This is a result of the general rule of thumb that says that Bryce needs twice the size of the .br5 file of free ram to load a file. You can of course use br5 files bigger than this for the detail of each region, but Bryce may end up becoming a little unstable and it may also have to use the hard disk to render with, which will result in a much much slower render.
Another thing I've found useful is to get a screen grab of the top down view of the detail (when its still on the base). You can then add this screen grab to your top down screen grab of the empty environment you took earlier and build up a top down map of all the regions you're making - this isn't essential, but it can really help with keeping track of things and visualizing where I'm up to and how things in the regions will relate to each other. This is shown for the battle scene in Figure 4 - the different coloured groups show where the different regions are - note that they are different to what I originally planned, yet still similar in overall layout.
Step 4 - Poser figure optimization.
This section mainly deals with scenes that use lots of Poser figures, but is easily adaptable to scenes using other textured objects.
When using Poser figures theres a couple of things you can do to minimise their drain on your computer's memory. The first is to simply use as low a resolution figure as you can (that still looks good) for figures that are a fair distance from the camera - use your Michaels and Vickies up close to the camera where all the detail will be seen, but for figures in the distant background, don't be afraid to go for the Poser 4 default figures or those really lo-res Poser 3 figures if you can. The lower the polygon counts for the figures then the more figures you can put into each region, thus reducing the number of regions you'll need to use (it's much easier dealing with only 3 groups of 50 soldier figures for a background mass of troops rather than 50 groups of 3 high detail soldier figures).
The other things you can do relate to the textures that the figures use. The first is to reduce textures to what you actually need - e.g. a 4000x4000 texture may look great up close, but when the figure is going to be a couple of hundred meters from the camera, a 500x500 texture may look exactly the same (and may take up to as little as 1/64th of the memory that the 4000x4000 texture would when loading).
The other thing you can do to reduce the hit on your computer is to go into your Bryce picture texture library and remove any duplicate textures from it. This is mainly useful if you're using lots of figures that use the same texture.
As an example of how to do this, consider Figure 5 where we have 5 similarly textured soldiers in the scene. In this case, going into the image library shows that the texture has been loaded 5 times (once for each soldier - these figures were all loaded into the scene from the Bryce object library where they had been stored). To remove the duplicate textures, go back into the main scene and select all the parts of the soldiers that share the same texture. In this case, the duplicated textures are those used to uniform the figures, so we select all the uniforms. Then we go into the picture library and select just one of the repeated textures as the one that shall be applied to all the figures, and delete the rest.
By doing this, you will get rid of the duplicate textures, thus reducing what Bryce saves and loads for the scene without affecting how your image looks. In this simple example there was a 25% saving in the size of the saved br5 file. On other scenes, depending on the number of duplicated textures and how large they are, the space saving can be much much more, thus meaning that you can fit a lot more into each region of detail.
Step 5 - Rendering the scene.
Now it comes to the render stage. Basically what you do here is firstly load your environment scene from step 2, then use the "merge" command (Figure 6) to merge one of your region .br5 files into the environment file. Then you can click on the camera memory dot, which will move the point of view to your saved camera position (from step 2) and you can then render that region of the image. Once you've done this, select all of the detail that is in the region (all the fine detail you just merged, not the environment) then render an object mask render of that fine detail. This will give you a mask image in which everything you selected will be white and everything not selected will be black. You will use these object mask images later when it comes time to composite the final image together.
Repeat this render process for each region in the image (rendering only one region at a time). After this you should have a collection of rendered images (one for each region) and their masks as shown in Figure 7. It can also be a good idea to get a render of the empty environment.
Step 6 - Putting it all together.
In this part we go into our image editing program of choice. What follows in this step is for Photoshop, but it will work just as well (I presume) in most advanced paint programs that can handle layers and masks.
Open your environment render and then open the image of the rearmost region in your scene that you made. Add the image of the rearmost region as a new layer on top of the environment render. Then choose a layer mask option for that new layer and load the object mask render you made for that region into its mask channel.(Sometimes the object masks don't need to be used - this mainly applies to images where the individual region images don't overlap each other. For the case of the battle image where the region images are in front of and behind each other, I had to use the object masks.)
Then go to the image of the next-to-rearmost region and add it in the same way, but this time putting it on top of the layer that contains the most rear region's image and add its own layer mask. Continue adding the images of the various regions, working from the rearmost regions to the frontmost regions so that your Photoshop image is composed of layers as shown in Figure 8. Compositing the layers in this fashion will ensure that the objects in the scene will appear in front of and behind everything they should.
At this point you have your rendered image... now its up to you how you finish it with whatever post procesing you may want to do.
Step 7 - ***Known Issues***
There are two main issues that may need to be addressed in your image that result from the use of this rendering in layers (object mask) technique.
The first is that by using the render masks in the way described above, the shadows that the fine detail casts onto the ground and other parts of the "environment" will be lost - a result of the object mask render being a mask of only the detail objects in the scene and not their shadows. Thus the mask will in effect mask out the shadows that the figures would be casting on the ground (or on nearby walls in the environment, for example). Figure 9 gives an example of this problem as it effects the composite image of a group of soldiers moving over a paved surface. In this example, you can see how the shadows that the soldiers should be casting onto the ground aren't there as the black and white mask of the soldiers doesn't take them into account.
The simple fix to this problem is to alter the black/white mask for each particular region where this is a problem so that mask will no longer mask out the shadows as they fall onto the environment objects. This is done by painting a white section onto the mask in the position that would match up with where the shadows should fall. For the example in Figure 9, the mask was altered so that it included the ground underneath where the soldiers are standing in the scene. Thus, when the image is put together, the shadows now appear where they should.
The other main problem with the render in layers technique is that there is no interaction between the adjacent regions - i.e. shadows or reflections that would be cast from the added detail in one region onto the detail in another region won't appear. This is because the two regions aren't rendered at the same time.
The two ways around this involve either choosing your regions more optimally so that the detail in one region doesn't cast any shadows or reflection onto the detail in another, or to make the detail in the two regions where this is a problem overlap with each other by a little.
Figure 10 shows an example of this issue. The image is made up of two separate regions of Poser figures in close proximity to each other. The various figures cast shadows onto other figures in their own regions but not onto the figures in the other region which leads to the shadowless seam that you can see along the boundary between the two regions.
This can be easily fixed by having a small overlap in the two regions (in this case one column of figures). It's very important that the figures and detail in the overlap part are the same and in the same position relative to the environment in both regions. Then when you render the two regions separately, make the object masks, and composite them together the shadows will be takn care of. The size of the "overlap" will be function of what sort of shadowing is happening in your scene and on what the objects are that are creating the shadow issues.
Similar overlaps to these may also be needed to make sure that reflections appear where they should, such as those that would appear on shiny armour or some such things.
Step 8 - The end.
Well that's it. Instant army. Or cityscape. Or crowded city streets. Needless to say, rendering a scene in layers can be used for many other things as well as just making scene construction easier, including lighting effects, depth of field effects, atmospheric effects such as distance haze...etc etc.
To see this technique being used as just one part of the overall design process of an image, along with complete scene files, models, and walkthroughs for that image, see the Masters Series Tutorial written by Hamfast that's available in the DAZ Store.
If you have any questions concerning this tutorial, feel free to email me on firstname.lastname@example.org (make sure you put the second "d" into it).