有创意餐饮广告

为什么创意餐饮广告会吸引人们的眼球?

创意餐饮广告常常给人留下深刻印象,这一点不难理解。不同于其他产品,餐饮广告不仅要售卖美食,还需要吸引顾客前来尝试,满足他们对美食的期待。而创意餐饮广告的设计能够让人们在短时间内记住品牌,产生购买欲望。

例如,一个卖汉堡的餐厅可以通过设计一张大汉堡的照片来吸引人们的注意。但是,如果这张照片能够加入一些幽默或者不寻常的元素,例如汉堡头上戴着一顶帽子或者在照片中突然出现了一只狗,那么这张照片就能够吸引更多人的注意,并且让人们记住品牌。

一张诱人的汉堡图片

创意餐饮广告的设计可以借鉴各种形式的艺术,例如电影、音乐、流行文化等等。这些元素可以让广告变得有趣、有趣味性、甚至是引人入胜。更重要的是,它们能够让广告与众不同,让人们在看到广告时停下来仔细看看。这也是为什么创意餐饮广告能够在市场上脱颖而出的原因。

总之,创意餐饮广告是一种使餐饮品牌从众多竞争对手中脱颖而出的有效方式。它能够突破传统广告的束缚,以有趣的方式展示品牌特色,吸引更多的消费者。

创意餐饮广告的设计原则

创意餐饮广告的设计不仅要满足视觉审美,更要传达品牌的理念和价值观。在设计广告时,需要遵循以下几个原则:

1. 简约

创意餐饮广告不需要过于复杂的设计。相反,简洁明了的设计更能引起人们的关注。在设计时,可以尝试使用简单的图形、颜色或字体来传达品牌信息。

一份美味的沙拉

2. 与品牌形象相符

创意餐饮广告的设计必须与品牌的形象相匹配。例如,一个主打健康食品的品牌可以使用清新明亮的色彩和简单的图形来突出品牌理念。

一份健康的沙拉

3. 创新

创意餐饮广告需要具备创新性,与众不同。设计师可以尝试使用不同的元素来设计广告,例如大胆的颜色、有趣的图形或者不寻常的文字排版。

总之,在设计创意餐饮广告时,需要根据品牌的特点和目标受众进行创新,通过视觉元素来传达品牌的声音。

结论

创意餐饮广告是一种吸引人们眼球的方式。它能够让品牌脱颖而出,吸引更多的消费者。设计广告时,需要遵循简约、与品牌形象相符、创新的原则,以达到最佳效果。最后,为了保持广告的效果,品牌需要不断创新,跟上市场和消费者的需求。

有创意餐饮广告特色

1、一:0人精英公会

2、丰富的游戏类型及不同的对战玩法,等你来一个个的体验。

3、精心设计的谜题和机关值得玩家耐心思考。

4、新用户投资将送现金红包,0元;

5、一款非常好的生活服务应用,帮助用户更好的生活。

有创意餐饮广告亮点

1、海量游戏福利活动等你体验,不肝不氪也能轻松变强

2、全自由战斗模式历练玩法,你可以组建超级仙盟帮派,与可恶的妖魔大战三天三夜。

3、经过的方块黑变白,白变黑是不是感觉听起来很简单,但这个干扰就非常大;

4、场景模式应用场景按键屏蔽

5、精美的游戏画面,丰富的游戏内容。

yi:0renjingyinggonghuifengfudeyouxileixingjibutongdeduizhanwanfa,dengnilaiyigegedetiyan。jingxinshejidemitihejiguanzhidewanjianaixinsikao。xinyonghutouzijiangsongxianjinhongbao,0yuan;yikuanfeichanghaodeshenghuofuwuyingyong,bangzhuyonghugenghaodeshenghuo。萬(wan)字(zi)長(chang)文(wen)!UCLA蔣(jiang)陳(chen)凡(fan)夫(fu)12年(nian)自(zi)我(wo)回(hui)顧(gu),圖(tu)形(xing)學(xue)的(de)終(zhong)極(ji)浪(lang)漫(man)

新(xin)智(zhi)元(yuan)報(bao)道(dao)

作(zuo)者(zhe):蒋陈凡夫

編(bian)輯(ji):桃(tao)子(zi)

【新智元導(dao)讀(du)】UCLA應(ying)用(yong)數(shu)学副(fu)教(jiao)授(shou)蒋陈凡夫寫(xie)下(xia)万字长文,回顾了(le)從(cong)轉(zhuan)系(xi)生(sheng)到(dao)终身(shen)教授十(shi)二(er)年的自我歷(li)程(cheng)。

最(zui)近(jin)評(ping)上(shang)tenure,有(you)人(ren)來(lai)祝(zhu)賀(he):”Now you can freely decline review requests!”。我想(xiang)了想,似(si)乎(hu)對(dui)心(xin)態(tai)上的改(gai)變(bian)確(que)實(shi)如(ru)此(ci)而(er)已(yi)。又(you)想到也(ye)許(xu)可(ke)以(yi)写個(ge)什(shen)麽(me)紀(ji)念(nian)壹(yi)下。那(na)這(zhe)19歲(sui)到31岁,有什么拿(na)来回味(wei)的沒(mei)有?好(hao)像(xiang)有很(hen)多(duo),但(dan)不(bu)整(zheng)理(li)一下的話(hua),又不知(zhi)从何(he)說(shuo)起(qi)。那還(hai)是(shi)直(zhi)接(jie)写一點(dian)吧(ba)。从物(wu)理本(ben)科(ke),到CS PhD,CS教職(zhi),又在(zai)数学tenure,这看(kan)似曲(qu)折(zhe)的十二年竟(jing)是在做(zuo)同(tong)樣(yang)的研(yan)究(jiu),一年都(dou)没有浪費(fei)。一路(lu)走(zou)来,有很多東(dong)西(xi)值(zhi)得(de)緬(mian)懷(huai)和(he)總(zong)結(jie),也许能(neng)幫(bang)助(zhu)思(si)考(kao)未(wei)来。順(shun)便(bian)把(ba)这一路幹(gan)過(guo)的牛(niu)逼(bi)的事(shi),和遇(yu)到过的牛逼的人都写下来,看著(zhe)应該(gai)很舒(shu)爽(shuang)。

第(di)〇章(zhang):我的三(san)叉(cha)戟(ji)

第一章:緣(yuan)起

第二章:一炮(pao)炸(zha)出(chu)来兩(liang)个坑(keng)

第三章:雪(xue)與(yu)海(hai)的浪漫

第四(si)章:摩(mo)擦(ca)摩擦,在光(guang)滑(hua)的路上,摩擦

第五(wu)章:少(shao)年英(ying)雄(xiong)胡(hu)淵(yuan)鳴(ming)

第六(liu)章:与timestep结缘

第七(qi)章:摩擦碰(peng)撞(zhuang)的第三次(ci)戰(zhan)役(yi),IPC魔(mo)童(tong)降(jiang)世(shi)

第八(ba)章:下一个“Timestep”

第〇章:我的三叉戟

