GameMaker Studio 100 thách thức lập trình game - Ben Tyers

Trường đại học

Apress Media

Người đăng

Ẩn danh

Thể loại

Sách

2017

233
0
0

Phí lưu trữ

55 Point

Tóm tắt

I. Tổng quan về GameMaker Studio 100 Programming Challenges

GameMaker Studio 100 Programming Challenges là cuốn sách hướng dẫn lập trình thực hành do Ben Tyers biên soạn, xuất bản năm 2017 bởi Apress. Cuốn sách cung cấp đúng 100 thử thách lập trình được thiết kế dành riêng cho GameMaker Studio — một trong những công cụ phát triển game 2D phổ biến nhất hiện nay. Mỗi thử thách đi kèm hướng dẫn tiếp cận, gợi ý giải pháp và các mức độ khó khác nhau từ sơ cấp đến nâng cao. Nội dung bao quát nhiều chủ đề cốt lõi trong phát triển game: xử lý va chạm, vật lý, trí tuệ nhân tạo cơ bản, quản lý tài nguyên, vẽ đồ họa, âm thanh và lưu trữ dữ liệu. Người đọc được khuyến khích tự giải quyết từng bài trước khi tham khảo hướng dẫn. Phương pháp học qua thử thách giúp xây dựng tư duy giải quyết vấn đề một cách hệ thống. Cuốn sách phù hợp cho người mới bắt đầu lẫn lập trình viên trung cấp muốn củng cố kỹ năng GameMaker Language (GML). Mỗi challenge thường có ước tính thời gian hoàn thành, giúp người học quản lý tiến trình hiệu quả.

1.1. Cấu trúc nội dung của cuốn sách

Cuốn sách được tổ chức theo từng thử thách riêng biệt, mỗi thử thách đánh số thứ tự từ 1 đến 100. Mỗi challenge bao gồm phần mô tả yêu cầu, ghi chú hướng dẫn tiếp cận (Notes on Approaching This Challenge), và phần giải pháp chi tiết (Guide). Thử thách được phân thành ba cấp độ: Beginner, Intermediate và Advanced, kèm thời gian dự kiến hoàn thành. Một số thử thách bổ sung còn có phần Additional Challenge Points để mở rộng kiến thức. Cấu trúc này cho phép người đọc lựa chọn bài phù hợp với trình độ và tiến bộ dần theo thời gian. Các chủ đề trải dài từ thao tác mảng cơ bản đến kỹ thuật nâng cao như địa hình phá hủy hay lấy dữ liệu từ web.

1.2. Đối tượng và lợi ích khi sử dụng

Cuốn sách hướng đến ba nhóm đối tượng chính. Nhóm thứ nhất là người mới bắt đầu học GameMaker Studio, muốn tiếp cận lập trình game qua các bài tập thực tế. Nhóm thứ hai là lập trình viên trung cấp cần củng cố kỹ năng GML và học thêm kỹ thuật mới. Nhóm thứ ba là giảng viên và người hướng dẫn cần tài liệu bài tập có cấu trúc cho khóa học phát triển game. Lợi ích lớn nhất là phương pháp học qua thực hành. Mỗi thử thách buộc người đọc suy nghĩ độc lập trước khi xem giải pháp. Cách tiếp cận này xây dựng kỹ năng debug, tư duy logic và khả năng tự tìm giải pháp cho vấn đề lập trình phức tạp.

II. Phân tích các nhóm thử thách lập trình chính

Trong số 100 thử thách, nội dung được phân thành nhiều nhóm kỹ năng cốt lõi của phát triển game. Nhóm xử lý va chạm bao gồm các bài về kiểm tra va chạm hình chữ nhật, hình tròn và pixel-perfect. Nhóm vật lý đề cập đến trọng lực, nhảy, di chuyển mượt mà và tương tác vật thể. Nhóm trí tuệ nhân tạo bao gồm kẻ thù biết đuổi theo, tuần tra và né đạn. Nhóm đồ họa xử lý hiệu ứng hạt, hoạt ảnh sprite và phá hủy địa hình. Nhóm quản lý dữ liệu bao gồm lưu trữ điểm số, đọc tệp văn bản và lấy dữ liệu từ internet. Nhóm trò chơi hoàn chỉnh có các bài như Duck Hunt Remake, Fizz Buzz và quản lý camera. Việc phân loại rõ ràng giúp người học xác định điểm mạnh, điểm yếu và xây dựng lộ trình ôn tập hợp lý. Mỗi nhóm kỹ năng đều liên quan trực tiếp đến quy trình phát triển game thực tế.

