找回密码
 立即注册→加入我们

QQ登录

只需一步,快速开始

搜索
热搜: 下载 VB C 实现 编写
查看: 5698|回复: 20

【VB】两种不同的粒子系统模拟

[复制链接]

1111

主题

1651

回帖

7万

积分

用户组: 管理员

一只技术宅

UID
1
精华
244
威望
743 点
宅币
24235 个
贡献
46222 次
宅之契约
0 份
在线时间
2296 小时
注册时间
2014-1-26
发表于 2015-8-1 01:52:25 | 显示全部楼层 |阅读模式

欢迎访问技术宅的结界,请注册或者登录吧。

您需要 登录 才可以下载或查看,没有账号?立即注册→加入我们

×
这两个实例的代码只是用来模拟粒子系统。2D的模拟通常可以轻松作为3D模拟的蓝本。此外,这样的例子模拟展示了一些简单的碰撞判断和力的计算方式。

其中一种是刚性的,就是粒子之间具有碰撞的效果,类似于我们现实生活中把大量玻璃球扔在地上的效果。
而另一种是柔性的,粒子之间进行排斥力计算,这个排斥力的大小取决于粒子核之间的距离(线性计算力的大小)。
这两种都不是采用的严谨的算法——其实都只是单纯地每一帧根据粒子自己的位置来计算力,而不会预判或者迭代计算。

都用了简单的碰撞检测。其中有个取得线与圆交点的函数并没有被使用——它太慢了。

实例1:刚性粒子模拟。可以看到粒子像鹅卵石一样,堆积在下面。
20150801014257.png

实例2:柔性粒子模拟。可以看到粒子在屏幕上飞来飞去,很难稳定下来。
20150801014500.png

实例中的粒子可以用鼠标点住并拖动。拖动时松开鼠标可以让粒子顺着鼠标轨迹飞出去。在第一个图上,那个大的粒子就被我拖住砸向右下角,把很多小的粒子轰飞了。
而第二个实例还有一种玩法就是把窗口拖得横向很长,而纵向高度只有那个大粒子的直径。可以看到模拟“滑膛枪”中发射弹丸的情况(脑补)
20150801014916.png

代码很简单,VB写的。
实例1的exe: Particle.exe (24 KB, 下载次数: 20)
实例2的exe: Particle.exe (24 KB, 下载次数: 23)

实例1源码:
游客,如果您要查看本帖隐藏内容请回复

实例2源码:
游客,如果您要查看本帖隐藏内容请回复

本帖被以下淘专辑推荐:

回复

使用道具 举报

17

主题

28

回帖

590

积分

用户组: 大·技术宅

UID
140
精华
5
威望
30 点
宅币
440 个
贡献
26 次
宅之契约
0 份
在线时间
54 小时
注册时间
2014-3-22
发表于 2015-8-1 17:26:09 | 显示全部楼层
学习一下,谢谢楼主
回复 赞! 靠!

使用道具 举报

2

主题

10

回帖

55

积分

用户组: 小·技术宅

UID
1054
精华
0
威望
0 点
宅币
43 个
贡献
0 次
宅之契约
0 份
在线时间
4 小时
注册时间
2015-8-19
发表于 2015-8-24 13:13:59 | 显示全部楼层
学习一下,谢谢楼主
回复 赞! 靠!

使用道具 举报

0

主题

76

回帖

6758

积分

用户组: 真·技术宅

UID
604
精华
0
威望
2 点
宅币
825 个
贡献
5853 次
宅之契约
0 份
在线时间
101 小时
注册时间
2014-12-20
发表于 2015-11-22 22:59:33 | 显示全部楼层
学习一下,谢谢楼主
回复 赞! 靠!

使用道具 举报

0

主题

70

回帖

164

积分

用户组: 小·技术宅

UID
1291
精华
0
威望
2 点
宅币
89 个
贡献
1 次
宅之契约
0 份
在线时间
2 小时
注册时间
2015-11-25
发表于 2015-11-25 16:49:33 | 显示全部楼层
回复

使用道具 举报

0

主题

5

回帖

124

积分

用户组: 小·技术宅

UID
1303
精华
0
威望
11 点
宅币
97 个
贡献
0 次
宅之契约
0 份
在线时间
11 小时
注册时间
2015-12-2
发表于 2015-12-9 23:44:24 | 显示全部楼层
这太有趣了...哈哈 研究下~
回复 赞! 靠!

使用道具 举报

13

主题

63

回帖

1326

积分

用户组: 上·技术宅

UID
888
精华
0
威望
0 点
宅币
302 个
贡献
948 次
宅之契约
0 份
在线时间
36 小时
注册时间
2015-5-31
发表于 2016-5-16 19:14:38 | 显示全部楼层
再来温习一下
回复 赞! 靠!

使用道具 举报

0

主题

1

回帖

8

积分

用户组: 初·技术宅

UID
2277
精华
0
威望
1 点
宅币
5 个
贡献
0 次
宅之契约
0 份
在线时间
0 小时
注册时间
2017-2-23
发表于 2017-2-23 19:45:49 | 显示全部楼层
感謝大大的分想 正須要
回复 赞! 靠!

使用道具 举报