十二年来摸(mo)爬(pa)滾(gun)打(da)地(di)給(gei)計(ji)算(suan)機(ji)图形学做了些(xie)物理模(mo)擬(ni)相(xiang)關(guan)的科研。拿的出手(shou)的代(dai)表(biao)方(fang)向(xiang)有三:物質(zhi)点法(fa)(Material Point Method: MPM),仿(fang)射(she)粒(li)子元胞(bao)法(Affine Particle In Cell: APIC),和增(zeng)量(liang)勢(shi)能接觸(chu)法(Incremental Potential Contact: IPC)。每(mei)个方法的人和事下面(mian)的章節(jie)再(zai)去(qu)回憶(yi),这一章,先(xian)籠(long)統(tong)概(gai)括(kuo)一下。

第一个方向:MPM。说到物质点法,按(an)照(zhao)慣(guan)例(li),或(huo)许得提(ti)一下自己(ji)多多少少參(can)与了的冰(bing)雪奇(qi)缘。2012年發(fa)掘(jue)MPM後(hou)我去做了些別(bie)的事情(qing),組(zu)裏(li)其(qi)他(ta)同学拿MPM驗(yan)證(zheng)了雪;我在早(zao)期(qi)没有去参与最初(chu)的SIGGRAPH工(gong)作。迪(di)士(shi)尼(ni)工作室(shi)的代碼(ma)很臃(yong)腫(zhong),遠(yuan)远不止(zhi)99行(xing),而且(qie)迪士尼的律(lv)師(shi)可不是吃(chi)素(su)的,向来有荒(huang)島(dao)求(qiu)生畫(hua)米(mi)奇一说。既(ji)然(ran)不能描(miao)繪(hui)太(tai)多代码的事情,那就(jiu)只(zhi)放(fang)好看的劇(ju)照:

MPM擅(shan)长做雪在短(duan)期內(nei)成(cheng)為(wei)了一个刻(ke)板(ban)印(yin)象(xiang)。於(yu)是我決(jue)定(ding)花(hua)一些功(gong)夫来重(zhong)塑(su)一下MPM的形象。从技(ji)術(shu)層(ceng)面上来说,MPM只是一个基(ji)本的Galerkin空(kong)間(jian)架(jia)構(gou),物理过程数值模拟的真(zhen)正(zheng)技术点在于時(shi)间和空间的離(li)散(san)算法、本构模型(xing)的設(she)计、性(xing)能的加(jia)速(su)、以及(ji)巧(qiao)妙(miao)求解(jie)偏(pian)微(wei)分(fen)方程数值解的不同手段(duan)。MPM是一塊(kuai)高(gao)品(pin)质的画布(bu),这些技术点的創(chuang)新才(cai)是真正的筆(bi)法(stroke)。但是技术点是里子,MPM是面子。于是从面子上看到的,便是我与一干誌(zhi)趣(qu)相投(tou)之(zhi)士用MPM去平(ping)A物理的世界(jie)的各(ge)種(zhong)固(gu)體(ti)和流(liu)体:巧克(ke)力(li),果(guo)凍(dong),面包(bao),牙(ya)膏(gao),冰淇(qi)淋(lin),泡(pao)沫(mo),泥(ni)土(tu),巖(yan)漿(jiang),牛排(pai),东坡(po)肉(rou),橘(ju)子,西瓜(gua),肌(ji)肉,骨(gu)骼(ge),内臟(zang),布料(liao),毛(mao)衣(yi),頭(tou)发,雪山(shan),沙(sha)海,冰川(chuan),河(he)流,無(wu)人机,炸藥(yao),等(deng)等。这里有固体,有牛頓(dun)流体,有非(fei)牛顿流体,有粒狀(zhuang)体,有固液(ye)混(hun)合(he)体,还有人体。大(da)到山川河流,小(xiao)到雨(yu)露(lu)甘(gan)霖(lin),MPM从一个鐵(tie)头功,逐(zhu)漸(jian)被(bei)擴(kuo)写成了一本七十二絕(jue)技。

后来跟(gen)人合開(kai)了公(gong)司(si),写了一个实用的MPM特(te)效(xiao)解算器(qi)。最近Autodesk買(mai)下並(bing)放進(jin)了Maya,相信(xin)未来的幾(ji)年,更(geng)多的電(dian)影(ying)里會(hui)看到MPM的应用場(chang)景(jing)。

第二个方向:仿射粒子元胞法(APIC)。这是我2015年得意(yi)的文章,是2014年的聖(sheng)誕(dan)节獨(du)自一人在迪士尼的大帽(mao)子studio里加班(ban)完(wan)工的。迪士尼所(suo)在的Burbank是大洛(luo)杉(shan)磯(ji)地區(qu)一个荒漠(mo)城(cheng)市(shi),我卻(que)在荒漠和大海结了缘。于是那一年,APIC给海洋(yang)奇缘里的水(shui)提升(sheng)了许多豐(feng)富(fu)的細(xi)节。

时间快(kuai)进到2017年,有一位(wei)氣(qi)血(xue)翻(fan)騰(teng)的胡姓(xing)少年来訪(fang)問(wen)我,一起把APIC和MPM系列(lie)工作推(tui)到了高潮(chao):Moving Least Squares MPM(MLS-MPM)。那之中(zhong)与后来 @太极图形的渊源(yuan)和MPM在可微分模拟領(ling)域(yu)的拓(tuo)展(zhan),已有好文記(ji)錄(lu)。

第三个方向:IPC。2020年12月(yue)31日(ri),賓(bin)夕(xi)法尼亞(ya)大学计算机图形学中心,23点59分,手里的咖(ka)啡(fei)还燙(tang)。有一块補(bu)天(tian)的石(shi)头,它(ta)吸(xi)滿(man)了天地靈(ling)气日月精(jing)華(hua),突(tu)然炸裂(lie)开了。增量势能接触法IPC橫(heng)空出世。王(wang)婆(po)賣(mai)瓜自卖自誇(kua):我竊(qie)以为,IPC改良(liang)了固体模拟,啟(qi)動(dong)了“工業(ye)革(ge)命(ming)”,把連(lian)續(xu)固体的仿真科学(不只在图形学)帶(dai)入(ru)了“蒸(zheng)汽(qi)机时代”。2022年,它的衍(yan)生故(gu)事还在不斷(duan)上演(yan):

第一章:缘起

2010年,我遇到了改变了我一生的三个人。第一个人是我的妻(qi)子;这十二年,我們(men)相戀(lian)五年,结婚(hun)七年,她(ta)挽(wan)着我踩(cai)下了每一个有深(shen)有淺(qian)的腳(jiao)印。十二年来做过的每一个回头来看无比(bi)正确的决定,大到职业道路,小到咬(yao)文嚼(jiao)字,我的许多影響(xiang)深远的選(xuan)擇(ze)背(bei)后都有她默(mo)默的付(fu)出不休(xiu)不眠(mian)的时间陪(pei)我去抽(chou)絲(si)剝(bo)繭(jian)和理性分析(xi)。我在中科大少年班选的專(zhuan)业是等离子体物理,2010年在UCLA入学后想转到计算机,如果没有她绝对理性地安(an)撫(fu)我的急(ji)躁(zao)和帮我規(gui)劃(hua)合理的步(bu)驟(zhou),我可能连第一学期都没读完就自暴(bao)自棄(qi)、不知所向。她还会陪我走很远很远。

