IDE:VisualStudio 2017
Language:VB.NET/C#
图形API:Win2D
游戏引擎:ExperDot.EDGameEngine
本文将向你介绍一种粒子系统(Partical System)模拟植物的简单方法。
粒子将按照某种规则移动,且始终保留移动轨迹。
定向移动
粒子具有一个初始速度
粒子渐变
粒子的渲染半径逐渐减小,渲染颜色逐渐变浅
方向偏移
粒子始终朝着某个方向偏移
随机扰动
粒子在任意方向上随机受力
图1-1 定向移动
图1-2 渐变
图1-3 转向
图1-4 扰动
已经存在的粒子随机分裂为若干个新的粒子。
方向偏移
分裂时新粒子速度方向偏转,移动轨迹将产生分叉
粒子减速
分裂时新粒子移动速度减小,移动轨迹会越来越短
图2-1 分叉
图2-2 减速
现在,你可以随意调整参数啦!
图3-1 直线
图3-2 折线
图3-3 曲线
源码开放。下述博客是自然树的另一种实现方式。
开源链接:EDGameEngine.Visuals.Particals.Tree
相关博客:编程模拟自然(一):如何画一颗静态树
相关博客:编程模拟自然(三):更好的静态树算法
相关博客:编程模拟自然(六):如何画一颗动态树