AE 表达式:L = thisComp.layer("Lens flare"); L.toWorld(L.anchorPoint)是什么意思?

这个表达式是什么意思?谢谢!... 这个表达式是什么意思?谢谢! 展开
 我来答
jiduhaor
2015-06-07 · TA获得超过1.1万个赞
知道大有可为答主
回答量:1932
采纳率:66%
帮助的人:675万
展开全部
很简单,就是把Lens flare(镜头光晕)的中心点从lens flare层定义在了世界的中心点上,给你简单的说下,
第一句:L=thisComp.layer("lens flare");//定义了定义了L是lens flare层,也可换句话说就是变量L把lens flare层的所有信息都获取出来了,lens flare的所有信息都被集中在了字母L上。
第二句:L.toWorld(L.anchorPoint);//把L(lens flare层)的anchorPoint(中心点)从层坐标转换到世界的坐标,也就是世界中心,这样做的好处就是镜头光晕特效不会跟随承载他的层移动了,你移动lens flare层,镜头光晕特效变动的知识flare center的数值,(如果你看不懂你可以删除这两句表达式移动此层看下,然后在有这两句表达式的情况下再移动看下,差别一下就看出来了)。
解析:好人做到底,把一些我感觉你难懂的东西给你说下,toworld这个代码在AE里用的频率不高,它的作用主要是把层的点坐标转换为世界的点坐标,层的坐标与世界坐标有哪些不同?我们都知道,如果一个层被使用了一个特效,如果我们把这个层,拖出comp的窗口,此时特效就看不到了对吧?(这是层坐标)!! 如果你把层上的特效的点坐标转为世界点坐标呢,情况就不同了,只要世界不消失,你的“层”跑的再远只是移动的你转的世界的特效的点,自己做些小案例体会一下,有些东西很难讲出来!

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
再回头看上面的:
L = thisComp.layer("Lens flare");
L.toWorld(L.anchorPoint);
这不知道是哪位大神写的,我觉得第一句表达式写不都不用写,有跟没有是一样的,
第二句呢得改一下,改为,toWorld(transform.anchorPoint);
其实就是把这两个代码删掉,直接改成一句toWorld(transform.anchorPoint);,
我没看出来原作者定义L是干嘛用的,虽然是获取lens flare的层的信息但是我觉得没那必要!
扯的有点多,有些是废话,见谅!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式