2010年改变我命運(yun)的另(ling)两个人,就是我读PhD的聯(lian)合导师Demetri Terzopoulos和Joseph Teran。他们的成就是我一生奮(fen)鬥(dou)的目(mu)標(biao)。

我在UCLA CS系的导师Demetri是英國(guo)皇(huang)家(jia)学会的院(yuan)士(并列于牛顿、本傑(jie)明(ming)富蘭(lan)克林(lin)、霍(huo)金(jin)等人),奧(ao)斯(si)卡(ka)技术獎(jiang)得主(zhu),他是1980年代计算机图形学里第一个做物理仿真的人,可謂(wei)元宇(yu)宙(zhou)物理引(yin)擎(qing)之父(fu)。他同时也是计算机視(shi)覺(jiao)泰(tai)斗,发明了snake算法。他其实还跟Hinton一起在二十多年前(qian)就发表了世界上第一篇(pian)用神(shen)經(jing)網(wang)絡(luo)做物理仿真的图形学文章,似乎常(chang)常被人漏(lou)cite。我在数学系的共(gong)同导师是Joseph,他是陶(tao)哲(zhe)軒(xuan)的同事(我現(xian)在也是了),level set发明人Stan Osher的徒(tu)孫(sun)和同事,曾(zeng)被discover评为40岁以下最聰(cong)明的20个大腦(nao)之一(20 Best Brains Under 40),他是图形学里最有名(ming)的做有限(xian)元固体仿真的人。

2010年秋(qiu)天,我跟一个朋(peng)友(you)一起联系了Demetri,以及Joseph和朱(zhu)松(song)純(chun)老(lao)师。朱老师给出了很理性的不贊(zan)成我转系的答(da)復(fu)。(后来朱老师对我改觀(guan),跟Osher一起加入了我的博(bo)士委(wei)員(yuan)会,再后来通(tong)过摯(zhi)友,如今(jin)北(bei)大智能学院的朱毅(yi)鑫(xin)教授,形成密(mi)切(qie)的学术合作关系,这是后话。)Demetri和Joseph冒(mao)着很大的实验室財(cai)務(wu)浪费的風(feng)險(xian),看着我一段蹩(bei)脚的彈(dan)簧(huang)模拟代码(MATLAB写的),但是考慮(lv)到我以前发表过相对論(lun)相关的论文应该脑子不笨(ben),给了我一个机会。我趕(gan)緊(jin)紅(hong)牛下肚(du),花了几个通宵(xiao)強(qiang)行通读了一本教材(cai),并复现出了一篇有限元肌肉仿真的siggraph文章。諸(zhu)如此行为,是impress图形学教授最簡(jian)潔(jie)有效的手段。从此一发不可收(shou)拾(shi)。

写代码和图形学,我入門(men)都很遲(chi)。@胡渊鸣初中就写剛(gang)体引擎小遊(you)戲(xi)了,我博一还在自学C++模板。跟许多有理想的图形学或游戏愛(ai)好者一样,从头搭(da)建(jian)一个自己的引擎是一个抑(yi)制(zhi)不住(zhu)的沖(chong)动。2012年初,补完所有计算机和应用数学課(ke)程的我结合自己的物理背景,摸索(suo)出了一个长期目标:用物理仿真去重建这个世界。Demetri也鼓(gu)勵(li)我:妳(ni)比誰(shui)都適(shi)合去close the gap between virtual reality and physical reality, 把虛(xu)拟世界跟物理世界给打通。那时候(hou)没有元宇宙这个说法,但是我的两个导师都是digital double虚拟人体的深度(du)发燒(shao)友,这对我的科研興(xing)趣的影响不可谓不大。回到物理引擎这个构想上,心动不如行动,这世界五顏(yan)六色(se)千(qian)变万化(hua),那这引擎就叫(jiao)魔方大,哦(o)不,百(bai)变怪(guai)吧!于是 ditto 诞生了:

ditto里包含(han)了几个固体仿真和碰撞處(chu)理的練(lian)手項(xiang)目,特别是隱(yin)式(shi)有限元的3D布料仿真。當(dang)时有taichi語(yu)言(yan)的话,应该写出来能当一次GAMES201大作业拿个A+。可惜(xi)Ditto維(wei)持(chi)了半(ban)年后,我投入一篇siggraph文章的具(ju)体工作中,便没有再更新了。后来2018年z-emotion/ZelusFX公司的CEO突然联系我,说他2012年跟我要(yao)的ditto代码帮助他弄(nong)出来一个布料设计軟(ruan)件(jian)的公司,现在有很多用戶(hu)。我开心了很久(jiu)。

第二章:一炮炸出来两个坑

我博士期间花了两年时间合作的第一个项目,是物体破(po)碎(sui)。网上有人说,计算机图形学是程序(xu)员的三大浪漫之一(另两个是操(cao)作系统和编譯(yi)原(yuan)理),但那时的我还没有看到浪漫,只看到了狂(kuang)拽(zhuai)炫(xuan)酷(ku),只想在siggraph上播(bo)最帥(shuai)的demo,做最靚(liang)的仔(zai)。

那时我学完了计算固体力学。跟许多做仿真的初学者一样,一切都是从模拟果冻开始(shi),畢(bi)竟果冻是最典(dian)型的弹性体,并且往(wang)往很软,不会给ODE(常微分方程)的时间步离散格(ge)式带来过分stiff从而要么dt小,要么系统難(nan)解的这个数值问題(ti)。于是在弹塑性固体里面,我找(zhao)到一个想要模拟的案(an)例:子弹射穿(chuan)果冻。那时乃(nai)至(zhi)今日看来,都没有多少比这更炫酷的实拍(pai)视頻(pin):

现在教职期间,我常告(gao)訴(su)自己的学生,想做什么科研,在大致(zhi)調(tiao)研相关工作并确定学术品位和潛(qian)在影响力之后,可以直接开始擼(lu)代码,不要太擔(dan)心techinical contribution不夠(gou)。因(yin)为你开始做之后,很快就会遇到你之前多半没預(yu)料到的问题,解决它们將(jiang)成为你文章的最主要contribution。我们用有限元去写果冻破碎,不到半个月,就碰到了两个重大的难题:(1)如何自然破裂,即(ji)不能在裂面看到三角(jiao)形醜(chou)陋(lou)的样子,和(2)如何穩(wen)健(jian)地处理复雜(za)碎片(pian)之间的摩擦碰撞。

拓撲(pu)变化哪(na)家强,levelset敢(gan)稱(cheng)王。要实现自然破裂,结合有限元和level set方法是一个非常巧妙的思路。Level set有非常强的灵活(huo)性,可以从各种自然的角度去分裂四面体,而且可以完全(quan)避(bi)免(mian)重新划分网格(remesh)。

Levelset方法的发明人Stan Osher在UCLA,给了我们一些寶(bao)貴(gui)的建議(yi),很快,破裂的问题便迎(ying)刃(ren)而解了。

