actionscript
-
2011.01.21 Polar Expression Generator
작은 particle을 하나 만들고, 그것을 화면에 도장찍듯 찍는 방식으로 그려낸 것이다. particle의 위치는 극좌표를 이용하여 지정된다. 사용된 expression은 아래와 같다. Flower #1: cos(cos(3θ)) × sin(cos(6θ)) Carnation: cos(cos(6θ))×sin(cos(6θ)) Flower #2: 1 - sin(23θ) + sin(sin(sin(237θ / 2))) Flower #3: 1 - sin(5θ) + sin(sin(sin(5θ / 2))) Flower #4: 1 - cos(235θ) - cos(θ) × cos(θ) Butterfly #1: 1 - sin(4θ) - cos(θ) × cos(θ) × cos(θ) Triangle #1: 1 - cos(123..
-
2011.01.21 Magnifier
4년전 여름에 만들었던 것이다. 플래시 화면을 한번 클릭하고 키보드로 아무 키나 입력하면 된다. 만약 한/영키가 켜져있어서 한글 입력상태인 경우 제대로 되지 않을 수 있다. Shift 키를 누른상태로 특수문자 입력도 가능하다.
-
2011.01.21 Typo Motion
3년전 겨울에 만들었던 작품(?)인데, AS2.0으로 제작된 것입니다. 글자를 입력한 뒤 Generate 버튼을 누르면 불규칙하게 글자가 내려오면서 사용자가 입력한 글자를 완성시킵니다. 아마 이것도 원래 애프터이펙트에 내장된 이펙트를 따라했던 것으로 기억합니다. 애프터이펙트를 직접 써보진 않아서 잘 모르겠지만, TV 자막으로 몇 번 쓰이는 것을 본 것 같습니다. 아래에 있는 플래시로 직접 해보실 수 있습니다.
-
2010.12.24 ADOBE USER GROUP 대문 따라하기
예전에 싸이월드 클럽 메인을 만들면서 ADOBE USER GROUP의 대문에 쓰인 아이디어를 차용했다. AS3.0 버전, 막코딩으로 찼다. 최대한 빠른시간내에 구현할때는 함수내에 함수를 또 넣는 방식으로 (enterframe event까지 몽땅) 코딩 하곤 하는데 잘 하는 짓은 아닐거다... 구현 방식은 간단하다. 화면에 나열되는 뱀(?)은 메인 각도를 처음에 생성하면 그 다음부터는 각도 변화량 만큼 이동하게된다. 해당 지점의 색상을 getPixel로 가져와서 작은 원의 내부를 칠한다. 각도 변화량은 20프레임마다 바뀌며 X,Y좌표를 구하기 위해 쓰인 cos과 sin은 바뀌어도 크게 변화되는 건 없다. 이외에 bitmapdata 영역밖의 데이터를 가져오는 것을 방지하는 작업을 거쳤고, 뱀이 화면 밖으로 ..
-
2010.12.23 Spiral Text
08년 6월쯤 만들었던 녀석이다. http://gyre-omotesando.com 을 보고 모작한 것이다. 먼저 Spiral Text의 기본적인 틀을 잡았다. 위의 그림은 한글과 영문이 적용되도록 각각의 폰트를 달리한 것이며, 폰트의 크기가 점점 커지도록 만들어보기도 했다. 위의 녀석들은 AS2.0으로 제작하였다. 이런 Spiral Text를 여러개로 나눈 후, Bitmap Data를 이용하여 화면에 도장찍듯 찍는 방식으로 바꾸면 Enterframe 요소를 더 많이 쓰면서도 화면 표시에 있어 좀 더 최적화가 가능하다. 그것을 AS3.0으로 만든 후 응용한 것이 아래의 플래시. blastic.tistory.com/attachment/cfile2.uf@177E84574D130A6537A078.swf (Fla..
-
2010.12.17 Polar Coordinate Spectrums
2년 전에 만들었던 것이다. 예전에 만들어두었던 Polar Expression Generator 를 응용해 보았다. 아래와 같은 공식으로 모양을 만들어낸다. Type 1 ::: -Math.cos(Math.cos(rad*6))*Math.sin(Math.cos(rad*6))*3 Type 2 ::: -Math.cos(Math.cos(Math.cos(Math.cos(Math.cos(rad*3)))))*2.5 Type 3 ::: -Math.cos(Math.cos(rad*3))*Math.sin(Math.cos(rad*6))*2.5 Type 4 ::: -(1- Math.sin(rad*237)+ Math.sin(Math.sin(Math.sin(rad*237/2))))*0.8 Type 5 ::: -(1- Math.sin..