惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

酷 壳 – CoolShell
酷 壳 – CoolShell
H
Hacker News: Front Page
P
Palo Alto Networks Blog
T
ThreatConnect
Apple Machine Learning Research
Apple Machine Learning Research
博客园_首页
T
True Tiger Recordings
P
Privacy & Cybersecurity Law Blog
B
Blog
IT之家
IT之家
Last Week in AI
Last Week in AI
F
Full Disclosure
Hacker News: Ask HN
Hacker News: Ask HN
C
Comments on: Blog
Microsoft Azure Blog
Microsoft Azure Blog
C
Cybersecurity and Infrastructure Security Agency CISA
Microsoft Security Blog
Microsoft Security Blog
博客园 - 【当耐特】
N
News and Events Feed by Topic
NISL@THU
NISL@THU
腾讯CDC
雷峰网
雷峰网
Security Latest
Security Latest
李成银的技术随笔
M
Microsoft Research Blog - Microsoft Research
L
LangChain Blog
L
Lohrmann on Cybersecurity
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
C
Check Point Blog
Y
Y Combinator Blog
Recent Announcements
Recent Announcements
博客园 - Franky
N
News | PayPal Newsroom
V
V2EX
A
About on SuperTechFans
The Register - Security
The Register - Security
月光博客
月光博客
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Google Online Security Blog
Google Online Security Blog
MyScale Blog
MyScale Blog
Cisco Talos Blog
Cisco Talos Blog
Vercel News
Vercel News
WordPress大学
WordPress大学
C
Cyber Attacks, Cyber Crime and Cyber Security
The Hacker News
The Hacker News
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
爱范儿
爱范儿
A
Arctic Wolf
L
LINUX DO - 最新话题
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

博客园 - 太傻

小水滴 “星际穿越”观后感(宇宙只是界面,科技永远触摸不到世界的本原) 惊涛怪浪(double dam-break) -- position based fluids Loren Carpenter与分形山脉 Rendering of Translucent Object With PRT(原创) siggraph 2007 course notes(online) 3d fire(CPU版) 3d smoke(CPU版) 古画与Image Quilting WWW.GAMEDEV.NET的每日一图 - 太傻 - 博客园 烟的绘制(smoke rendering) 2006.03.14更新[ 增加新DEMO 使用Vectorized Jacobi 方法, 速度可提高60%] GPU为什么跑得快? 过程纹理(Procedural Texture) [2005-11-20 update] 想成立一个GPU实时渲染的交流网 SIGGRAPH 2005 papers 里的中国人 人工鱼(Artificial Fishes) fluid simulation Simulating Ocean Water (2) (2005-03-31 update) - 太傻 Simulating Ocean Water
“Target-Driven Smoke Animation”的GPU实现 (updated 2006.05.02 改进了DEMO,可以在NVIDIA显卡上运行了)
太傻 · 2006-03-26 · via 博客园 - 太傻

        电影魔戒首部曲前一刻钟中有这么一幕:111岁的Bilbo与魔法师甘道夫正谈论着烟草,突然Bilbo吐出一个大烟圈,而甘道夫更是了得,笑着吹出一艘美丽的帆船,航行穿过了Bilbo烟圈。接着镜头便转向了一个巨大的焰火宴会。美国的电影特技公司是如何实现这一效果的,不得而知。不过SIGGRAPH2004中的一篇文章“Target-Driven Smoke Animation”却是公开了一种烟雾动画控制技术(smoke animation control),达到了与电影中类似的效果。此论文是以色列人撰写的(The Hebrew University of Jerusalem),SIGGRAPH2003中“Keyframe control of smoke simulations”引起了他们对此方向的兴趣,提出了新的思想,方法不复杂,但是最后的结果倒是出奇的好。通过查阅文献,最初公开发表研究"烟雾动画控制技术"的论文是个中国留学生(Object Modeling and Animation with Smoke),Lin Shi,复旦的本科,现在美国读博士,成果累累。中国的精英在国外有许多,一旦有了吸引这些有真才实学的学者回国的机制,我想实现科技的腾飞是指日可待的。
      原文的实现全部使用了CPU,运用精度很高的二阶偏微分数值解法,时间步长也较小,因此最后形成的动画图像非常细腻。我使用了GPU(ATI 9600),采用了大步长,一阶隐含数值解法,能实时实现二维的烟雾动画(比如一个图像遵循流体的运动定律演化为另一种图像),当然从视觉效果上要比论文上的差很多。原来一直打算找时间写三维形式烟的模拟,可是自从看到那论文后,心里就开始构思如何实现文中的算法,只是碰到点编程上的BUG,徘徊了好多天。现在总算有了个雏形,心中还是比较开心的。只是有时候,晚上调程序,睡不着,看看电视放松一下脑子,结果那几天影响了一位室友的睡眠,在此表示歉意。

      -------------------------------

    这阵子还看了两本科普书,一本是许峰雄写的“深蓝揭密”,一本是沃森写的“双螺旋”,都是在买到后,一个晚上一口气读完的。两本书有一个共同的特点,都是科学家撰写自己亲身的科研历程,披露了很多国外一流大学学习生活的细节。沃森在他25岁时就发现了DNA的双螺旋结构,以此成果荣膺了日后的诺贝尔奖。他在一本书中自述:故事开始的时候我25岁,还没有结婚,考虑女孩(girls)多于基因(genes)。表述很大胆也很有意思。

        ......

        又过了好多天,一直想对上面那个DEMO做优化,但是好象没了那股精气神,结果一点也没进展。两三天前的一个晚上,看了会电视,喝了杯价值一块钱的咖啡,突然来了精神,把想到的优化方法付诸实现了。用了浮点数纹理,精度一下子提高了,从效果上接近原论文一阶微分数值解法的视频。昨日晚上又将GRID SIZE加到256,图像品质大为改善。

改进版DEMO(“Target-Driven Smoke Animation”的GPU实现)下载:
http://pan.baidu.com/s/1mgnzola


可以改变源与目标的图片(在/images目录下),以观察到不同的效果
比如:在Source Image Filename框中录入“char.jpg”,在Target Image Filename框中录入“char1.jpg”;
然后按一下“Inverse Start”会看到一个中文的“图”字以烟雾状化为另一个中文字“画”;
再按一下“Inverse Start”会看到一个中文的“画”字以烟雾状化为另一个中文字“图”。
这些DEMO均使用“October 2005 DirectX SDK Update”,要求GPU支持PS2.0