Friday Rewind #13: A field of grain

7.6.2019 - JP Lyytinen


It’s asset creation time. This one is about creating an entire field of grain in real time 3d. The problem with assets like these is that you’ll need a certain level of visual complexity for the asset to remain plausible yet you are bound by the technical limits of the render engine. Another problem comes with the amount of stalks required. A single stalk is easy to get right, but once they start filling the screen the visual clutter increases. 

So Basically,

  • I need a lot of stuff
  • I can’t have a lot of stuff


Simple! Let’s not worry about technical stuff just yet and let’s focus on the visual side of things. Here’s a grain prototype:

Looking decent I suppose. At this point I’m only guessing how it will eventually look like in the game but I know I need a certain level of simplifying and exaggerating the scale of things a bit. The asset should read like a stalk of grain even from a distance.


Furthering the shapes. A real life grain stalk tends to be rather plain so i’m adding a few knots and a few leaves for the silhouette to have something in there.

  • The more detailed the silhouette, the more visual clutter it generates, but…
  • The more detailed the silhouette, the less individual stalks I might need in my grain field.

It’s an balancing act. I’m doing my best to keep the singular asset as plain as possible yet keeping as much detail as I think is required. Some things are inherently noisy and in this case you’ll need the noise for the asset to look correct.


I’m using Modo for texturing. As the asset is rather monotonous you can get pretty good results using a single variation texture. This colours random mesh parts with the set gradient.


So what about the field of grain? To have some idea how the asset would look like in multiple numbers i’m using Modo replicators for previewing. I have a base ground mesh, a surface particle generator and a replicator item placing the grain meshes in the scene.

Pretty dope. Of course this has very little to do with how the asset will look when rendered real time. So let’s have a look at that next. The offline render preview is using a polygon budget of an entire game so we need to simplify things a bit. I need to translate the high poly information to a low poly approximation. The lower the geometry resolution the less rendering resources the asset will be spending. The minimum visible polygon component is triangle. After some intensive testing I came to a conclusion that I can get away with baking the details into a simple quad.



Feeling spendy! I have added a few rotations and curves on the geometry in hopes of avoing a zero width polygon edges staring straight at the camera. That’s it! The game model consists of a single batch of grain meshes and these will be duplicated in engine to create a whole field.


Testing the asset in game.



Leave a Reply

Your email address will not be published. Required fields are marked *