A. MovieClip
- Movie clip là kiểu symbol phổ biến nhất của Flash.
- Movie clip là đơn vị hoạt cảnh dùng lắp ghép trong một hoạt cảnh lớn.
- MovieClip có Timeline riêng độc lập với main timeline.
- Movie Clip có thể lồng vào nhau hoặc vào symbol khác tạo nên các hoạt cảnh phức tạp.
Đặt tên cho instance của symbol movieClip (Trong Properties > instance name) luôn thêm đoạn đuôi là _mc (film_mc, clip_mc,...) và không được bắt đầu bằng 1 con số (ví dụ tên 3dsmax_mc bị xem là không hợp lệ)
I. Tạo một MovieClip: Hãy xem qua cánh tạo 1 movieClip hoạt cảnh xoay:
a. Từ 1 hình trên stage:
- Cách 1 (convert 2 lần liên tiếp): Tạo 1 symbol graphic trước sau đó convert symbol này thành movieClip (F8). Như vậy ta có một symbol graphics trong một symbol movieClip. Trong edit mode của movie Clip ta sẽ tạo tween motion xoay cho symbol graphics.
- Cách 2 (vào edit mode của movieClip để convert): Tạo 1 symbol movieClip trước sau đó vào edit mode của movieClip này covert hình shape thành symbol graphics. Giống như trên ta có một symbol graphics trong một symbol movieClip, và ta sẽ tiến hành một tween motion xoay cho symbol graphics
b. Tạo 1 monieClip trong Library panel (movieClip rỗng): Insert > new symbol (Ctrl_F8): Đây là kiểu tạo movieClip chưa có nội dung, có thể tạo nội dung sau bằng cách Dclick lên ô hiển thị trong Library panel và tạo nội dung trong edit mode movieClip đó. Khi nào muốn sử dụng thì drag symbol đó vào stage. Đây là cách chuyển hết các layer trên timeline thành 1 movieClip duy nhất để thuận tiện copy, paste, move hay transform cả 1 hoạt cảnh.
II. Gom nhiều layer hoạt cảnh vào một movieClip
Khi cần sử dụng nhiều lần một chuổi chuyển động trên Stage hoặc muốn gom nó thành một đơn vị độc lập để dễ dàng áp các phép transform, copy, di chuyển, xoá..như là thao tác trên một đối tượng.
Các bước thực hiện:
1. Chọn hết các frame, Keyframe trong tất cả các layer của một hoạt cảnh mà bạn muốn chuyển thành MoveClip (Shift_click các frame đầu và cuối):
2. Copy hết các frame và Keyframe đã chọn: Rclick > Copy frame hoặc Edit > Timeline > Copy Frames Ctrl_Atl_C.
3. Tạo một MovieClip trong library panel: (Modify > New Symbol > Movie Clip). Nhớ đặt tên cho Symbol trong hộp thoại convert to symbol
4. Paste các frame vào MovieClip mới tạo: Chọn Frame 1 trong Layer 1 và chọn Edit > Timeline > Paste Frames.
5. Thoát ra main timeline (Click scene 1 trong Edit bar) tạo 1 lớp mới . Drag movieClip từ Library panel vào Frame 1 của layer mới và xoá hết các layer củ mà bạn đã copy ở bước 1.
III. MovieClip trong layer mask
- Tạo chuyển động 1 hình trong layer mask theo 1 đường dẫn: Đối tượng trong layer mask không thể di chuyển theo 1 đường dẫn được, do layer motion không ảnh hưởng lên layer mask và một layer không thể cùng lúc là layer mask và layer motion được. Giải pháp cho vấn đề này là tạo 1 movieClip chứa layer motion trong layer mask . Cụ thể như sau:
Tạo 1 movieClip symbol có một đối tượng di chuyển theo 1 đường dẫn trong library panel, sau đó drag movieClip này vào layer mask. Khi hoạt cảnh thì hiển thị đối tượng có ảnh nền di chuyển theo 1 đường dẫn
- 2 đối tượng chuyển động tween motion trong 1 layer mask: Rõ ràng là không thể rồi, vì chúng ta đã biết không thể tween motion 2 instance trong cùng một frame được. Muốn làm được điều này thì ta phải tạo 1 movie Clip có 2 layer motion tween trong layer mask hoặc tạo movie Clip có layer mask trong layer mask lớn hơn
- mask một mask layer: (mặt nạ của mặt nạ) Tương tự như trên, bạn phải tạo 1 movie Clip có 2 layer mask trong layer mask. Khi hoạt cảnh thì chỉ khi nào 2 đối tượng trong 2 layer lấp lên nhau thì ta mới thấy hình ảnh các lớp bị che qua phần giao thôi
- mask bằng action script: Là cách linh họat và tiện lợi nhất. Nhập đoạn code này vào keyframe masked_mc.setMask(mask_mc);
masked_mc là tên instance của movieClip bị che, mask_mc là tên instance của movieClip làm mặt nạ.
B. Các Symbol lồng nhau (nested movie clips)
Timeline của đối tượng độc lập với main timeline theo 2 cách: Movie Clip và Level
I. Mối quan hệ phả hệ:
Flash có thể có nhiều movieClip instances. Mỗi movie clip instance có Timeline riêng.
Flash cho phép đặt một movie Clip này nằm trong một movie clip khác. Movie Clip trong là con của movie clip chứa nó trong quan hệ phả hệ, mọi hiệu chỉnh trên movie cha sẽ ảnh hưởng lên các movie bên trong.
Vídụ: Xe chạy và bánh xe quay
;)
;) |
- playhead ưu tiên chạy trên timeline của mình, chỉ khi có lệnh stop() lúc đó mới rẻ nhánh xuống các timeline con. - Khi đổi kiểu cho instance thì các instance con vẫn thể hiện được họat cảnh riếng chúng, thay đổi chỉ hiệu lực trực tiếp trên instance đó thôi. Ví dụ: Có 2 movieClip lồng nhau, movie cha là scale movie con là rotate. Nếu đổi kiểu movie cha là graphics thì instance đó không scale, như vẫn rotate được. |
| |
Ví dụ: bươm bướm bay theo đường dẫn hay bạn muốn tạo hoạt cảnh 1 quạt đứng đang hoạt động.
Phân tích:
- Khi di chuyển cả quạt thì lồng quạt cũng đi theo, vậy lồng quạt là một symbol con của symbol quạt.
- Khi lồng quạt đong đưa qua lại tạo luồng gió đều thì cánh quạt cũng chuyển động theo cánh quạt là 1 symbol con của lồng quạt và là symbol cháu của cả cây quạt
Sắp xếp:
Vậy ít nhất bạn phải tạo 1 movieClip "fan" cho cả quạt máy. Trong movieClip "fan" phải có movieClip "case" cho riêng lồng quạt, và tạo tiếp trong movieClip "case" là movieClip "propeller" cho cánh quạt. và đương nhiên là trong movieClip "propeller" phải có 1 symbol graphics cánh quạt chuyển động tween motion xoay tròn.
Chỉnh sửa:
Muốn chỉnh sửa lồng quạt thì dclick vào edit mode của movieClip "fan", dlick lên lồng quạt (movieClip "case") nếu muốn chỉnh sửa cách quạt và cuối cùng nếu bạn dclick lên movieClip "propeller" để chỉnh sửa chuyển động cánh quạt...còn muốn chỉnh dạng cách thì dclick thêm 1 lần nữa...
Muốn movieClip "case" hiện diện trong main timeline thì break apart (Ctrl_B) lên movieClip "fan"...
1. Graphics - Graphics: Thường sử dụng cho các hình tĩnh phức tạp. Một hình chứa nhiều layer hình shape.
2. MovieClip - Graphics: Là kiểu movieclip phổ biến khi trong movieclip có hoạt cảnh tween motion.
3. Button - Graphics: Khá phổ biến cho các button có hình dạng cầu kỳ, phức tạp
4. MovieClip - MovieClip: Là kiểu movieClip phổ biến khi muốn sử dụng mối qua hệ phả hệ của movie cha và các movieClip con
5. Button - MovieClip: tạo hoạt cảnh cho button tương ứng với các sự kiện trên chuột
6. Các trường hợp khác MovieClip - Button, Graphics - MovieClip, Graphics - Button, Button - button
II. Đường dẫn tuyệt đối và tương đối: Trong một movieClip nhiều cấp thì nhu cầu chuyển qua lại giữa các cấp của các symbol con, cháu với symbol cha mẹ là cần thiết
1. Đường dẫn tương đối:_root, parent, this
Từ symbol con nhảy đến keyframe 4 trong symbol (cùng cấp): this.gotoAndStop(4); hay gotoAndStop(4);
Từ symbol con nhảy đến keyframe 3 của symbol cha, mẹ (trên 1 cấp): _parent.gotoAndStop(3);
Từ symbol con nhảy đến keyframe 2 của symbol ông, bà (trên 2 cấp): _parent._parent.gotoAndStop(2);
Từ symbol, ở bất kỳ cấp nào, nhảy đến keyframe 10 của main timeline (về bảng tiến trình gốc): _root.gotoAndStop(10);
2. Đường dẫn tuyệt đối: Theo tên instance của MovieClip.
Ví dụ ta có các kiểu Movie Clip lồng nhau như sau:
clip1_mc > clip2_mc > clip3_mc (clip3_mc trong clip2_mc; clip2_mc trong clip1_mc; clip1_mc ở Main timeline)
mov1_mc > mov2_mc > mov3_mc (mov3_mc trong mov2_mc, mov2_mc trong mov1_mc và mov1_mc trong Main timeline)
- Từ clip1_mc nhảy đến keyframe 4 trong clip3_mc ( clip2_mc > clip3_mc): clip2_mc.clip3_mc.gotoAndStop(4);
- Từ Main timeline nhảy đến keyframe 3 của clip3_mc ( clip1_mc > clip2_mc > clip3_mc): clip1_mc.clip2_mc.clip3_mc.gotoAndStop(3);
- Từ clip3_mc nhảy đến keyframe 2 của mov2_mc (Khác cấp và khác symbol cha): this._parent._parent.movie_1.movie_2.gotoAndStop(2);
Có thể dùng Insert Target Path trong Actions panel để nhập đường dẫn chính xác.
Bài tập:
1. Tạo vòng chữ xoay quanh 1 đối tượng
2. Quạt máy xoay
3. máy bay bay
|
Ý kiến trao đổi