1111

主题

1651

回帖

7万

积分

用户组: 管理员

一只技术宅

UID
1
精华
244
威望
743 点
宅币
24235 个
贡献
46222 次
宅之契约
0 份
在线时间
2296 小时
注册时间
2014-1-26
 楼主| 发表于 2017-2-23 20:17:37 | 显示全部楼层
best740 发表于 2017-2-23 19:45
感謝大大的分想 正須要

我现在都不好意思说这是我写的了!
回复 赞! 靠!

使用道具 举报

2

主题

10

回帖

5130

积分

用户组: 技术宅的结界VIP成员

UID
94
精华
1
威望
3 点
宅币
5097 个
贡献
10 次
宅之契约
0 份
在线时间
12 小时
注册时间
2014-2-28
发表于 2017-2-26 00:59:35 | 显示全部楼层
想看看第二种
回复 赞! 靠!

使用道具 举报

0

主题

18

回帖

48

积分

用户组: 初·技术宅

UID
2268
精华
0
威望
1 点
宅币
28 个
贡献
0 次
宅之契约
0 份
在线时间
2 小时
注册时间
2017-2-21
发表于 2017-2-27 12:35:25 | 显示全部楼层
学习下看看
回复 赞! 靠!

使用道具 举报

1

主题

2

回帖

15

积分

用户组: 初·技术宅

UID
2345
精华
0
威望
0 点
宅币
12 个
贡献
0 次
宅之契约
0 份
在线时间
1 小时
注册时间
2017-3-23
发表于 2017-3-23 10:02:13 | 显示全部楼层
楼主功夫了得
回复 赞! 靠!

使用道具 举报

0

主题

2

回帖

8

积分

用户组: 初·技术宅

UID
3053
精华
0
威望
1 点
宅币
4 个
贡献
0 次
宅之契约
0 份
在线时间
0 小时
注册时间
2017-11-6
发表于 2017-11-6 09:56:20 | 显示全部楼层
本帖最后由 zbaigao 于 2017-11-6 09:57 编辑

FPS很高呀,想知道楼主大大是怎么做到精确计时和刷新屏幕,并且可以获取鼠标的,用timer肯定办不到,获取鼠标从而拖动小球看上去也不是写一个Click可以办到的
回复 赞! 靠!

使用道具 举报

0

主题

2

回帖

13

积分

用户组: 初·技术宅

UID
5289
精华
0
威望
0 点
宅币
11 个
贡献
0 次
宅之契约
0 份
在线时间
1 小时
注册时间
2019-9-10
发表于 2019-9-10 16:50:04 | 显示全部楼层
学习一下,谢谢楼主
回复 赞! 靠!

使用道具 举报

5

主题

5

回帖

185

积分

用户组: 小·技术宅

UID
5408
精华
1
威望
2 点
宅币
166 个
贡献
0 次
宅之契约
0 份
在线时间
12 小时
注册时间
2019-10-30
发表于 2019-10-30 22:54:35 | 显示全部楼层
前来学习,感谢分享
回复 赞! 靠!

使用道具 举报

0

主题

53

回帖

103

积分

用户组: 小·技术宅

UID
5780
精华
0
威望
2 点
宅币
46 个
贡献
0 次
宅之契约
0 份
在线时间
0 小时
注册时间
2020-4-3
发表于 2020-4-3 21:06:59 | 显示全部楼层
看看学习下
回复 赞! 靠!

使用道具 举报

0

主题

2

回帖

25

积分

用户组: 初·技术宅

UID
6299
精华
0
威望
6 点
宅币
11 个
贡献
0 次
宅之契约
0 份
在线时间
1 小时
注册时间
2020-10-10
发表于 2020-10-10 18:59:11 | 显示全部楼层
谢谢分享感谢啊最棒的
回复 赞! 靠!

使用道具 举报

0

主题

2

回帖

-12

积分

用户组: 假·技术宅

UID
5567
精华
0
威望
-6 点
宅币
3 个
贡献
-5 次
宅之契约
0 份
在线时间
3 小时
注册时间
2020-1-31
发表于 2020-10-13 17:13:06 | 显示全部楼层
: 【VB】两种不同的粒子系统模拟 [修改]
回复 赞! 靠!

使用道具 举报

0

主题

3

回帖

23

积分

用户组: 初·技术宅

UID
7848
精华
0
威望
2 点
宅币
16 个
贡献
0 次
宅之契约
0 份
在线时间
1 小时
注册时间
2022-5-20
发表于 2022-5-20 18:47:36 | 显示全部楼层
学习一下,谢谢楼主
回复 赞! 靠!

使用道具 举报

0

主题

17

回帖

51

积分

用户组: 小·技术宅

UID
2974
精华
0
威望
2 点
宅币
42 个
贡献
0 次
宅之契约
0 份
在线时间
8 小时
注册时间
2017-10-18
发表于 2022-11-4 11:35:16 | 显示全部楼层
学习~
回复

使用道具 举报

QQ|Archiver|小黑屋|技术宅的结界 ( 滇ICP备16008837号 )|网站地图

GMT+8, 2024-4-20 12:53 , Processed in 0.054498 second(s), 40 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表