这篇文章,我更主要負(fu)責(ze)的是做摩擦碰撞。建模破裂之后,这顺其次成为最头疼(teng)的事情。levelset的marching tetrahedra切割(ge)法带来了无数形状“惡(e)心”的果冻碎片:在裂面上,有的三角形瘦(shou)如一道閃(shan)电,有的扁(bian)如一張(zhang)大餅(bing)。计算几何上,这些奇特的三角形被称作是“ill conditioning”,想要用普(pu)通几何方法去搞(gao)定它们的碰撞,不说碰撞算法本身的case难以窮(qiong)舉(ju),光是浮(fu)点数精度带来的千变万化的誤(wu)判(pan)就足(zu)以讓(rang)人望(wang)洋兴嘆(tan)。我花一年时间試(shi)了很多算法,皆(jie)以宣(xuan)告失(shi)敗(bai)。

最值得講(jiang)的一个算法,是一个非常大膽(dan)的idea。我把解算完的固体投射到一个规則(ze)的网格上,然后让网格假(jia)裝(zhuang)看到的是不可壓(ya)流体,求解一个泊(bo)松方程,把速度场变成无散的,再插(cha)值回到固体上。这竟给出了非常漂(piao)亮(liang)的不穿透(tou)解!但是缺(que)点在于,物体的运动被变的太像流体一般(ban)輕(qing)盈(ying)灵动了,缺少了那份(fen)固体特有的執(zhi)拗(niu)。我便去问我的导师Joseph,有没有類(lei)似于这个解流体方法的解固体的方法,我想拿来在碰撞上试一试。他回忆良久,说出了我一个我隨(sui)后持续专註(zhu)十年的名称:MPM。

MPM是1995年在美(mei)国的国家实验室发明的。它是一个混合拉(la)格朗(lang)日粒子和歐(ou)拉网格的固体解算方法。往前追(zhui)溯(su)到1960年代的Particle-In-Cell(PIC法,最初用于求解等离子体物理的麥(mai)克斯韋(wei)方程)和1980年代的Fluid-Implicit-Particle-Method (FLIP法,用于流体结算,@张心欣(xin)的导师Robert Bridson,我的师叔(shu),于2005年引入图形学)。它像流体一样,自动防(fang)止了材料间的穿透,又可以漂亮地求解固体的方程。把MPM拿过来做碰撞处理,在当时的我看来,再合适不过了:

终于,我交(jiao)了一份目前回头看来远远不够完美的答卷(juan):

?这顆(ke)子弹大的有点夸张,更像一枚(mei)炮弹。它被评为了SCA 2013的Best Paper Award。它也炸开来两个MPM带来的学术大坑:拓扑变化的多材料,和自动处理的摩擦碰撞。我和MPM被湊(cou)到了一起,从曖(ai)昧(mei)到沈(chen)迷(mi)。

彩(cai)蛋(dan):文章里还首(shou)次用刑(xing)了一只犰(qiu)狳(yu),引起了许多论文读者的不适。但后来这个场景,竟多次被别的研究者作为benchmark来follow,那可不怪我咯(ge)。

第三章:雪与海的浪漫

学習(xi)MPM的那几个月,同组的俄(e)国师兄(xiong)Alexey也加入到粉(fen)丝小分隊(dui)中来,并主导了廣(guang)为流傳(chuan)的“MPM snow”的那篇文章。一时间,我们组和迪士尼的联姻(yin)传为佳(jia)话。有我在内的好几个学生去迪士尼实习和参与写作Production软件代码。在冰雪奇缘的慶(qing)功宴(yan)上,我第一次嘗(chang)到技术產(chan)业化的喜(xi)悅(yue)。

冰雪奇缘之后,迪士尼做了一个Big Hero 6超(chao)能陸(lu)战队。在那里,MPM被用在模拟一些奇怪的材料上,这是个未怎(zen)么宣传过的信息(xi)。

Disney's Big Hero 6

时间随之转移(yi)到2014年。我打算博士毕业了,想做一些在MPM和PIC里面更数学更基礎(chu)的东西,又同时希(xi)望能在现有的FLIP流体和MPM固体上做出有应用價(jia)值的变革。那么回顾一下,用FLIP做流体,和用MPM做固体,流程中的数学上有什么不合理的hack呢(ne)?内行人一定会指(zhi)出:是FLIP-PIC blending ratio。FLIP和PIC其实可以指代混合粒子网格法中,网格向粒子插值的那个步骤。PIC直接做速度场的插值,但是会引入巨(ju)大的数值粘(zhan)性,FLIP插值速度增量,但是会引入巨大的不稳定性。于是图形学的流体泰斗Robert Bridson教授在2005年就提出,把FLIP的结果乘(cheng)以0.97,再把PIC的结果乘以0.03,然后把它们加起来。这个数字是一个用户可调的参数,但可调而不可控(kong)!不同的场景下,不同数字会给出非常不同的结果。它是藝(yi)术家的噩(e)夢(meng),是强迫(po)癥(zheng)的地獄(yu)。于是我决定干一票(piao)大的,把这个东西除(chu)掉(diao),因为我有一个信念:需(xu)要设置(zhi)heuristic参数的仿真算法绝不可能是一个好算法的最终形态。

再结合对于角动量守(shou)恒(heng)方程的理论分析,跳(tiao)过一些技术细节,Affine Particle In Cell (APIC)被误打误撞推导了出来。FLIP流体和MPM固体进入了一个新的篇章,艺术家们可以更轻松的得到它们需要的仿真结果粘稠(chou)度,无论是山川大河,还是岩浆滚滚。它们在我心中,是可以媲(pi)美冰雪的浪漫。

迪士尼非常高兴,迫不及待(dai)地把APIC用进了海洋奇缘:

2015年夏(xia)天,我毕业和结婚。婚禮(li)在洛杉矶南(nan)邊(bian)的玻(bo)璃(li)大教堂(tang),有山有海有樹(shu)林。那年暑(shu)假的SIGGRAPH,我認(ren)識(shi)了很多很多志同道合的朋友。印象最深的是在流体的session上,我看到一位风流倜(ti)儻(tang)的銀(yin)发少年。他跑(pao)来问我,“今年的好文章眾(zhong)多,能长久流传的是哪几个?”我随便应付了几句(ju)。他说道:“今年的文章,有两篇最diao,一篇是我的IVOCK,另一篇是你的APIC。”我吃了一驚(jing),连忙(mang)互(hu)換(huan)姓名。原来这位霸(ba)气的少年,叫@张心欣,他现在带领“澤(ze)森(sen)科工”在为中国特效打天下。那时纯粹(cui)的我们,在对方雙(shuang)眸(mou)反(fan)光里,都看到了一个勇(yong)者,持各自打造(zao)的巨劍(jian),浴(yu)血挑(tiao)战着一头叫做数值耗(hao)散的恶龍(long)。自那天起,我们也开始了迄(qi)今长達(da)七年的并肩(jian)合作。

毕业之后,我繼(ji)续深耕(geng)MPM固体和流体。学术界的人其实蠻(man)喜歡(huan)立(li)flag。我就一直盡(jin)量堅(jian)持去貫(guan)徹(che)一个基本原则:即使(shi)我的仿真文章是投在图形学会议和期刊(kan)上,我也绝不为了视觉效果去做任(ren)何不符(fu)合物理和数学原理的hack;我需要每个算法都普适到整个计算物理学。这个原则给后来教授期间的我带来了很多的好处:包括了(1)自然科学研究基金的青(qing)睞(lai),(2) 在Nature子刊发表的MPM自然災(zai)害(hai)预測(ce)技术(雪崩(beng),山体滑坡,泥石流,冰川碎裂,海嘯(xiao)),