2.1. Thử thách về xử lý va chạm và vật lý

Các thử thách về va chạm và vật lý chiếm tỷ trọng lớn trong cuốn sách. Chúng bao gồm kiểm tra va chạm hình chữ nhật, hình tròn, va chạm chính xác theo pixel và phản ứng va chạm phù hợp. Về vật lý, các bài tập yêu cầu mô phỏng trọng lực, nhảy nhiều lần, trượt trên bề mặt và tương tác giữa nhiều vật thể. Một số thử thách nâng cao yêu cầu xây dựng hệ thống địa hình phá hủy (Destructible Terrain), nơi người chơi có thể thay đổi môi trường game. Những kỹ năng này là nền tảng cho bất kỳ dự án game platformer, shooter hay phiêu lưu nào. Việc thành thạo xử lý va chạm giúp loại bỏ lỗi phổ biến như vật thể xuyên qua nhau hoặc phản ứng không chính xác khi va chạm.

2.2. Thử thách về dữ liệu và kết nối web

Nhóm thử thách về dữ liệu tập trung vào kỹ năng lưu trữ và truy xuất thông tin. Các challenge yêu cầu đọc tệp văn bản, sử dụng mảng và ds_map để quản lý dữ liệu có cấu trúc. Đặc biệt, thử thách Retrieve Text File from Web and Save Locally yêu cầu sử dụng sự kiện bất đồng bộ (asynchronous event), xử lý tệp và vẽ văn bản lên màn hình. Người học cũng được hướng dẫn sử dụng http_get_file để tải dữ liệu từ server và lưu cục bộ. Kỹ năng này mở rộng khả năng game có thể cập nhật nội dung từ xa, tải level mới hoặc đồng bộ dữ liệu người chơi. Đây là kỹ năng quan trọng cho phát triển game online và ứng dụng kết nối mạng.

III. Phương pháp giải quyết các thử thách GameMaker hiệu quả

Phương pháp giải quyết thử thách trong cuốn sách tuân theo quy trình tư duy hệ thống. Bước đầu tiên là đọc kỹ yêu cầu và xác định input, output mong đợi. Bước thứ hai là phác thảo giải pháp trên giấy trước khi viết code. Bước thứ ba là triển khai từng phần nhỏ, kiểm tra ngay sau mỗi bước. Bước thứ tư là debug và tối ưu hóa. Cuốn sách khuyến khích người học không xem hướng dẫn ngay mà dành thời gian suy nghĩ độc lập. Thời gian ước tính cho mỗi cấp độ (Beginner, Intermediate, Advanced) giúp người học đánh giá mức độ phức tạp trước khi bắt đầu. Khi gặp khó khăn, phần Notes on Approaching This Challenge cung cấp gợi ý mà không tiết lộ toàn bộ giải pháp. Cách tiếp cận này mô phỏng môi trường làm việc thực tế, nơi lập trình viên phải tự tìm giải pháp trước khi tham khảo tài liệu. Việc luyện tập thường xuyên với 100 thử thách giúp xây dựng phản xạ lập trình và kỹ năng giải quyết vấn đề chuyên nghiệp.

3.1. Kỹ thuật tiếp cận từng cấp độ khó

Mỗi thử thách trong sách được thiết kế với ba cấp độ thời gian: Beginner (khoảng 1 giờ), Intermediate (khoảng 40 phút) và Advanced (khoảng 20 phút). Với cấp Beginner, người học nên tập trung vào việc hiểu logic cơ bản và triển khai từng bước nhỏ. Ở cấp Intermediate, cần áp dụng kiến thức đã học từ các thử thách trước để giải quyết vấn đề nhanh hơn. Cấp Advanced đòi hỏi viết code tối ưu, sử dụng cấu trúc dữ liệu phù hợp và áp dụng kỹ thuật nâng cao. Người học nên bắt đầu từ cấp Beginner, hoàn thành đầy đủ trước khi chuyển sang cấp tiếp theo. Cách tiếp cận dần dần giúp xây dựng nền tảng vững chắc và tránh nản lòng khi gặp thử thách phức tạp.

