ORIGAMI五分钟零基础入门秘籍

   Facebook新推出的Origami插件非常强大,配合Sketch可以非常方便的搞定Demo动画。鉴于国内几乎没有教程,今天腾讯同学整理了一份Origami入门文档,就算是零基础也可以迅速上手,强烈推荐 >>>


  早在Facebook推出Facebook Home时,相信强大的原型工具Quartz Composer就进入了很多设计师的法眼,无须编写代码就可以输出细腻丰富的动画,这个太刁了,和大家一样,彼时我也信誓旦旦励志要学会这个玩意儿,于是开始参考教学视频摸索,甚至拿着Quartz Composer的Guideline企图翻译,结果发现并不是那么简单。于是学QC这件事情就一直一直搁浅,直到Facebook又推出了Paper,有了Origami这个插件,QC的门槛瞬间降低了很多,终于,感觉自己入!门!了!!尤其是和Sketch联动,做demo真是方便了很多。这里按照自己的理解参考各种资料的总结对Origami整理了一份入门篇文档,真的可以帮助零基础的同学入门,欢迎同样在研究的同学一起探讨,有不对的地方求指正~

  基本概念

  首先说一下“模块”(patch),模块是QC里面最基本的元素,不同的模块实现不同的功能,要搭建一个原型,实际上就是把不同的模块按照逻辑像搭积木那样拼装的过程。

  模块可以简单区分为这样两类:圆角和方角。

  圆角是最普通的模块,而方角的模块叫做“宏”(Macro),可双击进入详细编辑。(我把它理解为文件夹)


  模块还会有颜色的区别,蓝色的模块是输出模块,在画布中可以被看到;黑色模块是最常见的状态;紫色模块表示模块内部还有其他子模块。

  模块和模块之间用连线的形式拼接起来,模块左侧是输入接口,右侧是输出接口,将A模块右侧的输出点连接到B模块左侧的输入点,即可将A模块的结果输出到B模块。

  基本逻辑

  这个模型是在一个文章里面一位朋友分享的,我觉得非常到位,基本上每一条操作都是这样的执行逻辑。

  每一个动画首先有一个交互触发动作,然后用一个开关来控制一个动作的两种状态,两种状态对应变换两个数值,然后表现在层上~ 数值变化前多一个弹性动画来控制动效。


  下图是最简单的图片放大缩小的例子,在数值变化的地方给图片大小一个初始值和结束值,就可以简单的实现点击图片放大缩小的效果了~~~~


  小试牛刀

  搞清楚基本概念和基本逻辑之后,就可以上手试试了。

  我们先新建一个Origami file。


  如下图,会弹出左右两个窗口,这是Origami默认的文件,由此也可以看出Origami为移动而生~ 第一个patch可以控制右侧手机的样式、横屏还是竖屏等等,第二个patch是方角的,也就是上面说的宏(Macro),双击它就可以将我们想要设计的内容放在手机里面了。第三个patch是蓝色的显示层。


  每一个patch都可以双击修改名字,在后面内容变多的时候,起好名字变得非常重要。可以看到每一个patch都有自己的输入输出参数,可以都调一下试试看效果~~~

  在viewer窗口,有很多很好用的快捷键可以调整展示的样式。例如,每次我会很习惯地去掉拿着手机的手……在viewer窗口激活的状态下, 键盘输入H,就可以去掉手了;键盘输入=/-可以切换背景样式;键盘输入F可以全屏展示,去掉手机框。


  Demo1. Hello Origami

  按照开发教程最习惯性的做法,我们先来做一个“Hello Origami”的demo。

  双击Layer Group,进入界面内编辑态,这里有一个已经存在的patch是Fill Layer,这是一个填充图层,用来设置背景。

  在编辑区域,键盘输入T,就出现了一个Text Layer。 这里说一下,调出所有patch库的快捷键是“command + enter”。(请叫我快捷键瘾君子~)

  可以看到viewer区域已经有“text”显示了,选中Text Layer 按“command+1”,可以呼出这个layer的设置项,就可以随便调整试试看了,我们在Text项里写上“Hello Origami”,就完成Demo1啦~~~


  Demo2,可交互的Origami

  接下来我们试着让案例交互起来,做一个点击窗口,文案颜色和背景颜色互换的demo。

  在编辑窗口,键盘输入I,可以看到出来了一个Interaction2的紫色patch,这是一个交互指令patch,输出交互指令,down是鼠标按下状态,up是鼠标单击状态,tap是触碰,drag是拖拽(这里提一下,从手机来操作时,感觉up和tap是一样的,我也有点不理解)。

  在编辑窗口,键盘输入“command + enter”,呼出Patch Library,输入Color Transition,其实看名字大家应该就知道这是个啥,对就是这个东西来切换颜色。再在编辑窗口,键盘输入“shift + S”,得到Switch patch,这是一个开关。

  连接几个patch,我们就可以切换Hello Origami的颜色了,同样的方式,把背景再同步切换一下,Demo2 完成~~~~


  和切换颜色同样的道理,我们可以用Transition切换文本的大小。Layer中,scale是控制大小的元素,按百分比变化,1为100%以此类推。这时候你可能会觉得切换效果不够柔和,很生硬,在编辑窗口,键盘输入A,出现一个Pop Animation,这是一个动画过渡的效果,把这个patch放在颜色变化前,就会有过渡效果啦~~~~


  如下图,就出来一个最简单的闪屏感觉的动画。

时间: 2024-08-03 13:01:00

ORIGAMI五分钟零基础入门秘籍的相关文章

