代码实现照片素描

In 2018 I started the process of consistently creating and posting my code sketches online. These are small animations I make with code and post on instagram. Through these sketches I tried to visually express my ideas using color, animation, and interaction. Through time, I wanted to refine my own interaction style, color use, and general aesthetic preferences. I tried to create on a weekly basis but wasn’t strict about it.

在2018年,我开始了一致地在线创建和发布代码草图的过程。 这些是我用代码制作的小动画,并发布在instagram上 。 通过这些草图,我尝试使用颜色,动画和交互方式直观地表达自己的想法。 随着时间的流逝,我想完善自己的交互风格,颜色使用以及一般的审美偏好。 我尝试每周创建一次,但并不严格。

I was inspired by the School of Poetic Computation, Zach Lieberman, and Dan Shiffman’s creative use of interactive code to push my own boundaries and continue learning. Huge thank you to Ian Vonseggern for helping me understand a lot of the underlying mechanics of the built in p5.js functions.

扎克·里伯曼(Zach Lieberman)诗意计算学院和丹·希夫曼(Dan Shiffman)创造性地使用交互式代码来突破自己的界限并继续学习,这给我带来了启发。 非常感谢Ian Vonseggern帮助我理解了内置p5.js函数的许多底层机制。

I thought I’d show what I sketched last year and talk about my process.

我以为我会展示我去年的素描并谈论我的过程。

问责制 (Accountability)

I started this instagram account to keep myself accountable. I’ve tried many times to learn coding languages over the years but have struggled to keep inspired. I could only stare at lines of code for so long before I lost sense of my starting motivation. This time around however, processing & p5.js had a fast enough execution cycle to let me see what I was building while I was building it. The cycle between writing code and seeing output was wonderfully short.

我启动了这个instagram帐户以确保自己负责。 多年来,我已经尝试了很多次学习编码语言,但是一直努力保持灵感。 我只能盯着代码行这么长时间,直到我对开始的动机失去了知觉。 但是这一次,processing&p5.js具有足够快的执行周期,可以让我看到自己正在构建的内容。 编写代码和查看输出之间的周期非常短。

I set a timebox of a few hours per sketch. I tried not to put weight on what I created, but whether or not the idea conveyed a sense of emotion. That mindset helped me feel comfortable iterating on ideas through several sessions.

我为每个草图设置了几个小时的时间框。 我尝试不对自己创作的作品施加任何压力,但是这个想法是否传达了一种情感感。 这种心态使我在数次会议中反复讨论想法时感到很自在。

& now what?
& 怎么办?

灵感 (Inspiration)

Having a collection of images is really helpful to inspire ideas. I spent a lot of time looking at high fashion runway shows (Alexander McQueen), streetwear (New York Sunshine), album covers (Nirvana), flower arrangements (Freakebana), 3d sculptures (David Smith), and architectural structures (Philip Johnson’s The Glass House). More examples: Serge’s daily poster series, Laurie Anderson’s Handphone Table, Spider-man: Into the Spiderverse movie color scheme, Sam Gilliam’s exhibition at Dia:Beacon and the Whitney’s Programmed Rules, Codes, and Choreographies in Art exhibit.