3.2. Sử dụng Additional Challenge Points để mở rộng

Nhiều thử thách trong sách có phần Additional Challenge Points, yêu cầu kết hợp nhiều kỹ năng lại với nhau. Ví dụ, thử thách lấy tệp từ web có thể kết hợp với thử thách quản lý level để tạo hệ thống tải level từ server. Phần Additional Time thường là 20 phút bổ sung cho các yêu cầu mở rộng này. Người học nên xem đây là cơ hội để nâng cao kỹ năng tích hợp. Việc kết hợp nhiều thử thách mô phỏng dự án thực tế, nơi các hệ thống con phải hoạt động cùng nhau. Cách tiếp cận này giúp người học hiểu rõ kiến trúc game tổng thể thay vì chỉ biết giải quyết từng bài tập riêng lẻ. Đây là bước đệm quan trọng trước khi bắt đầu dự án game hoàn chỉnh.

IV. Kết luận và ứng dụng thực tế của 100 thử thách

GameMaker Studio 100 Programming Challenges không chỉ là bộ bài tập lập trình mà còn là lộ trình học tập có cấu trúc cho phát triển game 2D. Sau khi hoàn thành tất cả 100 thử thách, người học sẽ nắm vững GML, hiểu cách GameMaker Studio xử lý sự kiện, sprite, phòng và đối tượng. Các kỹ năng học được có thể ứng dụng trực tiếp vào phát triển game platformer, bắn súng, puzzle và nhiều thể loại khác. Cuốn sách cũng giúp xây dựng portfolio cá nhân, mỗi thử thách hoàn thành là một dự án nhỏ có thể trưng bày cho nhà tuyển dụng. Đối với giảng viên, đây là nguồn bài tập phong phú với đáp án chi tiết. Phương pháp học qua thử thách đã được chứng minh hiệu quả trong giáo dục STEM. Với mức giá hợp lý và nội dung cập nhật đến phiên bản GameMaker Studio 1.4, cuốn sách vẫn là tài liệu tham khảo giá trị cho cộng đồng phát triển game indie.

4.1. Xây dựng portfolio từ các thử thách

Mỗi thử thách hoàn thành trong cuốn sách đều tạo ra một sản phẩm game nhỏ có thể chạy được. Người học nên lưu lại toàn bộ project, chụp ảnh màn hình và ghi chú kỹ thuật đã sử dụng. Các challenge như Duck Hunt Remake, Destructible Terrain hay Fizz Buzz có thể được mở rộng thành dự án hoàn chỉnh với đồ họa và âm thanh chuyên nghiệp hơn. Portfolio từ 100 thử thách chứng minh khả năng giải quyết đa dạng vấn đề lập trình game. Đây là lợi thế lớn khi ứng tuyển vị trí lập trình viên game hoặc khi pitching dự án cho nhà đầu tư indie game. Việc thường xuyên cập nhật portfolio cũng giúp theo dõi tiến bộ cá nhân.

4.2. Giá trị lâu dài cho lập trình viên GameMaker

Ngay cả khi GameMaker Studio cập nhật phiên bản mới, các nguyên tắc lập trình trong cuốn sách vẫn giữ nguyên giá trị. Kiến thức về cấu trúc dữ liệu, xử lý sự kiện, va chạm và vật lý là nền tảng không thay đổi giữa các phiên bản. Lập trình viên có thể áp dụng các pattern học được từ sách vào bất kỳ dự án GameMaker nào. Cuốn sách cũng dạy kỹ năng đọc và hiểu code mẫu — kỹ năng thiết yếu khi làm việc nhóm. Cộng đồng GameMaker trên diễn đàn và Discord thường xuyên chia sẻ giải pháp cho các vấn đề tương tự. Nền tảng kiến thức từ 100 thử thách giúp lập trình viên tham gia cộng đồng này một cách tự tin và đóng góp hiệu quả.

21/04/2026

Trích đoạn nội dung tài liệu

