Unity không có loại kết xuất "chế độ trực tiếp" này, bạn sẽ không gọi Draw
bất kỳ vòng cập nhật nào cho Unity.
Trong Unity bạn cần tạo một đối tượng trò chơi, sau đó đính kèm tập lệnh vào đối tượng trò chơi đó. Các tập lệnh này sẽ kiểm soát cách đối tượng hoạt động, nếu và cách nó hiển thị trên màn hình, nếu đó là một phần của hệ thống vật lý, v.v.
Để tạo một sprite mới để vẽ trên màn hình, bạn cần tạo một đối tượng trò chơi mới, sau đó đính kèm tập lệnh SpriteRenderer vào nó và đặt sprite của nó.
GameObject go = new GameObject();
SpriteRenderer renderer = go.AddComponent<SpriteRenderer>();
renderer.sprite = Resources.Load("Sprites/Player", typeof(Sprite)) as Sprite;
Điều này giả định một cấu trúc thư mục của
-Assets
--Resources
---Sprites
----<Your 2D assets, set with their texture type to Sprite (2D and UI)>
Ví dụ:
Sau đó, bạn đã có một tập lệnh khác để thay đổi vị trí, xoay, v.v., tùy thuộc vào cách bạn muốn nó hoạt động.
Cách dễ nhất để thực hiện tất cả điều này mà không phải viết nhiều mã? Tạo đối tượng trò chơi trong trình soạn thảo Unity trước. Một khi đối tượng trò chơi được trang bị sprite bạn muốn và các kịch bản hành vi và tất cả những thứ đó. Kéo và thả nó vào một thư mục tài nguyên. Điều này tạo ra một prefab. Prefabs chỉ là những gì họ nghe, chế tạo trước. Chúng là những vật thể hoàn chỉnh mà sau đó bạn có thể tham khảo và tạo ra một cách nhanh chóng.
Bạn sẽ tạo những thứ như:
public void CreateObject(string prefabName) {
GameObject newObject =
GameObject.Instantiate(Resources.Load(prefabName)) as GameObject;
}
Điều này sẽ sinh ra một bản sao của prefab bạn đã tạo trước đó. Vì vậy, nếu chẳng hạn, bạn đã cho prefab của mình hành vi di chuyển về phía người chơi và tấn công, mỗi khi bạn sinh ra một prefab mới thuộc loại đó, chúng sẽ bắt đầu tiến về phía người chơi và tấn công. Các kịch bản bạn chỉ phải viết một lần kiểm soát tất cả các đối tượng trò chơi đó.
Tôi nghĩ rằng sự khác biệt chính mà bạn thấy ở đây là việc sử dụng nhiều linh kiện. Điều mà bạn có thể chưa thấy trong các công cụ trò chơi khác như XNA. Unity thực sự là một công cụ mạnh mẽ, nhưng sự thất vọng của bạn đến từ việc cố gắng sử dụng nó như các công cụ khác, khi nó không giống như các công cụ khác. Kiểm tra hồ sơ của tôi để được đào tạo, tôi đã thêm một liên kết để dùng thử miễn phí để bạn không phải trả tiền.