I'm trying to render a stadium crowd with karma but keep running into memory issues and I'm looking for any help in how others might have solved this.
Any example scenes, documentation or tutorials I've found always seems to be dealing smaller crowds.
The stadium has around 55000 people which are a mix of two different agents, male and female.
- Each agent has around 20 different layers for body, clothes, shoes and hair card variations.
- Each agent is around 15000-17000 polygons depending on layer combination.
- Random mix of about 20 different animations that they are transitioning between.
- 8 id primvars to handle texture variations.
If I cache out the entire crowd, load it in to solaris with a sopimportcrowd as skelroots and render it from a shot camera that only sees about 15000 of them in the camera frustrum it uses around 210Gb of ram.
If I then use the crowd procedural with a lod threshold of 5 it reduces memory usage to around 177Gb but introduces popping.
Third option I've tried is to cull the crowd based on the camera before loading it into solaris which reduces memory usage to around 70-80Gb but that is still a very large amount of memory and makes the usd export process very slow as it has to be done per shot.
Is there maybe a way to prune/cull from the camera directly in solaris that would reduce memory usage?
Saving us the problem of having to export a new crowd for each shot.
If possible I want to avoid having to start splitting up the crowd and render them in sections as that introduces a lot of other problems like exponential growth of amount of render layers and comp layering issues.
How have you handled this in the past? Any tips would highly appreciated.
We are using houdini 20.5.410 on windows 10 in case that matters.
How to render large crowds in karma?
80 0 1-
- AlexOddbratt_CPHVFX
- Member
- 28 posts
- Joined: Aug. 2019
- Offline
-
- Quick Links