GameMaker: Studio 100 Programming Challenges — Ben Tyers GameMaker: Studio 100 Programming Challenges Ben Tyers GameMaker: Studio 100 Programming Challenges Ben Tyers Worthing, West Sussex, United Kingdom ISBN-13 (pbk): 978-1-4842-2643-8 ISBN-13 (electronic): 978-1-4842-2644-5 DOI 10.1007/978-1-4842-2644-5 Library of Congress Control Number: 2017932374 Copyright © 2017 by Ben Tyers This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights. While the advice and information in this book are believed to be true and accurate at the date of publication, neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or omissions that may be made. The publisher makes no warranty, express or implied, with respect to the material contained herein. Managing Director: Welmoed Spahr Lead Editor: Steve Anglin Development Editor: Matthew Moodie Technical Reviewer: Dickson Law Coordinating Editor: Mark Powers Copy Editor: Karen Jameson Compositor: SPi Global Indexer: SPi Global Artist: SPi Global Cover image designed by Freepik Distributed to the book trade worldwide by Springer Science+Business Media New York, 233 Spring Street, 6th Floor, New York, NY 10013. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail orders-ny@springer-sbm.com, or visit www. Apress Media, LLC is a California LLC and the sole member (owner) is Springer Science + Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a Delaware corporation. For information on translations, please e-mail rights@apress.com, or visit www. Apress and friends of ED books may be purchased in bulk for academic, corporate, or promotional use. eBook versions and licenses are also available for most titles. For more information, reference our Special Bulk Sales–eBook Licensing web page at www.com/bulk-sales. Any source code or other supplementary materials referenced by the author in this text are available to readers at www. For detailed information about how to locate your book’s source code, go to www.com/source-code/. Printed on acid-free paper Contents at a Glance About the Author����������������������������������������������������������������������������������������������������xxi About the Technical Reviewer������������������������������������������������������������������������������xxiii Acknowledgments�������������������������������������������������������������������������������������������������xxv Introduction���������������������������������������������������������������������������������������������������������xxvii ■ ■Challenge 1: Maths Bar Graph������������������������������������������������������������������������������� 1 ■ ■Challenge 2: Draggable and Movable Object��������������������������������������������������������� 3 ■ ■Challenge 3: Room Fade In and Out Transition������������������������������������������������������ 5 ■ ■Challenge 4: Typewriter Text Effect����������������������������������������������������������������������� 7 ■ ■Challenge 5: Audio Volume Change Based on Distance���������������������������������������� 9 ■ ■Challenge 6: Move Object to Position Using Path������������������������������������������������ 11 ■ ■Challenge 7: Make the Screen Shake������������������������������������������������������������������ 13 ■ ■Challenge 8: Create Snow Effect�������������������������������������������������������������������������� 15 ■ ■Challenge 9: Password Easter Egg���������������������������������������������������������������������� 17 ■ ■Challenge 10: Follow Two Objects in View���������������������������������������������������������� 19 ■ ■Challenge 11: High / Low Number Game������������������������������������������������������������� 21 ■ ■Challenge 12: Calculate the Average Position of Two Clicks������������������������������� 23 ■ ■Challenge 13: Retrieve Text File from Web and Save Locally������������������������������ 25 ■ ■Challenge 14: Shuffle Pack of Playing Cards and Deal 5������������������������������������� 27 ■ ■Challenge 15: Reverse Sentence Order��������������������������������������������������������������� 29 ■ ■Challenge 16: Rotate and Move Object to Mouse Position���������������������������������� 31 ■ ■Challenge 17: Firework Display Using Effects����������������������������������������������������� 33 iii ■ Contents at a Glance ■ ■Challenge 18: Random Sentence Generator�������������������������������������������������������� 35 ■ ■Challenge 19: Pop-Up RPG Style Text Box����������������������������������������������������������� 37 ■ ■Challenge 20: Room Wrapping���������������������������������������������������������������������������� 39 ■ ■Challenge 21: Sprite Shadow������������������������������������������������������������������������������ 41 ■ ■Challenge 22: Make a Jukebox Player for Four Songs���������������������������������������� 43 ■ ■Challenge 23: Scrolling Credits��������������������������������������������������������������������������� 45 ■ ■Challenge 24: Random Dice Roller���������������������������������������������������������������������� 47 ■ ■Challenge 25: Substitution Cipher����������������������������������������������������������������������� 49 ■ ■Challenge 26: Save Highscore to INI�������������������������������������������������������������������� 51 ■ ■Challenge 27: Spawn Point���������������������������������������������������������������������������������� 53 ■ ■Challenge 28: Dictionary Check��������������������������������������������������������������������������� 55 ■ ■Challenge 29: Draw Text with Shadow���������������������������������������������������������������� 57 ■ ■Challenge 30: Classic Brick and Ball Game Remake������������������������������������������� 59 ■ ■Challenge 31: Fire Projectile������������������������������������������������������������������������������� 61 ■ ■Challenge 32: World Clock����������������������������������������������������������������������������������� 63 ■ ■Challenge 33: Text-Based Quiz���������������������������������������������������������������������������� 65 ■ ■Challenge 34: Onscreen Keyboard����������������������������������������������������������������������� 67 ■ ■Challenge 35: Create a Drivable Tank That Leaves Tyre Tracks��������������������������� 69 ■ ■Challenge 36: Parallax Background�������������������������������������������������������������������� 71 ■ ■Challenge 37: Click the Ghost������������������������������������������������������������������������������ 73 ■ ■Challenge 38: Particle Fire Effect������������������������������������������������������������������������ 75 ■ ■Challenge 39: Bubble Sort����������������������������������������������������������������������������������� 77 ■ ■Challenge 40: Unlockable Levels Select Screen�������������������������������������������������� 79 ■ ■Challenge 41: Moon Lander AI����������������������������������������������������������������������������� 81 ■ ■Challenge 42: Dodge the Barrels������������������������������������������������������������������������� 83 ■ ■Challenge 43: Convert Celsius to Fahrenheit������������������������������������������������������� 85 iv ■ Contents at a Glance ■ ■Challenge 44: Dart Board Game��������������������������������������������������������������������������� 87 ■ ■Challenge 45: Calculate BMI�������������������������������������������������������������������������������� 89 ■ ■Challenge 46: Colour Picker�������������������������������������������������������������������������������� 91 ■ ■Challenge 47: 10 Green Bottles��������������������������������������������������������������������������� 93 ■ ■Challenge 48: English to Morse Code������������������������������������������������������������������ 95 ■ ■Challenge 49: Blitz Game Remake����������������������������������������������������������������������� 97 ■ ■Challenge 50: Mini Golf Game Remake���������������������������������������������������������������� 99 ■ ■Challenge 51: Rock, Paper, Scissors Game Remake������������������������������������������ 101 ■ ■Challenge 52: Health Based on Distance����������������������������������������������������������� 103 ■ ■Challenge 53: Tank Trax Game Remake������������������������������������������������������������� 105 ■ ■Challenge 54: Two Separate Views�������������������������������������������������������������������� 107 ■ ■Challenge 55: Word Typing Game���������������������������������������������������������������������� 109 ■ ■Challenge 56: Destructible Terrain�������������������������������������������������������������������� 111 ■ ■Challenge 57: Duck Hunt Game Remake����������������������������������������������������������� 113 ■ ■Challenge 58: Keep Player in View�������������������������������������������������������������������� 115 ■ ■Challenge 59: Fizz Buzz������������������������������������������������������������������������������������� 117 ■ ■Challenge 60: Calculate Numbers���������������������������������������������������������������������� 119 ■ ■Challenge 61: Particle Trail Effect���������������������������������������������������������������������� 121 ■ ■Challenge 62: Draw a Rectangle and Calculate Area and Perimeter����������������� 123 ■ ■Challenge 63: Tower Defense Game������������������������������������������������������������������� 125 ■ ■Challenge 64: Drop the Coin AKA Plinko (Arcade Style)������������������������������������ 129 ■ ■Challenge 65: Calculate the Nth Result of Fibonacci Sequence������������������������ 131 ■ ■Challenge 66: Distance from Object to Mouse��������������������������������������������������� 133 ■ ■Challenge 67: Convert Decimal to Binary, Oct, Hex, and Roman����������������������� 135 ■ ■Challenge 68: Text in X Box������������������������������������������������������������������������������� 137 ■ ■Challenge 69: Frogger Game Remake���������������������������������������������������������������� 139 v ■ Contents at a Glance ■ ■Challenge 70: Take a Screenshot����������������������������������������������������������������������� 141 ■ ■Challenge 71: Slowly Change Direction������������������������������������������������������������� 143 ■ ■Challenge 72: Pong Style Game Remake����������������������������������������������������������� 145 ■ ■Challenge 73: Shooting Gallery������������������������������������������������������������������������� 147 ■ ■Challenge 74: How Many of Each Letter������������������������������������������������������������ 149 ■ ■Challenge 75: Torpedo Game Remake��������������������������������������������������������������� 151 ■ ■Challenge 76: One Hundred Random Numbers�������������������������������������������������� 153 ■ ■Challenge 77: Coin Flip�������������������������������������������������������������������������������������� 155 ■ ■Challenge 78: Predict the Path of an Object������������������������������������������������������ 157 ■ ■Challenge 79: Dynamic Button�������������������������������������������������������������������������� 159 ■ ■Challenge 80: Sokoban Game Remake�������������������������������������������������������������� 161 ■ ■Challenge 81: Top Down Football���������������������������������������������������������������������� 163 ■ ■Challenge 82: Top Down Racing������������������������������������������������������������������������ 165 ■ ■Challenge 83: Convert Numbers (in Digits) to Words���������������������������������������� 167 ■ ■Challenge 84: Zelda Style Views������������������������������������������������������������������������ 169 ■ ■Challenge 85: Convert Text File to eBook���������������������������������������������������������� 171 ■ ■Challenge 86: Planets Database (INI)���������������������������������������������������������������� 173 ■ ■Challenge 87: How Much Flour�������������������������������������������������������������������������� 175 ■ ■Challenge 88: Rotating Mini Map���������������������������������������������������������������������� 177 ■ ■Challenge 89: Selectable Troops������������������������������������������������������������������������ 179 ■ ■Challenge 90: Pipes������������������������������������������������������������������������������������������� 181 ■ ■Challenge 91: Arcade Style Horse Race Game��������������������������������������������������� 183 ■ ■Challenge 92: Road Builder������������������������������������������������������������������������������� 185 ■ ■Challenge 93: Chess Board Representation������������������������������������������������������� 187 ■ ■Challenge 94: 1945 Game Remake�������������������������������������������������������������������� 189 ■ ■Challenge 95: Create a Virtual ATM (Bank Teller)���������������������������������������������� 191 vi ■ Contents at a Glance ■ ■Challenge 96: Moon Lander Game Remake������������������������������������������������������� 193 ■ ■Challenge 97: Pixelate an Image����������������������������������������������������������������������� 195 ■ ■Challenge 98: Miner������������������������������������������������������������������������������������������ 197 ■ ■Challenge 99: Follow Player (Ghost)������������������������������������������������������������������ 199 ■ ■Challenge 100: Multiplication Table������������������������������������������������������������������ 201 ■ ■Appendix A: Points Chart����������������������������������������������������������������������������������� 203 Index��������������������������������������������������������������������������������������������������������������������� 209 vii Contents About the Author����������������������������������������������������������������������������������������������������xxi About the Technical Reviewer������������������������������������������������������������������������������xxiii Acknowledgments�������������������������������������������������������������������������������������������������xxv Introduction���������������������������������������������������������������������������������������������������������xxvii ■ ■Challenge 1: Maths Bar Graph������������������������������������������������������������������������������� 1 Notes on Approaching This Challenge������������������������������������������������������������������������������ 1 Guide�������������������������������������������������������������������������������������������������������������������������������� 2 ■ ■Challenge 2: Draggable and Movable Object��������������������������������������������������������� 3 Notes on Approaching This Challenge������������������������������������������������������������������������������ 3 Guide�������������������������������������������������������������������������������������������������������������������������������� 4 ■ ■Challenge 3: Room Fade In and Out Transition������������������������������������������������������ 5 Notes on Approaching This Challenge������������������������������������������������������������������������������ 5 Guide�����������������������������������������������������������������������������������������������������������������?

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