Let the wind move the trees and grass #186
Labels
No labels
accessibility
animation
audio
bake
blocked
bug report
controversial
cosmetics
documentation
easy
economy
events
feature request
gadgets
hard
impossible
medium
multiplayer
physics
rendering
social
ui
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Blocks
#215 Float over campus in a hot air balloon
elsie/liuverse
#227 Fly kites and launch model rockets
elsie/liuverse
Reference
elsie/liuverse#186
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The campus is full of trees and, soon, undergrowth (#89), and none of it moves. A wind field — direction, strength, gusts — should bend the trees, ripple the grass and push the clouds, with a rustle that rises and falls with it. It is the difference between a diorama and a place.
How it fits. Trees are instanced
TreeBatches and the undergrowth is vertex geometry; a wind term in the vertex shader costs almost nothing and needs no CPU animation. The wind state belongs with the weather and the sky, and the audio can read the same number. Gusts should be spatial and slow, not a global sine.Scope.
Related. #227 (kites), #215 (balloon), #187 (seasons), #89 (undergrowth).
Implemented.
liuverse-world::windis one field — a veering base direction, gust bands travelling downwind, and a speed — and the same value bends the trees and grass in the vertex shader, drifts the cloud panorama, lifts the kites and carries the balloons, and drives the wind bed and canopy rustle inliuverse-audio. The debug panel can turn and strengthen it live. The module landed with the kite work (b6c6bdd) and the base is southerly since784275e. Closing as done.