以及(3)醫(yi)院十分喜爱的虚拟创傷(shang)和手术的仿真平臺(tai):

它们也许没有雪与海一样浪漫,但却更加真实和直接地影响到了这个世界,甚(shen)至帮忙拯(zheng)救(jiu)生命。这些工作也给图形学里做物理仿真的同行在自然科学和医学领域贏(ying)得了更多的尊(zun)重,糾(jiu)正这些别的领域的人关于图形学就是不断引入他们做的东西的误解。毕竟很多图形学论文喜欢把这个叫作contribution:“We introduce the XXX method to computer graphics.” 我想做的,是要物理学和数学的人发论文说同样的这句话,但是把“to”改成“from”。最近遇到的一位做经典力学的同事发出感(gan)叹:“好一波(bo)反向輸(shu)出!”

既然想到固体仿真在医学上的应用,一縷(lv)額(e)外(wai)的回忆又湧(yong)上心头。2016年,我特别想把虚拟人体给产业化,也探(tan)索了很多不同的方向。其中比較(jiao)有意思的,便是与lab师弟(di),也是好哥(ge)们的如今体素科技CEO丁(ding)曉(xiao)偉(wei)討(tao)论的整形手术预测。当时我跑了个隆(long)胸(xiong)动力学预测的demo(包含了对胸部(bu)软组織(zhi)、皮(pi)膚(fu)、和矽(gui)膠(jiao)假体全方位的模拟),也在洛杉矶聊(liao)了一些整形医生,但感觉市场需求度不够大,所以没有继续下去。也不知道元宇宙跨(kua)领域越(yue)来越火(huo)熱(re)的今天,这个方向现在怎么样了。

【这里本有个视频,但不能放】

第四章:摩擦摩擦,在光滑的路上,摩擦

前面说到,2012年我便用MPM的思路去尝试处理了破碎仿真里的物体碰撞。但是那个算法只能对付不同碎片之间的碰撞,对自碰撞self collision无可奈(nai)何。MPM作为一个用粒子来描述(shu)物体的离散格式,毕竟天然最适合如冰雪沙土般像粒子一样的物体。

布料和毛发则是每一个做固体仿真的人都想攻(gong)克的东西。科学研究应当尽量以人为本,而布料和毛发跟人的关系真的太大了。处理摩擦碰撞的算法很多,它们做的好的地方都一样優(you)秀(xiu),做的不好的地方却五花八门。于是2017年,我重新回到摩擦碰撞这个战场。跟MPM处在105度热恋中的我,选择了一个所有人都没有想过的思路:用MPM塑性去挑战这个课题。

那时我已经学会了Druker-Prager塑性屈(qu)服(fu)面,并成功用它做出了MPM沙子。沙子的本构模型有两个要素:第一,它支(zhi)持分开,不支持擠(ji)压;第二,它往边上滑的时候,切向力和法向力要满足庫(ku)倫(lun)摩擦定律。仔细回味一番(fan),这两个特性,明明不只是沙子所特有的啊(a)!布料、毛发、橡(xiang)皮、刚体等等,哪个常見(jian)固体的碰撞不是要遵(zun)循(xun)这两个定律呢?

于是我决定拋(pao)弃传统的基于点和三角形,边和边几何相交特性的摩擦碰撞理念(ditto里实现过的那一套(tao)),而是采(cai)用MPM“连续介(jie)质力学”的观点。管(guan)他是布料还是毛发,都是一些连续的空间占(zhan)用而已。在这个观点下,它们跟沙子唯(wei)一的区别便是,沙子是三维的“体”,而它们分别是三维空间中二维和一维的曲面。想到这一点,一切便豁(huo)然开朗:如果Drucker-Prager塑性可以让三维的MPM沙子满足摩擦碰撞的性质,那么我只需要推导出二维和一维子空间上所对应的类似的塑性,便可以让MPM布料和毛发满足同样自动摩擦碰撞的性质!

以布料为例,通过对形变梯(ti)度的QR分解,我们可以设计一个精巧的弹性能量和塑性屈服面来“管理”布料在法向上摩擦碰撞力所需要满足的应力條(tiao)件。直观上来讲,在曲面方向,布料仿佛(fo)一束(shu)束被交织的沙礫(li),沿(yan)着布料的切向望去,满布上都写着两个字“库伦"。

意识到了这一点,处理一维二维曲面的摩擦碰撞便与处理三维沙子的摩擦碰撞别无二致。只需要将这新的本构模型写入曲面上的頂(ding)点,MPM便全自动地默默处理了剩(sheng)下的一切。从布料到毛发,从地毯(tan)到毛衣,一切传统的碰撞檢(jian)测和碰撞处理都被抛弃,一把粒子,一架网格,便能生成一段美妙的动画。这种顛(dian)覆(fu)式的建模方式,如今我回头看,仍(reng)觉得是走出了魔鬼(gui)的步伐(fa),是自己学术生涯(ya)最满意的MPM论文。

那一年去siggraph 2017宣讲物质点法,抒(shu)发的情感只能用已故的李(li)兆(zhao)基老师的经典台詞(ci)来形容(rong),“比我的初恋更加詩(shi)情画意。”

这篇文章的2D版(ban)还在太极语言中被实现了出来(橘子貓(mao):Taichi实现2D Anisotropic Elastoplasticity Cloth),代码十分简洁,妙不可言。

后来第二年的SIGGRAPH2018,哥伦比亚大学殺(sha)出来一员猛(meng)将@Raymond Fei,把这套步法跟APIC结合起来,做了一份令(ling)人叹为观止的布料与水相互作用的工作(libwetcloth),一百分的賞(shang)心悦目。

参会SIGGRAPH 2017,我还有一个额外的目的:招(zhao)納(na)自己的第一个学生。开会时,我在宾夕法尼亚大学的助理教授生涯刚开始不久,孤(gu)苦(ku)伶(ling)仃(ding)。一场场燈(deng)红酒(jiu)綠(lv)的派(pai)对,一间间熙(xi)攘(rang)喧(xuan)囂(xiao)的酒吧,我在会场外面的夜(ye)搜(sou)尋(xun)着那个可以一起談(tan)笑(xiao)风生个几年的小夥(huo)伴(ban)。高級(ji)的獵(lie)人都会偽(wei)装成猎物。在一个昏(hun)暗(an)的角落(luo),我看到一个熟(shu)悉(xi)的身影在月下独酌(zhuo),对我目送(song)秋波。那不是一年前张心欣在烤(kao)肉店(dian)介紹(shao)给我的@李旻(旻)辰(chen)嗎(ma)?我记得他!UBC的一个精壯(zhuang)帅小伙兒(er),跟张心欣做过一篇流体的文章。我点了两杯(bei)火辣(la)的蘋(ping)果馬(ma)提尼,搖(yao)摇晃(huang)晃地走了过去。“还记得我吗?”“记得记得,来,搞一杯!”那一杯,给下一个不醉(zui)不歸(gui)的五年学术夜宴,拉开了序幕(mu)。

第五章:少年英雄胡渊鸣