收集图像确实有助于激发思想。 我花了很多时间看时装秀 (Alexander McQueen), 街头服饰 (New York Sunshine), 专辑封面 (Nirvana), 插花 (Freakebana), 3d雕塑 (David Smith)和建筑结构 (Philip Johnson's The玻璃屋)。 更多示例:Serge的每日海报系列 ,Laurie Anderson的Handphone Table ,蜘蛛侠:进入Spiderverse 电影配色方案 ,Sam Gilliam在Dia:Beacon的展览以及Whitney的Programmed Rules,Codes和Choreographies in Art展览。

Throughout the past year, I learned that I gravitated toward creating works with opposing pastel colors. Tobias van Schneider’s color tool helped inspire color combinations that worked.

在过去的一年中,我了解到我偏向于创作具有相反柔和色彩的作品。 Tobias van Schneider的色彩工具有助于激发有效的色彩组合。

L — R: A Freakebana arrangement, T Shirts by New York Sunshine
L — R:Freakebana的安排,纽约阳光T恤
L-R: Laurie Smith’s Handphone Table instructions, ‘Drawing in space’: David Smith’s Hudson River Landscape, 1951
LR:劳里·史密斯(Laurie Smith)的手机表说明,“在太空中绘画”:戴维·史密斯(David Smith)的哈德逊河风景,1951年

处理 (Process)

My process is pretty lo fi. I use a combination of notepaper, Sublime Text, Quicktime, iMovie, and my iPhone.

我的过程很不错。 我使用了便条纸,Sublime Text,Quicktime,iMovie和我的iPhone。

  • draw out a rough physical sketch of my idea勾勒出我的主意
  • fork an old sketches or google functions to figure out execution methods派生旧草图或Google函数找出执行方法
  • figure out limitations in the libraries and iterate through different ways to create the idea找出库中的限制,并通过不同的方式迭代以创建想法
  • grab a screen recording with Quicktime, usually several cycles of the animation使用Quicktime抓取屏幕录像,通常是动画的几个周期
  • trim the video using Quicktime使用Quicktime修剪视频
  • load the .mov file into iMovie to set the white border and thumbnail image将.mov文件加载到iMovie中以设置白色边框和缩略图
  • airdrop the file to my phone将文件空投到我的手机上
  • upload to instagram上传到Instagram
My file system
我的档案系统
iMovie turns out to be a nice overview of my sketches
iMovie可以很好地概述我的草图

运动轨迹 (Movement Trail)

My initial sketches were around the movement trail — what visual artifacts can I create to simulate movement?

我最初的草图是围绕运动轨迹的-我可以创建哪些视觉伪像来模拟运动?

I started with this because one of the core components of the Processing language is its draw() function. This draw() function continuously gets called and executes the lines of code contained in its block until the sketch is terminated. By default the draw() function gets executed as many as 60 times per second, but another function, frameRate(), can control how many frames actually get displayed.

我之所以开始,是因为处理语言的核心组件之一是它的draw()函数。 不断调用此draw()函数并执行其块中包含的代码行,直到草图终止。 默认情况下,draw()函数每秒执行多达60次,但是另一个函数frameRate()可以控制实际显示多少帧。

This allowed interesting layering. My first sketch used a two dimensional random walk with an image of Drake.

这允许有趣的分层。 我的第一个草图使用带有Drake图像的二维随机游动。

Since the draw() function continuously re-draws the image, I updated the image location in each execution cycle and changed the background alpha value to be redrawn with 80% opacity, allowing a bit of the old image to peek through. This allowed for a trace of the old image to suggest movement. The layering added a nice effect of simulated fading. Drake’s smiling face wobbling around the screen was really fun to watch.

由于draw()函数不断重绘图像,因此我在每个执行周期中更新了图像位置,并更改了要以80%不透明度重绘的背景alpha值,从而使一些旧图像可以​​窥视。 这样就可以看到旧图像的痕迹,以暗示运动。 分层效果增加了模拟褪色效果。 Drake的笑脸在屏幕上摇晃,看着真的很有趣。

“Drunk in the 6” — Drake’s from Toronto (“The 6”) and a random walk is also known as a “drunkard’s walk”“第六人醉” —来自多伦多的德雷克(“第六人”)和随机漫步也被称为“醉汉漫步”

One of the things I really liked about this effect is its ability to show movement even in a still image. So much of interactive art needs time to pass in order to showcase itself; this does not.

我最喜欢这种效果的一件事是它即使在静止图像中也能显示运动。 因此,很多互动艺术都需要时间才能展示出来。 这不是。

移动线 (Moving Lines)

I walked into Sam Gilliam’s exhibit at Dia:Beacon last year and immediately loved how he took a property intrinsic to fabric — draping — and used applied color to make it an exuberant draping.

去年,我走进了Sam Gilliam在Dia:Beacon的展览中,立即爱上了他如何利用织物固有的特性-悬垂性-并使用颜色使它成为旺盛的悬垂性。

https://www.nytimes.com/2019/09/12/arts/design/sam-gilliam-dia-beacon-color-.htmlhttps://www.nytimes.com/2019/09/12/arts/design/sam-gilliam-dia-beacon-color-.html

I loved the upbeat relaxed feeling Gilliam’s “Double Merged” evoked. This immediately made me think, “How could I translate this feeling into a sketch using lines and colors?”

我喜欢吉利安(Gilliam)引发的“双重融合”的轻松愉悦的感觉。 这立刻让我想到:“我该如何使用线条和颜色将这种感觉转换为草图?”

To capture this feeling, I looked at simultaneous movement in both the x and y directions vs color movement in the HSB spectrum. I tried color movement combined with x-axis movement. I played with large y-axis movements interspersed with small x-axis movements. I really enjoyed this exploration.

为了捕捉这种感觉,我研究了x和y方向上同时运动与HSB光谱中颜色运动的关系。 我尝试了将色彩移动与x轴移动结合使用。 我在较大的y轴运动和较小的x轴运动之间进行游戏。 我真的很喜欢这种探索。

color and movement experiments
颜色和运动实验

I learned that while gentle movement was important for a relaxing feeling, color was the most important factor in conveying exuberance. Even if my ball of color was only moving along a straight line, as long as the pulsing gradient was pleasing, the sketch was exuberant and happy.

我了解到,轻柔的运动对于放松感很重要,而色彩则是传递活力的最重要因素。 即使我的彩球只是沿直线移动,只要脉动的渐变令人愉悦,草图还是充满活力和快乐的。

鼠标互动 (Mouse Interaction)

I’ve always been fascinated by the idea of a responsive environment. I love the idea of physical structures that compress or expand based on the changing number of occupants, glass that changes color based on the intensity of the sun, or structures that physically contort to adapt to its environmental stimuli.

我一直对响应式环境的想法着迷。 我喜欢这样一种构想:根据乘员人数的变化而压缩或膨胀的物理结构,根据太阳的强度而变色的玻璃,或者物理扭曲以适应其环境刺激的结构。

None of this is currently realistic in the built world, but the digital world is limitless. I started by looking at mouse x sketch interactions — what does it look like when certain items in a sketch follow my changing movement?

目前,在构建环境中这一切都不是现实的,但是数字世界是无限的。 我从观察鼠标x草图的交互开始-当草图中的某些项目跟随我不断变化的运动时会是什么样?

blue rectangles following my cursor around the screen
我的光标跟随屏幕周围的蓝色矩形
blinking eyes on click, rotating circles, or click to leave a trail of sausages
单击,旋转圆圈或单击以眨眼,留下一丝香肠

These sketches generally involved at least one static point of rotation and then elements that moved based on mouse interaction. When I was first playing with this concept, I wanted some point in the sketch to be static so that the moving parts were distinct.

这些草图通常涉及至少一个静态旋转点,然后涉及基于鼠标交互作用而移动的元素。 当我第一次玩这个概念时,我希望草图中的某个点是静态的,以使运动的零件与众不同。

I also played with showing the cursor as its own object on the screen. What I love about interactivity — controlling the image with my own movements — doesn’t translate well to passive viewing environments like instagram. When I record it, I know I’m dynamically controlling the page and the page elements are responding in kind, but when this is translated to instagram, it just looks like the elements are randomly moving around. Adding a clear cursor image kind of helps with that, but I think there can be better solutions in the future.

我还玩过在屏幕上将光标显示为自己的对象。 我喜欢互动性-用自己的动作控制图像-不能很好地转化为instagram等被动观看环境。 当我记录它时,我知道我正在动态地控制页面,并且页面元素都以实物为响应,但是当将其翻译为instagram时,看起来元素只是在随机移动。 添加清晰的光标图像可以帮助您,但是我认为将来会有更好的解决方案。

渐变色 (Gradients)

After many hours experimenting with different color schemes for the different sketches, I realized I gravitated toward a certain pastel color palette. I liked complementary colors that felt soothing. I like how I felt a sense of calm happiness looking at soothing pastel colors.

在为不同的草图尝试了不同的配色方案许多小时后,我意识到我倾向于使用某种柔和的调色板。 我喜欢让人舒缓的补色。 我喜欢看着柔和的柔和色彩带来的平静幸福感。

Funny enough, I started seeing beautiful gradients everywhere — in posters and sweatshirts and beer labels and in grocery stores.

有趣的是,我开始在各处看到美丽的渐变色-在海报,运动衫,啤酒标签和杂货店中。

https://www.urbanoutfitters.com/shop/nasa-tie-dye-hoodie-sweatshirt?color=000https://www.urbanoutfitters.com/shop/nasa-tie-dye-hoodie-sweatshirt?color=000

I got inspired from all the color pairings and wanted to recreate the soothing feeling through my sketches. I started playing around with many different types of gradients. One of the combinations I explored involved the pink color blending into the blue color, but “pushing” the blue color aside to add more and more pink to the sketch.

我从所有的色彩搭配中得到了启发,并希望通过我的草图重现舒缓的感觉。 我开始尝试许多不同类型的渐变。 我探索的一种组合涉及将粉红色混入蓝色,但是将“蓝色”推到一边以向草图中添加越来越多的粉红色。

I loved the pulsing feel of a brightness overtaking the sketch, one line at a time.

我喜欢亮度超过草图的脉冲感,一次超过一行。

pink / blue moving gradient
粉色/蓝色渐变色

My favorite gradient sketch was inspired by snowfall. This was done during the only New York snowstorm in winter of 2019. Through this sketch, I wanted to show the calming feeling of watching a whiteout from your apartment room window.

我最喜欢的渐变草图是受降雪启发的。 这是在2019年冬季发生的唯一纽约暴风雪中完成的。通过此草图,我想表现出从公寓房间窗户观看停电的平静感觉。

Having this sketch blend into the white background of the instagram app was a happy accident, and allowed for the total snowfall feeling to be amplified.

将此草图融合到instagram应用程序的白色背景中是一件很不幸的事,并且使总的降雪感得以放大。

imitating snowfall
模仿降雪

作为运动放置 (Placement as movement)

I saw Gerhard Richter’s 4,900 Colors at some point in 2019. I usually get inspired by looking at art and this was no exception. However, the question that popped into my mind this time was “so….this seems like I can recreate this myself…?”

我在2019年的某个时候看过格哈德·里希特(Gerhard Richter)的4,900色 。我通常会受到艺术创作的启发,这也不例外。 但是,这次浮现在脑海中的问题是“所以……。看来我可以自己重建这个……?”

Gerhard Richter, 4,900 Colors格哈德·里希特(Gerhard Richter), 4,900种色彩, 2007, Enamel paint on aluminum, ,2007年,铝制搪瓷漆, https://www.metmuseum.org/art/collection/search/824313https://www.metmuseum.org/art/collection/search/824313

If this is an art piece about generating colors randomly via a computer algorithm, if I have a computer and an understanding of how the random() function worked, I thought could probably figure it out. So I did!

如果这是关于通过计算机算法随机生成颜色的艺术品,如果我有一台计算机并且对random()函数的工作方式有所了解,那么我认为可能可以解决。 所以我做了!

First I worked on imitating the piece. I knew that this was a series of colored squares in the x and y direction but I quickly got stuck trying to figure out how to nest the squares inside each other. When I mentioned this to Ian, he showed me that simply putting the random fill inside of two for() loops solved that problem.

首先,我致力于模仿作品。 我知道这是在x和y方向上的一系列彩色正方形,但我很快陷入困境,试图找出如何将正方形相互嵌套。 当我向Ian提及这一点时,他向我展示了将随机填充放入两个for()循环中就可以解决该问题。

randomly generated colors
随机生成的颜色

I then played with the shapes of the fill and the fill colors. I found it quite interesting that by simply reducing the number of colors to two, what was happening in the sketches grew much clearer.

然后,我玩了填充的形状和填充颜色。 我发现非常有趣的是,只需将颜色数量减少为两种,草图中发生的事情就变得更加清晰。

反思与2020 (Reflection & 2020)

It was quite fun to write code and quickly create a visual output. I loved understanding how the different functions worked and getting comfortable enough with coding to figure out how to translate random ideas into reality.

编写代码并快速创建视觉输出非常有趣。 我喜欢理解不同功能的工作原理,并且对编码足够熟悉,可以弄清楚如何将随机想法转化为现实。

Some thoughts:

一些想法:

  • I often started with sketches that were visually overcomplicated and then pared them down after the initial draft. Over time, I learned that sketches needed a focal point to be interesting. There needed to be a clear visual reason the sketch existed. That simplicity could be shown by a lot of white space or a sparing use of color.我经常从视觉上过于复杂的草图开始,然后在初稿后将其缩减。 随着时间的推移,我了解到草图需要一个有趣的焦点。 草图必须有清晰的视觉原因。 这种简单性可以通过大量的空白或少量使用颜色来体现。
  • While it was very fun to start with the fundamentals of writing code to produce sketches, I wanted to have a quicker way of translating ideas from my mind onto the screen.虽然从编写代码以生成草图的基础开始很有趣,但我希望有一种更快的方法将想法从我的思想转换到屏幕上。

With rapid execution in mind, I started following more visual artists on Instagram and found a common hashtag amongst those artists: #touchdesigner. I googled it and instantly became very excited to try it out.

考虑到快速执行,我开始在Instagram上关注更多视觉艺术家,并在这些艺术家中发现了一个共同的标签:#touchdesigner。 我在Google上搜索了一下,立即感到非常兴奋,可以尝试一下。

As found in Wikipedia:

如Wikipedia中所述:

TouchDesigner is a node based visual programming language for real time interactive multimedia content, developed by the Toronto-based company Derivative. It’s been used by artists, programmers, creative coders, software designers, and performers to create performances, installations, and fixed media works.

TouchDesigner是一种基于节点的可视化编程语言,用于实时交互式多媒体内容,由多伦多公司Derivative开发。 艺术家,程序员,创意编码人员,软件设计师和表演者已使用它来创建表演,装置和固定媒体作品。

I think this is the next step of my sketches. Time to try it out!

我认为这是我的素描的下一步。 是时候尝试一下!

Thanks for reading~

谢谢阅读〜

翻译自: https://uxdesign.cc/sketches-in-2018-2019-cd0b02ca0115

代码实现照片素描


http://www.taodudu.cc/news/show-3240708.html

相关文章:

  • UI基础总结和个人作品集
  • 教你一秒钟画N多人像素描
  • 人工智能教育排名
  • 人工智能教育创新探索
  • 探寻职业教育中的人工智能技术
  • 未来式人工智能教育在国内的现状
  • 人工智能教育在经济社会起到的主导作用
  • 那年大四,第一次接触“青少年人工智能教育”
  • 人工智能与未来教育
  • 国家大力推广【青少年人工智能教育】, 您的孩子还只是在刷题么?
  • 如何让人工智能教育走进中小学课堂?
  • 人工智能教育进入中小学课堂,要怎么学?怎么教?
  • 2020人工智能教育创新排行榜
  • AAAI和李飞飞等推出K12人工智能教育项目,AI教育低龄化真的好吗?
  • 智能教育深度学习推荐系统---1.1.概述
  • 未来“智能教育”的蓝图:大规模在线教育中的知识智能
  • 目前电子发票的运转流程图
  • 诺诺电子发票对接 php,诺诺电子发票针对各行业的解决方案
  • 如何把pdf电子发票转为excel
  • java电子发票版式文件,电子发票ofd格式转pdf方法
  • php开发电子发票接口,EasyAPI发票管理加油站电子发票解决方案
  • 电子发票XML样式
  • 关于微信电子发票生态,这三种服务商最有机会
  • 接入微信电子发票java_Android app对接微信电子发票功能
  • python提取pdf发票信息_PDF电子发票内容提取
  • 诺诺电子发票对接 php,诺诺发票:电子发票开票常见问题及答疑
  • 电子发票服务器维护,电子发票来了!你关心的问题都在这里!
  • 接入微信电子发票java_接入微信电子发票流程步骤
  • 电商平台对接订单开具电子发票方案
  • 电子发票查验接口

代码实现照片素描_我的代码素描之旅相关推荐

  1. python代码怎么变成软件_从Python代码到APP,你只需要一个小工具:GitHub已超6000星

    点击上方Python知识圈,选择设为星标 回复1024获取Python资料 选自TowardsDataScience作者:Adrien Treuille机器之心编译参与:魔王.一鸣 阅读文本大概需要 ...

  2. java代码的执行机制_关于java代码的执行机制

    转载于:https://blog.csdn.net/houfeng777123/article/details/74316748 1.Java代码执行流程 ·第一步:*.java-->*.cla ...

  3. python中函数提高代码执行速度吗_为什么Python代码在一个函数中运行得更快?

    匿名用户 除了局部/全局变量存储时间外,操作码预测使函数更快. 正如其他答案所解释的,该函数在循环中使用store_fast操作码.下面是函数循环的字节码:>> 13 FOR_ITER 6 ...

  4. java代码防止sql注入_动态Java代码注入

    java代码防止sql注入 在本文中,我们将研究如何将Java代码动态加载到正在运行的jvm中. 该代码可能是全新的,或者我们可能想更改程序中某些现有代码的功能. (在开始之前,您可能想知道为什么到底 ...

  5. python上一行的代码打错了怎么办_写Python代码过程中碰到各种错误异常要怎么样去处理?...

    错误异常即便Python程序的语法是正确的,在程序运行的过程中,也可能发生错误.运行期检测到的错误被称为异常. 如果发生了错误,可以事先约定返回一个错误代码,这样,就可以知道是否有错,以及出错的原因. ...

  6. 为什么python代码运行不了_为什么Python代码能运行但是PyCharm给我画红线?

    PyCharm在遇到模块找不到时,会使用红色波浪线提醒开发者.这本来是一个非常好的功能,但却由于另外一个问题,会给一些Python初学者造成困扰. 这一篇文章,我们讲讲工作区导致的这个问题. 首先我们 ...

  7. python 零代码快速开发平台_现在低代码开发平台和零代码平台区别是什么?

    低代码与零代码,可参考一下 开发平台在国内已经发展了很久了,从有代码到低代码,甚至有些厂家声称可以无代码,当然无代码只是一个噱头. 低代码开发可以解决传统的开发方式的复杂方式,提高开发效率,节省时间成 ...

  8. 一行python代码值多少钱_一行python代码

    Life is short, just use Python. 自从08年接触Python,就有爱不释手的感觉,逐渐地,有些不忍地疏远了Perl 和Shell编程,因为python 的优雅么? 不全是 ...

  9. 代码画简单动物_[500行代码学懂OpenGL]之六数学知识

    数学知识 之前我们说有三个方向可以走 - 光.纹理.数学.然后我们简单看了一个光的例子来学习z-buffer和纹理,现在我们来看一下相关的数学知识.这些也很重要. 需要了解的概念包括: 矩阵是如何变换 ...

最新文章

  1. 可见的轮廓线用虚线绘制_为什么你用SketchUp没有别人“快”?
  2. 三大框架开发时,spring配置文件出现异常
  3. 在Homebrew 发布程序
  4. MFC单文档程序加载web网站和html文件
  5. Error:Unable to resolve target android-19
  6. lstm 根据前文预测词_干货 | Pytorch实现基于LSTM的单词检测器
  7. 【python】-socketServer
  8. 数据结构-直接寻址表
  9. java post返回xml数据类型_Java 通过HttpURLConnection Post方式提交xml,并从服务端返回数据...
  10. 网易云api如何调用_分析网易云音乐API的经历
  11. min—width的使用
  12. php分页类smary,php新闻内容分页实例(smarty 模板)
  13. python中for循环的用法_@Python小白,一文让你掌握Python爬虫
  14. linux下打印用户态段错误信息的一种方法
  15. 夏令营提高班上午上机测试 Day 1 解题报告
  16. 计算机家庭网络共享,教大家家庭局域网如何共享
  17. 50个启发你灵感的黄色系网站设计
  18. OpenCV-透视变换及对二维点求透视变换之后的坐标
  19. 新手村——C++入门篇
  20. 到底什么是范数?什么是0范数、1范数、2范数?区别又是什么?

热门文章

  1. NLP_1:语法树和N_gram模型
  2. 随着计算机的发展英语,英语翻译随着计算机的普及,互联网已进入高速发展时期.由于互联网具有信息传递速度快、包含信息量大、沟通便捷、使用成本低的优...
  3. android蟒蛇音效,ViPER4Android(蟒蛇音效)
  4. 电脑桌面云便签软件怎么设置禁止移动窗体固定便签显示位置?
  5. 爱尚黑莓提供Android应用转制BlackBerry 10应用在线工具
  6. 【云计算入门2】基本云安全
  7. 厦门大学701语言文学基础考研参考书目
  8. Excel插入数据透视表,实现合并同类项(office2007)
  9. github 上Go项目使用Travis CI和Docker Hub实现持续集成
  10. Java作业-双色球彩票