VrayPattern is a plugin some of you might have stumbled across already. Honestly I had several glances at it on their website before we decided to get it, before we actually understood what it does. In fact I met many artists that never really grasped how Vray-Pattern works. Meanwhile we use VrayPattern a lot. And we really think, that VP is a great addition for everybody who is rendering with Vray, we try to make its basic function more understandable. Let’s get started!
Why could you need Vray-Pattern?
Put shortlyVrayPattern is best at adding geometric details to surfaces. If simple textures (as bump and normal maps) fail and displacement mapping is too slow or devours your memory, then you might want to give VrayPattern a try. Put differently: Vray Pattern can add TONS of geometric detail to ENDLESS surfaces. If you need gras or pebbles stretching for miles upon miles until the horizon, then VrayPattern might do that for you. In fact: Vray Pattern can do things NO OTHER PLUGIN can do (as far as I know). Seriously.
And it’s bloody fast doing so. In addition to the speed, it doesn’t require hardly any RAM. We literally rendered squarekilometres of detailed ground and RAM consumption didn’t even change noticeably.
So how does it work?
Think of it being a mix of Texture, Displacement and straight Geometry. Aha! No? Ok, we try again.
Let me explain this by example of grass-covered ground. Most Arch-Viz guys stumble rather sooner than later across this problem, that you need to render lush rolling hills of grass.
Guess we all started with some basic grass texture. It was green, but obviously this had little depth and looked moderately convincing. Next you probably tried using displacement. Better look, but that’s slow and uses heaps of RAM. Furthermore it still looked spikey and weird. Finally you tried placing single straws, but that was very tedious and again used a lot of RAM quickly.
You might have considered using a Mass-Scattering Plugin like Forest or Multiscatter; these are great and produce great looking lawns, but they also have some limitations: Have you tried filling 10 sqkm of “real” gras with them?
Vray Pattern might help here and brings various approaches together:
First you take your surface and define UV coordinates as if you would place a regular texture; just like the good old Gras-Texture.
Then you need to build a patch of Geometry. For VrayPattern we need a rectangular patch, with no falloff of density at the border, fully textured and mapped.
Finally you create a Vray-Pattern Object and assign the Geometry Patch and the Surface. Done!
Now it is a matter of details and fine tuning but the main task is actually done. Hit render and see yourself:
Ok two things show up:
The Pattern probably is pretty odd-coloured. Remember, that what you see rendered is VrayPattern, not the sample geometry. So simply assign the same material to the Pattern-Object. Done!
Additionally you might see some gaps. That is, because the density of our patch is lower at the borders. Making the gizmo of the Pattern-Object a tiny little bit smaller helps with the issue. Now you can refine what you did, by adding some variation with the Random-Segments option. This basically splits up the Sample geometry again in several patches and uses these randomly, which helps a lot to avoid tiling. For more in depth explanation check out the tutorial in Part 2
Furthermore you have the option to use Vray-Pattern only on certain IDs of your surface. This is great if you want to scatter only on some parts of you surface, like roof shingles.
Unfortunately there are some limitations, that are quite present when working with Vray-Pattern:
First: You need tilable geometry. For some uses (like a chain or tiles ;) ), this is easy to provide. For more organic uses ( like rocks) this can become very labour-intense. Of course you can use unmodified geometry as well, but then the edges will not match and you will have open edges at the UV-seams, which will look odd.
Secondary: Once you tediously provided this tilable geometry, guess what, you have a tiling issue. There are examples (like the chain-chair seen above) where tiling is desired. But if not, it really is an effort to get rid of tiling again. Vray Pattern has some random function, which allows you to divide up your sample geometry into multiple segments. Here VrayPattern randomly picks a sample and creates a non regular array. While this is a nice approach it additionally requires you to have a tilable geometry in multiple segments. As you can see quite some effort to be done.
Third: It would just be so much easier to pick multiple objects for the sample object and the distribution plane. That sometimes really limits what you can do, because you have to cramp everything into one geometry before scattering.
Fourth: Open edges will show up at the edges of your planes. Just imagine using VrayPattern for roof shingles, Appearantly a great use for this plugin, since tiling is desired and you can easily scatter the shingles across multiple roof parts easily just by defining the UVs. But weird edges will show up at the corners of the roof evidently and you need to have a good strategy to cover them.
To avoid this we think it would be a great idea to drive Vray Pattern with some additional map-slots, to further add organic irregularities.
Finally there is a bug concerning the handling of bump-mappings, that you should be prepared for, but there is some workaround by blurring the texture slightly. This could possibly be a minor bug to be fixed. But that is the sad part of this review:
The development of VrayPattern seems to be at a standstill. We have been using this plugin for a little while now, but there seemed to be no motion on the developers side to further add new features. In fact all requests from user side to further add new functionality remained unanswered. That is too bad, since we really would love to see further developments. But the forum entries as well show, there is little interest at the moment to push things further.
So I guess everyone who is interested in the plugin should be prepared to take the plugin as it comes. Now we illuminated quite some tricky parts of VrayPattern. Well, we are trying to stay honest here. Still, I would love to conclude that Vray-Pattern really can do amazing things and it is definitely worth checking out! There are tasks that no other tool I know can handle within 3ds-Max and Vray and this alone is quite special. If you are interested, move on to Part 2 of our Vray-Pattern Feature. Here we will show , how we used it in one of our favourite projects and hopefully show that it is quite a precious tool: Tutorial
And if you rather enjoy watching this on video go here!
Take care, Peter