2017年的夏季(ji)注定要遇到更多不平凡的人。话分两头,在酒吧初遇李旻辰之前的那一年早些时候,图形学领域广泛(fan)流传着这么一个都市传说。有一位策(ce)马揚(yang)鞭(bian)的少年武(wu)士,他没有发表过一篇SIGGRAPH论文,但他实现了一百篇;他没有开源过一套代码,但他有一百万行张弓(gong)待发;他接手的图形学仿真实现,可以在一夜之间效率(lv)提高十倍(bei);他三天没有睡(shui)觉,便重现了四年来的所有MPM论文,并且提出了一百种改进的方法。他究竟是神仙(xian)的化身?还是地狱的使者?一时间流言四起,有人甚至说他要建立新的计算机图形学秩(zhi)序。还在默默想着MPM问题的我更是夜不能寐(mei)。这小子,是何方神圣?

他果不出所料地杀上门来了。如想象般翩(pian)若(ruo)惊鴻(hong)的@胡渊鸣,带着一位比他更加神秘(mi)且靦(mian)腆(tian)的小伙伴,从清(qing)华杀到了我UPenn实验室的门口(kou)。“我们来跟你一起做MPM。”他的话简短有力。“好,开始吧。”那时的我们,不会寒(han)暄(xuan)客(ke)套,只需要看到一个共同的研究目标便一切尽在不言中。那时他带来的小帮手,叫方火奥,我去google,哦,方燠(yu) yù。现实绝非一帆(fan)风顺,我们高速疊(die)(die)代经历了一些失败的科研项目,才最后有了MLS-MPM的发明和后续,简洁而又精彩。

那时,我有一套自己的C++库,远超当年的ditto。我的库叫做“jixie”(机械(xie))。胡渊鸣带来了他的库,叫做“taichi”(太极)。那时太极还是一个C++库。两个库各有千秋,碰撞出许多热烈(lie)的火花。胡渊鸣对我助理教授生涯的研究重心,尤(you)其在对榨(zha)干计算机性能的追求上,起到了很大的启发性作用。

英雄相惜,终須(xu)一别,胡渊鸣要远赴(fu)MIT去做别的项目,我在披(pi)薩(sa)店餞(jian)别。“MPM的发展将緩(huan)慢(man)下来!”我悵(chang)然若失。他笑了笑,告诉我,仍有一个人跟我去打MPM多物理仿真的江(jiang)山。我目光一瞥(pie),才猛然惊醒(xing),这段时间在刀(dao)光剑影里一起谈笑风生的,还有另一位比他更年轻的英雄少年!言辭(ci)不多的他,在科研的战场上,雖(sui)不像胡渊鸣一样耀(yao)眼(yan)的艷(yan)麗(li),却散发出一股(gu)更加刚猛的熾(chi)热。

方燠成为了我第二个学生。如果旻辰是一杯濃(nong)厚(hou)的酒,底(di)蘊(yun)日渐成熟,方燠就是一把嗜(shi)血的刀,愈(yu)加鋒(feng)利(li)兇(xiong)殘(can)。他在随后的5年里,把舊(jiu)论文的实现和新想法的尝试这两件事的速度都做到了像居(ju)合斬(zhan)一般,一刀断骨刀刀落命。

在那段日子里,在方燠、旻辰、和一干猛将的拼(pin)搏(bo)下,我们一直推进高性能的MPM多物理仿真,直到億(yi)万粒子级别的仿真也变得轻松写意。我们通过跟超算中心的合作,把MPM发展到了能进行Exascale computing的超算机上,每秒(miao)算10的18次方个浮点运算。这样看来,对于高分辨(bian)率的追求,我们是认真的。

后来,我的实验室匯(hui)集(ji)了更大一批(pi)意气风发的孩(hai)子们,屈子吟(yin)@ziyin(ziyin:北京(jing)电影学院发了一篇满是数学公式的计算机顶会论文,并开源了其代码) ,仇(chou)宇星(xing),@王鑫磊(lei),李轩,陈宇諾(nuo),@曹(cao)亚帝(di),等等,他们圍(wei)繞(rao)着方燠主导架构的c++仿真引擎ziran(自然),在物理模拟的海洋里尽情嬉(xi)戏。他们飄(piao)逸(yi)的学术舞(wu)曲还在不断被譜(pu)写,有他们在身边,我感觉自己永(yong)远抓(zhua)住了青春(chun),每天都是学术上的“掰(bai)饼聚(ju)会”:

To break bread is to affirm trust, confidence, and comfort with an individual or group of people.

在帮助人类打通虚拟世界和现实世界的历史(shi)使命上,我们致力于仿真这一个点,用硬(ying)核(he)的根(gen)基散发千万的枝(zhi)葉(ye)。下面的这些都是我的实验室这些年研究过的方向。这些成果中也充(chong)满了极其珍(zhen)贵的如北京大学朱松纯教授、陈宝權(quan)教授、以及浙(zhe)江大学唐(tang)敏(min)教授等前輩(bei)传授的经验和给予(yu)的帮助。

第六章:与timestep结缘

步者乃一身之根基,运动之樞(shu)紐(niu)也。——《太极拳(quan)十大要论》

在元宇宙的“基础架构”之中,如果建模是内功,渲(xuan)染(ran)是招式,那么物理仿真就是步法或身法。步法与时间和运动紧密綁(bang)定在一起,在时间上做微分和積(ji)分,从过去预测未来,用未来指引过去。(指引过去,靠(kao)的是可微分模拟。)不管是逍(xiao)遙(yao)派的淩(ling)波微步,泰森的蝴(hu)蝶(die)步法,还是奥拉朱旺(wang)的梦幻(huan)脚步,它们都反映(ying)了一个道理:有一套成熟的步法是一位集大成者立于不败之地的一个可靠的保(bao)证。

在动力学物理仿真中,大家最常说的一个词,就是timestep:时间步长,Delta t。正向物理仿真的过程,本质上往往就是微分方程在时间軸(zhou)上积分的过程,这个过程,又被称为timestepping method;我願(yuan)译其为“时间步法”。

现实中的时间是连续的,但仿真中的时间是离散的。对于一段24 FPS的动画来说,每秒鐘(zhong)的理想情況(kuang),是让仿真算法从一个过去的时刻往前走24步,每步走1/24秒,生成24个几何形态。除非希望对现实的逼近追求更加极致的準(zhun)确性,一个通用图形学算法最好具備(bei)只需要走24步的能力。如果往前预测1秒需要走48步,或者240步、2400步,那就往往是成倍的效率降低(di)。

可惜的是,直到2015年左(zuo)右(you),甚至今日,仍然有无数的图形学仿真算法需要走子步(substeps)。更令人痛(tong)苦的是,即使走了子步,它们中的绝大多数仍然不能保证数值的稳定性,俗(su)称“爆(bao)了”:

放錯(cuo)图了。爆了的仿真其实长这样:

仿真爆了就意味着得调节参数把程序重跑。我2011年在工业光魔ILM实习,我那时的实习导师告诉我,ILM里在帮复仇者联盟(meng)的绿巨人设计肌肉仿真算法,浩(hao)克一发力,程序就爆炸,重跑停(ting)不下来,delta t 小的不能再小了,机房(fang)空调费都要烧个上百万。