零基础入门深度学习(五):长短时记忆网络

在上一篇文章<零基础入门深度学习(4):循环神经网络>中,我们介绍了循环神经网络以及它的训练算法.我们也介绍了循环神经网络很难训练的原因,这导致了它在实际应用中,很难处理长距离的依赖.在本文中,我们将介绍一种改进之后的循环神经网络:长短时记忆网络(Long Short Term Memory Network, LSTM),它成功地解决了原始循环神经网络的缺陷,成为当前最流行的RNN,在语音识别.图片描述.自然语言处理等许多领域中成功应用.   但不幸的一面是,LSTM的结构很复杂,因此,我们需

七天LLVM零基础入门(Linux版本)------总结

七天LLVM零基础入门这系列文章,为了让刚接触LLVM的人在最短的时间内快速的熟悉LLVM.这系列文章,现在经过将近一年的时间的使用,有了不少反馈的意见,现在将这些情况总结一下. 1. 在按照这个七天的学习计划进行的学习过程中,不少人出现了延误现象,主要体现在读文档的时候,读的过于仔细,然后感觉时间不够用.虽然在文档上花了很长时间,但是到最后该用文档中的东西的时候,反而无从下手.出现这个问题,主要还是不会把握文档的重点,这个系列中列出来的文档,在日后接触LLVM的过程中,需要不断的去读,反复的去

移动交互小白零基础入门学习笔记之:手势篇

此贴为零基础入门学习贴,总结和积累些基础知识~ 1.基本手势 触屏设备中多样的手势操作,都是由这10种基本手势组合演变而来. 2.常用动作 基本动作是触屏界面中最常用的动作,如打开.选择等. 与对象有关的动作是对屏幕上某一目标对象的操作,如调整图片的位置大小,选择.删除或移动一个文件等. 导览动作是对屏幕视图的操作,如切换屏幕.滚动屏幕.缩放网页等. 画图示意动作是用画图的方式来示意某些操作,这些图形最好是常见易画的图形,符合用户心理预期,如画勾表示确认,画叉表示取消. 以上都是触屏设备中常用的

Bootstrap零基础入门教程(三)_javascript技巧

什么是 Bootstrap? Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的. 历史 Bootstrap 是由 Twitter 的 Mark Otto 和 Jacob Thornton 开发的.Bootstrap 是 2011 年八月在 GitHub 上发布的开源产品. 写到这里,这篇从零开始学Bootstrap(3)我想写以下几个内容: 1. 基于我对Bootstrap的理解,做一个小小的总结.

Bootstrap零基础入门教程(二)_javascript技巧

什么是 Bootstrap? Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的. 历史 Bootstrap 是由 Twitter 的 Mark Otto 和 Jacob Thornton 开发的.Bootstrap 是 2011 年八月在 GitHub 上发布的开源产品. 本文重点给大家介绍Bootstrap零基础入门教程(二),具体详情如下所示: 过程中会频繁查阅资料的网站: http://www.

零基础入门深度学习(6) - 长短时记忆网络(LSTM)

在上一篇文章<零基础入门深度学习(4):循环神经网络>中,我们介绍了循环神经网络以及它的训练算法.我们也介绍了循环神经网络很难训练的原因,这导致了它在实际应用中,很难处理长距离的依赖.在本文中,我们将介绍一种改进之后的循环神经网络:长短时记忆网络(Long Short Term Memory Network, LSTM),它成功地解决了原始循环神经网络的缺陷,成为当前最流行的RNN,在语音识别.图片描述.自然语言处理等许多领域中成功应用.   但不幸的一面是,LSTM的结构很复杂,因此,我们需

深度学习真的可以零基础入门吗?

我们先来谈谈自学深度学习最大的问题. 现在搞深度学习的,十之八九并不是"科班出身". 这就导致:如果你想要跨行成为一名深度学习工程师,从头到尾的一切,都基本靠自学.但是,开发者很快就会发现自己遇到了第一个障碍: 绝大多数的学习资源以理论研究为导向,轻工程实践. 其实这也难怪.这几年,深度学习是火了,但大牛们都来自学界,例子不胜枚举:比如谷歌云首席科学家李飞飞.主管 FAIR 的 Yann LeCun.在谷歌大脑的 Ian Goodfellow,以及在过去三年里任百度首席科学家的吴恩达.

零基础入门深度学习(1):感知器,激活函数

零基础入门深度学习(1) - 感知器零基础入门深度学习(2) - 线性单元和梯度下降零基础入门深度学习(3) - 神经网络和反向传播算法零基础入门深度学习(4) - 卷积神经网络 零基础入门深度学习(5) - 循环神经网络. 零基础入门深度学习(6) - 长短时记忆网络(LSTM). 无论即将到来的是大数据时代还是人工智能时代,亦或是传统行业使用人工智能在云上处理大数据的时代,作为一个有理想有追求的程序员,不懂深度学习(Deep Learning)这个超热的技术,会不会感觉马上就out了?现在救

七天LLVM零基础入门(Linux版本)------第七天

作者:snsn1984 这是这一次零基础入门的最后一天,这次的主要任务是实战一个Pass. 任务描述: 实现一个Pass,该Pass可以读取一个程序中所有的for循环的循环头的名字并输出. 同时,实现一个测试用例去测试输出的结果是否正确.该Pass的输入应该包含嵌套 循环. 在这个任务完成之后,应该已经达到可以达到可以分析和实现LLVM的Pass,查找和 分析LLVM的源码,查找需要使用的文档,并且可以知道下一步该如何自己学习LLVM. -----------------------------