Install Steam
sign in
|
language
简体中文 (Simplified Chinese)
繁體中文 (Traditional Chinese)
日本語 (Japanese)
한국어 (Korean)
ไทย (Thai)
Български (Bulgarian)
Čeština (Czech)
Dansk (Danish)
Deutsch (German)
Español - España (Spanish - Spain)
Español - Latinoamérica (Spanish - Latin America)
Ελληνικά (Greek)
Français (French)
Italiano (Italian)
Bahasa Indonesia (Indonesian)
Magyar (Hungarian)
Nederlands (Dutch)
Norsk (Norwegian)
Polski (Polish)
Português (Portuguese - Portugal)
Português - Brasil (Portuguese - Brazil)
Română (Romanian)
Русский (Russian)
Suomi (Finnish)
Svenska (Swedish)
Türkçe (Turkish)
Tiếng Việt (Vietnamese)
Українська (Ukrainian)
Report a translation problem


And here is a look at a denser section in my game, also note that the hotspots mostly appear on the ferns which intentionally aren't using an opaque shader:
Most modern games still rely on masked materials with opacity maps for foliage, however, masked shading usually increases overdraw and can negatively impact performance, particularly in dense scenes, like a prehistoric jungle. My choice to focus on opaque materials improves lighting performance under Lumen, but also supports the artistic goal of achieving extreme foliage density, allowing the jungle to read as overgrown and dense without incurring the typical transparency-related performance penalties.
The wind animation for all plants is done entirely in the shader, so its very performant. This is mostly standard practice for foliage nowadays, but most of the time the animation itself ends up looking jank and wobbly, like the plant is underwater or something. So, I did a bunch of research into vertex colors and spherical re-projections to simulate the swaying and bending motion of individual plants, which makes the wind animation look really, really cool (you can see some of that here
Each frond of the plant gets a slightly different shade of blue, which is used to offset the overall swaying animation per frond. Then a gradient of red is applied to the overall plant to control where the swaying animation is allowed to play (i.e. no red at the base means the base of the plant will stay still). Then a gradient of green is applied to the tips of the leaves, which controls where the fluttering wind effect is applied for some added flare. Combining these colors together gives the above image, which looks pretty cool.
There are constraints between each capsule that are always trying to return the plant to it's "stable" position, kind of like little servos in a robot. By playing with the strength and damping coefficients of these constraints, you can create a natural looking bendiness when the capsules collide with the player, and get really clean looking foliage interaction! This is a more 'expensive' effect though, so you cant have this running on all plants at the same time, so I implement a management system that only swaps the nearby instances for their physics counterparts, then swaps them back at range, all seamlessly!
Loading