为了能够邁(mai)出1/24秒或更大的步子,我开始致力于研究基于优化的时间步法。非線(xian)性非凸(tu)数值优化是一个非常厲(li)害的领域,如今整个神经网络和深度学习都靠它。这个宇宙最基本的物理规律:热力学第二定律(熵(shang)增原理)本身也定義(yi)了一个优化问题。因此,越来越多的应用数学家开始用优化和变分法的思路去重新思考动力学偏微分方程的数值解。

弹性体模拟的方程便是一个可以重新定义为寻求最小值的优化问题!在此框(kuang)架之下,时间步长可以迈的任意大,不会扯(che)到蛋。

此间工作很多,图形学里早期工作比较有代表性的,包括劉(liu)天添(tian) 2014年的巧妙投影动力学“Projective Dynamics: Fusing Constraint Projections for Fast Simulation” 及其2017年的拟牛顿法“Quasi-Newton Methods for Real-time Simulation of Hyperelastic Materials”(2019年(第八屆(jie))中国科学技术大学《计算机图形学前沿》暑期课程_嗶(bi)哩(li)哔哩_bilibili)(冰点藍(lan):计算机图形学前沿(2019) Towards Real-time Simulation of Deformable Objects),和我2015年参与的比较中规中矩(ju)的牛顿法“Optimization Integrator for Large Time Steps”。我的实验室后来则在下面四个地方分点发力:

李旻辰在2019年把拟牛顿法跟domain decomposition结合了起来,打败了一系列競(jing)爭(zheng)对手,得到了一个非常高速度的有限元弹性体解决方案Decomposed Optimization Time Integrator “DOT”(点点有限元法):

王鑫磊则另辟(pi)蹊(qi)徑(jing),考虑多尺(chi)度网格multigrid,让MPM也走到了超大的时间步长上面,发明Hierarchical Optimization Time Integrator “HOT”(热辣物质点法),可以高效处理超级“硬”的弹塑性体,帮助工程力学设计的仿真:

方燠则跳出牛顿和拟牛顿的思路,以“快”为目的,把MPM的加速结合上了交替(ti)方向乘子法(Alternating Direction Method of Multipliers,ADMM)上。这个方法被称为“Silly Rubber”(愚(yu)人橡皮法),可以快速模拟各种MPM适合的材料,比如奶(nai)油(you):

我们最为得意的,也是最新搞出来的,便是李轩、李旻辰和我一起用几支爛(lan)笔头推导出来的SIGGRAPH 2022论文Energetically Consistent Inelasticity (ECI)。这个工作在数值计算理论上,我认为有很可观的意义:它首次让塑性力可以迈着同样大的步伐,被真正隐式求解了!也就是说之前的方法,包括上面提到的,都不准,都对塑性力做了一个强相关于 delta t 的其实很不准确的近似。那算的准有什么好处呢?当然是去跟现实对照了。跟现实连定性的视觉效果都对不上的虚拟物体,步法不够稳健,不能叫数字孿(luan)生,永远都只是游戏(没错, 这里说的的正是PhysX/PBD)。我们的坚持,是第一性原理,是我们希望一直尽力朝(chao)着真正的数字孪生方向前行的一些固执的原则。

第七章:摩擦碰撞的第三次战役,IPC魔童降世

开始的那些年,从最初level set fracture中的一炮双响,到MPM布料,我一直在跟“摩擦碰撞”这个难题对干。每一场仗(zhang)都打的很漂亮,但都还是存(cun)在很多Limitation。以2017年的MPM布料为例,作为它的締(di)造者,我比任何人都能更清晰(xi)的看到它光芒(mang)下令我不堪(kan)面对的缺憾(han)。作为一个MPM方法,它在隐式积分条件下性能非常差(cha)。它对粒子和网格的依(yi)賴(lai)给几何体强加了许多苛(ke)刻的要求:比如两者的分辨率需要尽量吻(wen)合。同时,它又像一台看似美好的特斯拉自动駕(jia)駛(shi)汽車(che),一不小心甩(shuai)给你一个不大也不小的错误(数值粘性和偶(ou)爾(er)的数值穿透),让你在使用时总是心怀忌(ji)憚(dan)。比如正如下图所示(shi),MPM布料做毛衣虽然厉害,但是仔细看去,还是出现了许多穿透:

穿透会非常嚴(yan)重的影响仿真的精度和可信度。它不只是模型视觉上的错误,随之而来的弹性力和摩擦力也会因穿透而变得离谱和虚幻。因此,长久以来,至少在布料这一个小方向上,我并没有能够把MPM从特效和游戏的应用中打出去。换而言之,因我坚信元宇宙和游戏的最重要区别是对“准”的把握(wo)上(这也是我不认为NVIDIA的omniverse拿着一个基于不物理方法推导出来的PhysX引擎可以做成真正元宇宙物理引擎的根本原因),MPM在布料这个方向上要走的路还很长,还需要后来者的努(nu)力。

时钟撥(bo)到2020年前夕,没有征(zheng)兆又似蟄(zhe)伏(fu)许久的一件事情发生了。之前我把旻辰比作美酒,他便真的是这样一个学生,在陈釀(niang)的千錘(chui)百煉(lian)中一不小心就飽(bao)满丰厚,醇(chun)香(xiang)持久。没几年,他便从一个学生瀟(xiao)潇灑(sa)洒地蛻(tui)变为一个成熟的合作伙伴。那晚(wan),我鄭(zheng)重的告诉旻辰,“你刚完成的这个叫做IPC的项目,把一个困(kun)擾(rao)了计算机图形学和工程力学无数研究者几十年的一个领域给终结掉了,完美本无法触及,但IPC是我入行以来见过的,最接近完美的仿真技术。”在这一年后,旻辰以IPC斩獲(huo)SIGGRAPH年度最佳博士论文奖,毫(hao)无懸(xuan)念。

IPC的全称是Incremental Potential Contact,中文作增量势能接触,很拗口,还是就叫IPC吧。它的算法冗(rong)长而又毫不晦(hui)澀(se),刚猛而又不失优雅(ya)。在数值优化的框架下,IPC把所有基于mesh的物理仿真中“不许穿透”这个令学术界和产业界都为之癡(chi)迷的难题,从仿真问题的数学形态上就直接通过一个灵巧的定义给彻底斃(bi)掉了,其后的算法自然是如出入无人之境(jing)。“从此穿模是路人。”

技术上,IPC提出了一个嶄(zhan)新而又巧妙的关于“碰撞”的数学描述方法:所谓碰撞,便是在动力学过程的最小作用量原理下,要求任何非鄰(lin)接几何表面之间的欧氏(shi)距(ju)离在连续的时间轴上恒大于零(ling)。它正是又一个timestepping的时间步法!如此一来,我们得到了一个可以用数学完美描述的約(yue)束优化问题。再配(pei)以些许精巧而不詭(gui)野(ye)的算法设计,最终的IPC技术在数学、算法和实现上都令人信服。毫不夸张的说,IPC是数值仿真自发明以来,唯一的把精确碰撞和摩擦这两个要求完美解决掉的辦(ban)法。它唯一的缺点是计算效率不够快;被我们后来攻克,按下不表。

IPC及其2021年后续工作賦(fu)能了无数之前计算机仿真界根本做不了的事情,以绝对的稳定性、精确性、和数值收斂(lian)性涵(han)蓋(gai)了三维柔(rou)性体(“百万四面体的毛球(qiu)”和“是繩(sheng)子就坚持一百秒”):

