Menu
CoddyTech

Ôn tập: FindNearest

Thuộc phần Kiến trúc trò chơi trong Unity trong hành trình Unity của Coddy. Bài học 45 trên 64.

Chương này đã viết code hoạt động với mọi kiểu dữ liệu (type): phương thức mở rộng (extension method), lớp cơ sở tổng quát và các hàm hỗ trợ tổng quát. Ở đây, một hàm tìm kiếm tổng quát tìm được cả đá quý lẫn đệm sạc.

challenge icon

Thử thách

Trung bình

Đưa robot đến các viên ngọc theo thứ tự gần nhất trước, sau đó đến trạm sạc.

  1. Trong Helpers.cs, viết lớp tĩnh Helpers với FindNearest<T>(IEnumerable<T> items, Vector3 from) công khai dành cho các thành phần: trả về phần tử gần nhất hoặc null.
  2. Trong Robot, ở mỗi khung hình, dùng MoveTo để đi đến Gem gần nhất và phá hủy nó khi đến nơi.
  3. Khi không còn viên ngọc nào, đi đến ChargePad gần nhất, ghi nhật ký Charging một lần rồi ở lại đó.

Nhấn Play: robot sẽ thu thập các viên ngọc. Sau đó nhấn Check.

Tự làm thử

using System.Collections.Generic;
using UnityEngine;

// Helpers.FindNearest<T>: mục gần một điểm nhất, hoặc null
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Kiến trúc trò chơi trong Unity

Tự luyện tập: Playground Unity