Modelling Development

I started off the modelling process by first understanding the anatomy of the origami crane. I learnt how to build my own origami cranes out of paper by follow some instructions from the internet. The helped me see the proportions of each part of the body, but also to understand where all the folds would be visible. Moreover it allowed me to have a physical reference that I could constantly study whilst modelling simultaneously.

for a little bit of fun and also to get an idea of the scale of our crane at a world scale, we made a giant origami swan. This was made from large rolls of paper, taped together and folded the exact same way as its miniature cousin. We would have liked it to be a bit larger after folding, but it would’ve been a lot more challenging to fold, than it already was and required more space than the library could offer!

Whilst modelling I went through few different variations of how the crane would look, i found it quite challenging at first to get the shapes I wanted, but on my third attempt, after I had thinned the model to make it look more paper like, I was more pleased with my results, it was then just refining to get the model I wanted. I was using some images of my crane models from different angles as reference for my model. This helped me get a sense of proportion.

Click these links to view the models in 3D

I have been using substance painter to create the diffuse texture to apply to my sub surface shader and to create a normal map to add some more details such as folds and creases


Down below are the extra textures I have created to apply to the subsurface layer. I felt it was necessary to use custom textures on the sub surface layers as well as the diffuse, it gave me a lot more control over the look and the detail of the shader. crane_textures

We can more clearly see how these two textures are effecting the shader by having a look at the test render below.  The darker texture is the sub surface colour, this is what is adding the dark almost marble like veins that run throughout the paper. I gave it this effect so the surface looked a bit more interesting and tactile, instead of being a really smooth and lambert like. The second texture is the scatter colour which specifies what colour will be scattered in the sub surface, although it make look a bit grey on WordPress it is actualy more yellow/orange. This is what gives me the warm orange glow that comes through the thinner parts of the model like the wings.



Here is the normal map, used to create the organic texture on our lily pads, made in Substance Painter. I have also used the sub-surface shader on the lily pads, since it gives a nice translucent effect around the thin edges. I have also increased the specularity which really makes the little veins pop. It was an artistic choice to make the specular colour orange and not a more realistic white. This orange would fit well with our autumn colour scheme.

Rigging: Painted Weights

After modelling the crane I sent it over to Henry for him to rig, I thought seeing as he would be animating it, it would make sense for him to rig the model so he would understand how it all moves. There were a issue with the skinning, causing some parts of the model to move undesirably, this is easy fixed by remapping the  painted skin weights. Essentially a texture that changes the influence of a joint on its surrounding geometry.


Rendering and IBL in Vray

Here are the settings I have used rendering the Audi car in Vray.

This first image is for setting up the IBL using vrays dome light, along with rectangle lights. The global illumination settings are similar to that of mental ray and it takes multiple small increases of the subdivisions to increase lighting quality, reduce noise, and reduce render times.


The next image is for creating render passes. It is much simpler in vray than it is in mental ray and only requires a few clicks. You can select the desired render passes from the left and add them to the right, this then apply each pass to the multi channel EXR file. Some passes such as Fresnel and ambient occlusion are not in the default render passes so you to create a custom pass using the extra tex pass. This then allows you to apply a shader to any pass to create the pass you want. In this example I am showing how to apply the ambient occlusion pass.redner-passes

Here are the render passes, in order they are, beauty, reflection, refraction, Fresnel, shadow, specular and ambient occlusion.

In vray to smooth a mesh for rendering it needs to be subdivided at the render stage not by pressing 3 or apple the ‘smooth mesh’ tool. This gives better results compared to maya’s subdivision method.subdividing


Ignoring the music that accompanies the hour long video, it is actually a brilliant source of reference on how the water should react to similar sized birds in the water, on a relatively calm surface. It also serves as reference for the animation of the crane and how the water will react when the crane pokes its beak into the water.

Here is the are some progress videos of the water simulation I have been running. Bifröst is very particular about scale. All of its calculations are computer in a real world scale where 1 unit is equal to 1 metre. Now, Maya’s default is 1 unit is equal 1 cm and even if you change this Bifrost works independently of Maya’s units. Because of this, interesting physics and interactions can occur which can be seen in image 1 where there isn’t enough interaction with the water and in image 2 where there is too much interaction. The final image is where I have the scale set properly. Because it’s built at cm scale we have to adjust the particle density and gravity so that the physics are relative to its scale.

  • 1 Voxel = 1 Maya Unit
  • Voxel = m
  • Gravity = 9.8m/s²
  • Liquid Density = 1000kg/m³

Convert to cm:

  • Gravity at a real world scale is 9.8m/s² and as I am working in a cm scale in maya need to I need to adjust me gravity and density accordingly. So there are 100cm in 1m so: 9.8*100=980m/s²
  • The liquid density is set at default to 1000kg/m³ which is approximately the density of water at room temperature. Because I am scaling down and it is being cubed, I need cube root or  1000  1000/1000/1000=0.001

With these adjustments the water now reacts accurately to any motion or force.

bifrost interface.png


The vorticity attribute calculates the accumulation of rotation magnitude (curl of velocity field) within voxels. The vorticity channel is not physically accurate, but can be used to simulate churning when viewing and rendering. I have disabled this as it was giving me some annoying effects of the water churning for too long, and it is not really noticeable when the water is quite still, it would just cause a longer sim time.

Bifrost Liquid Material

Here are my liquid material tests, I’ve been adjusting the Droplet reveal factor, surface radius and smoothing, within the bifrost meshing tab of the liquidShape node. By reducing the droplet radius and increasing the smoothing we get a much smoother surface, see the last image. with higer values the water is rendered in more detail and picks up more ripples. This isn’t exactly desirable for our water, as we want it to have strong reflection to match the still reflective water in the park.


By enabling the Bifrost Meshing attribute, Bifrost converts the voxels into a dynamic mesh, this greatly improves the render quality and also the render time.

  • Droplet reveal: Creates and preserves the detailing of the mesh
  • Surface radius: increases surface detail and adds more detail
  • Droplet radius: Increases the size of the droplets when the separate from the mesh
  • Kernel Factor: Adjusts the width of the surface smoothing kernel
  • Smoothing smooths the mesh
  • Resolution factor: increases the resolution but can cause long delays if set about 2-3

One problem I did encounter was that we wanted our water to look quite still and reflective to imitate the water of the pond. To achieve this effect I needed to have  relatively low settings, in the ‘surface radius’ and ‘droplet radius’; and the high settings on ‘kernal radius’, this really smoothed out the water surface, but at the cost of causing the water to become quite globular looking. This had a knock on effect on the ripples on the water not being as prominent as I had hoped. However they are still noticeable and having the surface match the live plate was much more important. You can see in the images above, where on the left image it has high droplet and surface radius’ and the right has low settings.


Here is a list of content I have found to help me troubleshoot any  of the problems i encountered and also what has helped me learn and understand Bifrost’s interface.

The first link is from the autodesk website; and although it does contain information on the whole interface, it does lack any description on how to use attribute.

This video helped to understand the basic concepts of how to set up the scene correctly. It also shows how to set up a guided simulation, whereby the water is driven by some geometry, I, however decided not to use a guided sim because it gave the surface too much motion and wasn’t reflective enough.

Here is a document I found that gives a clearer description of what each attribute does and how it functions. Although most of it seems to be right, it looks like someones notes from a lecture, so I take each note with a little bit of cynacism.