二维布料(轻松处理打结,和*任意多层*布料上身,这里只展示了四层,毕竟我们的建模制版技能点加的比较少):

二维薄(bo)殼(ke)(跟真实的一叠扑克牌(pai)的厚度完全吻合,没有任何别的方法可以做到)(这是不是可以拿去开元宇宙賭(du)场?):

以及首次有“不穿透保证”与“精准摩擦力”两个性质的的一维细桿(gan)(面条、毛发):

旻辰向来沉稳低调,他宣传IPC的文章(李旻辰:IPC: SIGGRAPH 2020开源有限元碰撞独家处理方案)也跟他的人一样靠谱实在。2020年1月,我在IPC的第一篇论文里,写下过这么一段总结(中文意译略(lve)有改写):

“IPC技术适用于所有基于网格的固体模拟。无论是自碰撞、外碰撞、甚至是来自于低维曲面的碰撞,IPC都是一个绝顶灵活、有效、和无条件保证成功的解决方案。IPC对图形学和工程力学基于或不基于有限元的全部应用都提供(gong)了有史以来第一个几何不穿透,体积不反转的可证明的直接保证。从此以后,跑固体仿真只需要输入真实世界可以测量的物理参数和几何参数,而再不需要去调节所谓的数值参数。在此之上,IPC承(cheng)诺必(bi)定能够对任意复杂的状态给出求解,并且这个解就是这个世界上现存所有算法能给出的,最接近真实世界摩擦碰撞结果的解。”

几年过去了,这个总结被图形学、机械工程、以及机器人领域的同行不断的引述和验证。作为一个学者,我从未如此夸过一个工作,毕竟有吹(chui)牛皮之嫌(xian)。但是IPC不一样,我不担心,因为这个牛皮是鋼(gang)铁鑄(zhu)成,永远也吹不破。

IPC这么完美,还有什么可以改善(shan)的呢?正如上文所说,它的计算效率存在一定的问题。在我们一籌(chou)莫(mo)展之计,一位老友突然与我们取(qu)得了联系。此人名作陰(yin)陽(yang)(@Yin Yang),继胡渊鸣之后成为第二个让我瞧(qiao)见八卦(gua)图头像便能开怀之人。克萊(lai)姆(mu)森大学的楊(yang)垠(yin)教授(现在遷(qian)去了猶(you)他大学)姍(shan)姗来迟,他是降维仿真和GPU加速仿真的代表人物。我们一拍即合,开始建立深厚的革命友誼(yi)。自那天起,杨垠、旻辰和我开始了围绕IPC技术的一系列深度合作项目。在我们的思维火花碰撞之下,浩如煙(yan)海的脑洞(dong)和研发项目扑面而来。以2022年为例,我们便让IPC生态系统在刚体仿真和实时仿真两个方向取得了不亚于原始IPC的崭新成果。

第一个成果,是我们在刚体仿真上取得的重大成就。刚体与柔性体自古(gu)以来便被分开处理,求解它们的方法不能说是关系不大,只能说是几乎毫无关系。在IPC的加持下,我们提出了崭新的“Affine Body Dynamics (ABD)” 仿射体动力学,在淘(tao)汰(tai)传统刚体模拟的路上直接飆(biao)到终点,让刚体重新回归成它们在真实世界中的样子:即使最硬的物体,也会微小的形变,硬度是振(zhen)金还是木(mu)头,该是多少就是多少,不需要被假设成绝对刚体。在ABD技术的加持下,我们在擁(yong)有所有IPC优点的同时,达到了媲美现有刚体引擎的速度和全方位碾(nian)压的精度。高速而又精准的机械体仿真首次成为可能。

真实碰撞驅(qu)动的齒(chi)輪(lun):

及其受(shou)力分析:

?带传动结构的小车(含简易(yi)气缸(gang)):

及其传动引擎的简易气缸运动的可视化(活塞(sai)运动带动旋(xuan)转)

铁鏈(lian)弹性波的传播:

比较传统的场景当然也不在话下:

值得一提的是,ABD在机器人抓取的任务上,已经被机器人领域的学界和工业界同行验证,其成功率和对接触力/摩擦力的准确性上,已经远远超过了PBD、Bullet、Mujoco等一众现有刚体引擎;强化学习在我们的solver上,轻松訓(xun)练出了真正可以转化到物理世界的控制算法,误差之小,模拟过程之愜(qie)意,非机器人业内人士不可言喻(yu):

?英伟达Omniverse也宣传了很多工业机器人的场景,它的技术仍然基于PhysX(PBD),那套简單(dan)易学但毫无真实物理原则的手段。剩下的一切,还何须多言呢?也许在有些人心中,元宇宙只需要以假亂(luan)真,”看上去差不多就行了。”那么,就等时间给出“自然”选择的答案。

我从方法论上表述我自己的观点。我认为,像PBD一类的技术,以快为出发点,在当年的低下算力和就是面向游戏的两个前提下,无可厚非。但是由(you)于对数学和物理原理的修(xiu)改与简化,使其在元宇宙的未来想要从快到准,路途(tu)难如蜀(shu)道。与它们截(jie)然不同的是,IPC直接先把“准”这一步做到了几乎完美,那么在这个前提下,再做快有多难呢?在算数、算法、算力的三重加持下,IPC加速之路顺暢(chang)无阻(zu)。举例而言,我们2022年的第二个成果,便轻松地实现了多层布料的实时交互仿真,并且,没有犧(xi)牲(sheng)任何IPC在碰撞上所承诺的美好保证:

第八章:下一个“Timestep”

十二年,我从C++都不会写的等离子体物理专业的学生,到拿到CS PhD,去常青藤(teng)做CS教授,再到UCLA应用数学拿tenure,回想一下,这其中竟没有一年被浪费,纯粹跟着喜爱的研究走,顺其自然。 记得网上常有人讨论@计算机图形学的交叉学科本质。我想我本人应该就是一个不错的活标本吧。十二年的职业道路上,我也是无比幸(xing)运(毕竟射手座(zuo)),遇到了太多牛逼的师长、同学、挚友、和学生,每个人都让我学到了很多。

那下一个十二年,我应该主要做些什么呢?思考了许久,不为立志,但求有一个计划。我想, “closing the gap between virtual reality and physical reality”,这个目标绝没有变,围绕物理仿真这一指引运动规律的轴心的原则也依旧在我心上打着思想钢印。在此之外,我与攜(xie)有同样想法的三个人(@李旻辰,方燠,杨垠@Yin Yang)一起成立了Timestep,致力于稳健、精准、高效、普适的物理仿真“步法”及它们在不同产业中的应用,并在国内以及世界多地积极打造和布局(ju)一个可持续发展的体系。万水千山不停步,希望在下一个十二年,我们跟更多同道中人一起,通过有趣和有用的技术和想法把虚拟世界和现实世界真正打通。

参考資(zi)料:

https://zhuanlan.zhihu.com/p/560415998

若对本文进行二次转載(zai),請(qing)联系原文作者 返(fan)回搜狐(hu),查(zha)看更多

责任编辑:

发布于:陕西延安洛川县