본문 바로가기

동강

왜 Actionscript 3.0을 사용해야만 하는가? 문서 원본 : AdobeRIA 기술문서 작성된 날짜 : 2009-02 저자 : 강동혁 저자 소개 : Daum communications에서 UI 개발 업무를 하고 있으며, Flash 커뮤니티에서 ‘동강’ 이라는 닉네임으로 활동 중이다. 뭐든지 사용하기 편해야 한다는 생각으로 개발을 하고 있으며, RIA와 HCI에 관심이 많다. Blog : www.ddongkang.com 목차 1. 서론 : 왜 Actionscript 3.0 인가? 2. 본론 : Actionscript3.0을 배워야 하는 이유 - 향상된 연산속도 - 보다 엄격한 디버깅 기능 - 크로스 스크립팅 - OOP를 위한 지원 - Flashplatform의 언어 - Flash API와 Display 및 Event 3. 결론 : 다음 편 예고 왜 Ac.. 더보기
Actionscript3.0 학습법 커뮤니티의 질문들 중에서 단연 1위를 달리고 있는 "Actionscript 학습법" 에 대해, 오직 제 견해와 경험을 통해 작성해 보려고 합니다. - Flash MX , Flash 8, Flash CS3, Flash CS4 먼놈의 버젼이 이렇게 많은 건지 많이 혼동 됩니다. 시중에 나와 있는 책들을 보면 벌써 CS4가 출시 되었음에도 불구 하고, MX 버젼과 그 이하 버젼의 책들을 종종 보게 됩니다. 당연히 Flash를 처음 시작 해야 겠다고, 다짐하고 서점에 간 분들은 혼동 될 수 밖에 없지요. 보통 액션 스크립트 책은 Flash 라는 제목을 작게 표기 하고 Actionscript를 크게 표기 하기 때문에(?) Flash 8 이라 크게 적혀 있는 책을 고르게 됩니다. 그리고 카페에 와서 물어 봅니다. .. 더보기
[매쉬업] Openapi 를 이용한 이미지 검색 우선 발급 받은 APIKEY 는 요청을 보낼 때 같이 보내게 됩니다. 예를 들어 http://openapi.naver.com/search?key=***&query=go&target=image&start=1&display=10 위의 URL 에서 전달 하는 변수와 같이 image 검색을 위해서는 꼭 전달해야 되는 변수들이 존재 합니다. (출처 : http://openapi.naver.com/page.nhn?PageId=1_15 ) 1. 요청 URL (request url) http://openapi.naver.com/search 2. 요청 변수 (request parameter) 요청 변수 값 설명 key string (필수) 이용 등록을 통해 받은 key 스트링을 입력합니다. target string (필.. 더보기
Daum blog Assistance on AIR 매쉬업 경진 대회에 이어 다음 Dev Day 를 갔다 왔습니다. 구현의 목적이 아니라, 여러 사람이 자신의 생각을 공유 할수 있는 장이 된거 같아서 좋았습니다. 푸짐한 아웃백 점심식사와, 푸짐한 경품들,, 코딩하는 동안 삽질만 한거 같지만 즐거운 토요일 이었습니다. 6월에 있을 Dev day 가 또 기다려 지네요.ㅎ 오늘 다음 Dev Day 2008 에 가서 팀들과 함께 만든 다음 블로그 어플리케이션 입니다. 기존의 다음 블로그를 사용하시는 분이 브라우져를 거치지 않고 자신의 블로그의 정보를 메신져 형태로 알수 있게 해 주는 프로그램입니다. 싸이를 하시는 분이라면 네이트온 메신져의 "새글 알림이" 라고 생각하시면 되겠네요. 아직 구현 단계라 스샷과 메인 소스만 첨부 합니다.ㅎ Flex ㅋㅋ 하면 할수록 .. 더보기
Mashup beyond the browser 여러분들이 생각하시기에 매쉬업 하면 뭐를 생각하십니까? 검색 API ? 지도 API 나사진 API를 조합해서 만든 사이트? 보통 이런 생각을 많이 하고 계실 겁니다. 하지만, 매쉬업이란 것은 이런 좁은 콘텐츠에 한정되지 않은 하나의 흐름입니다. 포털 사이트나, API를 제공하는 사이트에서 제공 되는 API를 쓰지 않았다고 매쉬업이 아니라고 말할 수는 없습니다. 이와 같이 어떤 방법이라고 정의할 수 없는 “매쉬업” 이란 단어는 기존에 이미 존재하는 서비스 및 컨텐츠들간의 조합을 통해 전혀 다른, 새로운 서비스 및 콘텐츠를 생산하는 작업 모두를 말합니다. 그럼 왜 매쉬업을 하는 걸까요? 최근 매쉬업을 이용한 사이트가 점점 늘어 가고 있고, 이러한 추세는 하나의 트렌드로 자리 잡아 가고 있습니다. 왜? 매쉬업.. 더보기
CustomTextMotion + MotionCapture 전에 만들어 놓았던 웹캡에서 받은 영상을 차(-) 연산하여 동작을 인식 하는 클래스를 (말이 동작인식이지 단순 차연산;;;) 컴포넌트 형태로 제공되는 CustomTextMotion 에 적용해 보았습니다. 주온이 생각나는 안습 캡쳐 사진;;; package motioncap { import flash.media.Video; import flash.events.StatusEvent; import flash.media.Camera; import flash.display.MovieClip; import flash.display.BitmapData; import flash.geom.Matrix; import flash.utils.Timer; import flash.events.TimerEvent; import f.. 더보기
[AS3.0] Sound Spectrum SoundMixer.computeSpectrum() SoundMixer.computeSpectrum() 를 이용하면 현재 재생하고 있는 사운드에 대한 원시 데이터를 불러올수 있습니다. 다음 그림에서는 FFTMode 매개 변수가 true로 설정되었을 때와 false로 설정되었을 때 computeSpectrum() 메서드로부터 반환된 데이터를 비교합니다. 이 그림에 사용된 사운드 데이터는 왼쪽 채널은 큰 베이스 사운드, 오른쪽 채널은 드럼 사운드에 대한 것입니다. // 드로잉 API 를 이용한 간단한 사운드 스트리밍 import flash.display.Graphics; import flash.events.Event; import flash.media.Sound; import flash.media.Sound.. 더보기
[AS3.0] flash.media.Sound 기본내용정리. Actionscript 3.0 에서의 사운드 작업 ActionScript 3.0을 사용하여 사운드를 재생할 경우 다음 작업을 수행할 수 있습니다. 특정 시작 위치에서 사운드 재생 사운드를 일시 정지하고 나중에 같은 위치에서 다시 재생 시작 사운드 재생이 끝나는 정확한 시간 알아보기 사운드의 재생 진행률 추적 사운드 재생 중에 볼륨 변경 및 패닝 위의 기능은 Sound 클래스로만 이룰 수 있는게 아니라 SoundChannel 이나 SoundMixer SoundTransform 클래스를 이용해야 가능합니다. 기본적으로 Sound 클래스의 재생과 정지는 다음과 같습니다. // 재생 var snd:Sound = new Sound(new URLRequest("bigSound.mp3")); var channel:S.. 더보기
[AS3.0] Linkage 로 클래스 연결 하기. 동적으로 라이브러리에 있는 무비 클립이나 bitmap 파일을 어떻게 불러 올수 있을까요? as3.0 에서 class 개념이 좀더 확장 되면서 Linkage 에서 identifial 지정 뿐만 아니라 class 및 base 클래스를 지정 할수 있습니다. 라이브러리에 있는 객체들을 동적으로 불러 오기 위해서는 Linkage 와 class 와 new 와 addChild 이 필요 합니다. 우선 Linkage 창을 보면 (라이브러리에서 우클릭 Linkage) Export for Actionscript 를 클릭하면 무비 클립을 Linkage 하셨다면 flash.display.MovieClip 가 Base로 지정되게 되고 자신이 이름 붙일수 있는 Class 창이 활성화 됩니다 ( 여기서는 cursor ) 원하는 cl.. 더보기
[AS3.0] Loader 클래스의 이해와 쓰임 플래시를 시작 하고 나서 처음으로 만들어 보고 싶은 것을 꼽으라면 내 사진첩 이라는 말을 제일 많이 들어보았습니다. 저 또한 플래시를 접하게 되고 처음으로 "내가 만든 것" 이라고 사람들에게 보여 준것도 사진첩이었습니다. 사진첩이라는 말이 거창하게 들릴지 모르겠지만, 사진첩이난 MP3 플레이어를 만들때 핵심이라 할수 있는 Loader Class 에 대해 끄적여 볼까 합니다. Loader Loader DisplayObjectContainer InteractiveObject DisplayObject EventDispatcher Object Loader 클래스는 SWF 파일이나 이미지(JPG, PNG 또는 GIF) 파일을 로드하는 데 사용됩니다. load() 메서드를 사용하여 로드를 시작합니다. 로드된 표시 .. 더보기
[Basic] 12강 Event.... Event... Event... 디자인을 하다가 Flash 를 시작하시는 분이나, 일반 프로그래밍을 하다가 시작하는 분이나, Actionscript 의 이벤트라는 개념은 생소하게 다가 옵니다. 그래서 시작하는 분들이 조금이라도 빨리 이해를 돕고자 Event... 에 대해 이야기를 해 보겠습니다. Actionscript 3.0 을 시작하고 적응하기 어려웠던 점은 2.0 과 다르게 브로드 케스팅으로 이벤트를 호출하고 호출 받는 다는 점이었습니다. 2.0 에서도 그러한 개념이 있긴 했지만, 3.0 에 와서는 완전 바뀌었습니다. 가장 많이 사용하는 flash.events.Event = Event flash.events.MouseEvent = MouseEvent 초기에 Event 는 ENTER_FRAME 을 돌리기 위한 이벤트로 많이 사용되고 .. 더보기
[Base] 11강 - iMac Navigation -(1) 지난 번 강좌에 이어서 해 보겠습니다. 다들 iMac navigation 이라면 아시지요? 맥을 쓰는 사람들은 항상 모니터 아랫쪽에 위치 시켜 두고 쓰는 편리 한(?) 네비게이션 입니다. 이미 많은 분들이 구현을 해 놓으셨고 윤용호 님이 쓰신 플래시 네비게이션 패턴 18 에서도 다루고 있습니다.  1단계에서 만들 네비게이션은 아래와 같습니다.stage 에 자신의 icon 을 디자인 하고, 그 icon 을 무비 클립으로 등록합니다. 저는 5개의 icon 을 만들었고, icon0 ~ icon4 로 이름을 붙였습니다. 이 5개의 무비 클립을 배열에 저장하고 그 배열의 순서로 icon 들을 조정할 것 입니다.  Document class 를 만들고 위의 icon 들을 저장할 배열을 만듭니다. .. 더보기
[Base] 10강 - Array + caurina Tweener = iMac Navigation 10강을 시작으로 다룰 내용은 Flash Navigation 입니다. 플래시 메뉴라고 하면 되겠네요. 아주 간단한 메뉴에서 시작해서 xml 을 이용한 메뉴 구성 까지 계획을 하고 있습니다. 우선 적으로 알아야 할것이 Array Class 와 caurina Tweener 의 사용법을 알아야 합니다. Array Package :loadClassListFrame('class-list.html')" href="file:///C:/Documents%20and%20Settings/All%20Users/Application%20Data/Adobe/Flash%20CS3/en/Configuration/HelpPanel/Help/ActionScriptLangRefV3/package-detail.html">Top Level.. 더보기
[Base] 9강 클래스를 이용한 이미지 슬라이드 - 1 스터디에서 같이 해보게 될 이미지 슬라이드 소스 파일 입니다. 3가지 클래스를 메인으로 사용하고 있습니다. 1. Tween 2. Loader 3. Timer 지금까지의 강좌에서 계속 사용해 왔고, 언급했으므로 소스를 파악하시기엔 무리가 없을듯 합니다. 중점적으로 볼 부분에는 강조를 해 놓았으니 그 부분에 대해 어떤 구조로 이미지가 돌아가고 있구나 정도 파악하시고 참여 하시면 됩니다. 소스를 미리 올리는 이유는 로직적으로 이해하기 어려운 부분이 포함되어 있기 때문에 미리 올리는 것이니 꼭 꼭 실행 시켜 보세요. CustomMain.as ( Document class) package { import flash.display.MovieClip; import flash.utils.Timer; import fl... 더보기
[Base] 8강 - Timer, Loader 클래스의 사용. 요즘엔 구글링을 하면서, 이 사이트 저 사이트 많이 돌아 다니고 있는데, 정말 세상을 넓고, 대단한 사람들은 많다 라고 세삼 느껴지네요. 월요일 입니다. 다들 피곤하시져?? 주말에도 일하신 분들도 있으실테고, 주말 동안 푹 쉬신 분들도 있을 겁니다. 월요일이고, 새롭게 시작하는 느낌으로 일주일을 시작하는것도 좋을듯 싶습니다. 이번에 볼 내용은 Timer class 와 Loader class 입니다. 두 클래스 모두 강력한 기능으로 작업의 능률을 높여 주는 그런 클래스들 입니다. 우선 Timer class 부터 레퍼런스를 살펴 봅시다. Timer 클래스 public class Timer 상속 Timer EventDispatcher Object 언어 버전 : ActionScript 3.0 Player 버전 .. 더보기
[Base] 7강 - 사용자 정의 클래스의 이해 자주 올린다고 했는데, 속도가 더디네요.ㅋㅋ 졸업 시즌이다 보니 친구들 졸업식에 갔다 오게 되고, 오늘은 친형 졸업식에 갔다 왔담니다;; 크헐...... 날씨도 많이 풀리고, 학기가 시작한다고 생각하니;; 머리에 쥐가 날꺼 같은;; 으악!!!!! 오늘은 기초스터디를 하고 있는 것과 이어서 " 사용자 정의 클래스 " 에 대해 간단히 하는 방법을 알아 보고 "내가 만든 클래스를 사용한다" 라는 주제로 시작해 보겠습니다. 우선 5강 동적 생성 부분에서 Linkage 로 객체를 정의 해서 Linkage Properties 창에서 Class 에 이름을 입력을 하는것으로 내가 스테이지에 그린 객체가 클래스로 정의 된다는 것을 알았습니다 (잘 기억 안나시면 http://cafe.naver.com/flashaction.. 더보기
[Base] 6강 - Document Class 로의 진화 안녕하세요 "동강" 입니다. 저번 시간에 이어서 Class 의 대한 이야기를 계속 해나갈까 합니다. 앞으로의 강좌에서는 frame 액션의 사용을 최대한 버리고, 오직 Class 상에서의 액션으로 진행하겠습니다. 우선 Class 에 대해 다시 한번 알아 보도록 합니다. 클래스를 알기 위해서는 우선 객체 지향 프로그래밍 부터 알아야 합니다. 0. Class 와 객체 지향 프로그래밍 그럼 객체 지향 프로그래밍은 무엇일까요? 흔히 OOP 라고 알고 있는 객체 지향 프로 그래밍은 말 그대로 객체 하나하나를 존중해서 프로그래밍 한다는 의미 입니다. 예) 자전거를 예로 들면, 움직이는 자전거를 프로그래밍 한다고 생각해 봅시다. 우선 자전거를 기능 별로 나눠 보면 앞바퀴 부분, 뒷바퀴 부분, 페달 부분, 그리고 몸체 .. 더보기
Actionscript3.0 을 사용해야 하는 6가지 이유 Actionscript3.0 이 나오고 많은 사람들이 Actionscript2.0 에서 3.0 으로 넘어 왔고 그 강력함에 대해 매우 기뻐하고 있다. 그러나 아직 디자이너와 소통을 하기 위해 새로운 언어로 넘어 오지 못하는 많은 사람들이 있다. 그 이유는 여러가지가 있겠지만 같은 작업을 하는거에 대해 Actionscript3.0 이 더 복잡하다는 잘못된 생각들이 있기 때문 이다. 이 기술문서에서는 당신이 왜Actionscript3.0 을 사용해야만 하는지에 대해 알려주고 Actionscript3.0 에 대한 잘못된 생각들을 풀어 주겠다. 우리는 Actionscript 코드를 사용하는 사람들이 두 그룹이 있다는 것을 알게 되었다. 첫번째는 hardcore developer로 이루어진 그룹이다. 그들은 일반.. 더보기
[Base] 5강 - DisplayObejct 와 객체 동적 생성(2) 지난 강에서 DisplayObject 의 개념에 대해 잠깐 언급하였습니다. 그때 클래스 다이어 그램은 기억이 나시는지요? ( 4강참고) 그 다이어 그램과 같이 Flash 에 존재 하는 모든 객체속성( class ) 들은 상속에 상속을 거쳐서 자신의 속성을 만들게 됩니다. 예를 들어 F1 을 눌러 봅시다. MovieClip 패 키지 :loadClassListFrame('class-list.html')" href="file:///C:/Documents%20and%20Settings/All%20Users/Application%20Data/Adobe/Flash%20CS3/en/Configuration/HelpPanel/Help/ActionScriptLangRefV3/flash/display/package-det.. 더보기
[Base] 4강 - Tween 클래스와 객체 동적 생성(1) 자 오랜만에 공부를 시작하겠습니다. 이것 저것 참고하면서 쓰니 덩달아 잘 이해가 안되었던 부분까지 이해가 되니 기분이 좋습니다. ㅎㅎ 정작 보는 사람은 이해 못하고 있는데 나만이해 되는건 아닌지;;;; ;후덜덜 지난 시간에 ENTER_FRAME 을 이용해서 노가다로 객체의 크기를 변화 시켜 보았는데 먼저 그 코드의 길이를 줄이겠습니다. Tween 패키지 fl.transitions 클래스 public class Tween 상속 Tween EventDispatcher Object Tween 클래스는 Flash 에서 객체의 움직임을 조절할수 있도록 정의해놓은 내장 class 입니다. 사용방법은 아래와 같습니다. import fl.transitions.Tween; import fl.transitions.easi.. 더보기