Thứ Năm, 24 tháng 10, 2013

Cookbook - Chuyển đổi qua lại giữa các camera



  - Chuyển đổi qua lại giữa các camera -

Việc lựa chọn thay đổi góc nhìn trong game thường thấy ở nhiều thể loại game như: thể thao, đua xe, mô phỏng và nhiều thể loại khác. Trong bài viết này chúng ta sẽ học cách để cung cấp cho người chơi tính năng chọn lựa các góc nhìn bằng bàn phím số.

Chuẩn bị
basicLevel

Cách để làm


B1. Nhấp phải vào thẻ Project và chọn Import Package | Custom Package và mở file basicLevel đã tải ở trên. 

B2. Tại thẻ Hierarchy, bấm vào nút Create | Camera rồi tạo 2 camera khác nhau và đặt tên là cam1 và cam2.


B3. Nhấp chọn cam2, tại thẻ Inspector, điều chỉnh position và rotation lại như hình sau để tránh trùng với cam1.
 


B4. Vào Game Object | Create Empty và đổi tên thành Switchboard.
 

 

B5. Chọn cam1 và tắt dấu stick ở mục Camera và Audio Listener trong thẻ Inspector đi. Thực hiện tương tự với cam2.
 

 

B6. Tại thẻ Project, nhấp chuột phải vào vùng trống và chọn Create | C# Script và đặt tên là CameraSwitch.
 

 

B7. Double click vào file C# vừa tạo và chèn đoạn code sau vào:
 

using UnityEngine;

public class CameraSwitch : MonoBehaviour
{
    public GameObject[] cameras;
    public string[] shortcuts;
    public bool  changeAudioListener = true;

    void  Update ()
    { 
        int i = 0;
        for (i=0; i<cameras.Length; i++) { 
            if (Input.GetKeyUp (shortcuts [i]))
                SwitchCamera (i);
        }
    }

    void  SwitchCamera (int index)
    {
        int i = 0;
        for (i=0; i<cameras.Length; i++) { 
            if (i != index) {
                if (changeAudioListener) {
                    cameras [i].GetComponent<AudioListener> ().enabled = false;
                }
                cameras [i].camera.enabled = false;
            } else {
                if (changeAudioListener) {
                    cameras [i].GetComponent<AudioListener> ().enabled = true;
                }
                cameras [i].camera.enabled = true;
            }
        }
    }
}

B8.Kéo thả file CameraSwitch trong thẻ Project vào Switchboard trong thẻ Hierarchy.
 


B9. Click chọn file Switchboard, tại thẻ Inspector, đổi Size của Camera và Shorcuts lại thành 3. Kéo thả Main Camera, cam1, cam2 vào những dòng tương ứng, nhập các giá trị cho các dòng Element trong Shorcuts như hình sau:
 

 

B10. Click nút Play để kiểm tra thành quả. Ấn các phím số 1, 2, 3 để chuyển đổi qua lại giữa các camera.

Thứ Ba, 22 tháng 10, 2013

Cookbook - HƯỚNG DẪN TẠO HIỆU ỨNG TRANH TRONG TRANH


  - Hiệu ứng Tranh-Trong-Tranh -
Bài viết này sẽ chỉ cho các bạn cách để tạo thêm một góc nhìn nữa trong game. VD như bạn muốn chiếu một góc nhìn ở một quan cảnh khác so với góc nhìn hiện tại (thường thấy trong các kính chiếu hậu của game đua xe hơi) hay bạn muốn chia màn hình chính ra thành nhiều màn hình nhỏ, mỗi màn hình sử dụng một camera khác nhau trong các game nhiều người chơi. Bài viết này sẽ giúp các bạn giải quyết những vấn đề trên.

Chuẩn bị
basicLevel

Cách để làm

B1. Tạo một project mới bằng cách ấn Ctrl + N và điều chỉnh đường dẫn phù hợp. Nhấp chuột phải vào vùng trống trong thẻ Project và chọn Import Package | Custom Package và mở file basicLevel đã tải ở phần trên.


B2. Trong thẻ Project, vào thư mục 02_01_02 và double click vào file basicScene.


B3. Tại thẻ Hierarchy, chọn Creat | Camera để tạo thêm một camera mới trong game.


B4. Nhấp chọn Camera vừa tạo, tại thẻ Inspector điều chỉnh tọa độ và nhập giá trị Depth = 1 như hình sau:


B5. Nhấp chuột phải vào  vùng trống trong thẻ Project và chọn Creat | C# Script và đặt tên là PictureInPicture.

B6. Double click vào file C# vừa tạo và nhập đoạn code sau vào:

using UnityEngine;

public class PictureInPicture: MonoBehaviour
{
    public enum HorizontalAlignment
    {
        left,
        center,
        right
    };

    public enum VerticalAlignment
    {
        top,
        middle,
        bottom
    };
    public HorizontalAlignment horizontalAlignment = HorizontalAlignment.left;
    public VerticalAlignment verticalAlignment = VerticalAlignment.top;
    public enum ScreenDimensions
    {
        pixels,
        screen_percentage
    };
    public ScreenDimensions dimensionsIn = ScreenDimensions.pixels;
    public int width = 50;
    public int height = 50;
    public float xOffset = 0f;
    public float yOffset = 0f;
    public bool  update = true;
    private int hsize, vsize, hloc, vloc;
   
    void Start ()
    {
        AdjustCamera ();
    }

    void Update ()
    {
        if (update)
            AdjustCamera ();
    }

    void AdjustCamera ()
    {
        if (dimensionsIn == ScreenDimensions.screen_percentage) {
            hsize = Mathf.RoundToInt (width * 0.01f * Screen.width);
            vsize = Mathf.RoundToInt (height * 0.01f * Screen.height);
        } else {
            hsize = width;
            vsize = height;
        }
 
        if (horizontalAlignment == HorizontalAlignment.left) {
            hloc = Mathf.RoundToInt (xOffset * 0.01f * Screen.width);
        } else if (horizontalAlignment == HorizontalAlignment.right) {
            hloc = Mathf.RoundToInt ((Screen.width - hsize) - (xOffset * 0.01f * Screen.width));
        } else {
            hloc = Mathf.RoundToInt (((Screen.width * 0.5f) - (hsize * 0.5f)) - (xOffset * 0.01f * Screen.height));
        }
 
        if (verticalAlignment == VerticalAlignment.top) {
            vloc = Mathf.RoundToInt ((Screen.height - vsize) - (yOffset * 0.01f * Screen.height));
        } else if (verticalAlignment == VerticalAlignment.bottom) {
            vloc = Mathf.RoundToInt (yOffset * 0.01f * Screen.height);
        } else {
            vloc = Mathf.RoundToInt (((Screen.height * 0.5f) - (vsize * 0.5f)) - (yOffset * 0.01f * Screen.height));
        }    
        camera.pixelRect = new Rect (hloc, vloc, hsize, vsize);
    }
}

B7. Save file C# vừa tạo bằng cách ấn Ctrl + S và gắn nó vào Camera bạn mới tạo khi nãy bằng cách kéo thả file C# trong thẻ Project vào Camera trong thẻ Hierarchy.


B8. Nhấp chọn Camera trong thẻ Hierarchy, bỏ chọn dấu check ở mục Audio Listener trong thẻ Inspector và thiết lập các điều chỉnh như hình sau:


B9. Ấn nút Play và xem thành quả.

Thứ Hai, 21 tháng 10, 2013

Project RPG Bài 1. Hướng dẫn làm thanh máu (HP)



Bài này sẽ giúp các bạn có thể bắt đầu làm một game nhập vai (RPG) với thành phần cơ bản không thể thiếu đó là thanh máu (Hay còn gọi là HP - Health Point) bằng cách sử dụng GUI trong C#.


B1. Khởi động Unity và vào File | New Project và điều chỉnh như sau:


B2. Vào Game Object | Creat Other | Cube như hình sau để tạo một khối hộp.


B3. Tại thẻ Inspector, bấm vào hình bánh răng và chọn Reset để trả các giá trị tọa độ hay độ căng lại vị trí ban đầu.

 

B4. Nhập giá trị cho Scale thành X = 100, Y = 1 và Z = 100 như hình sau:

 

B5.  Tại thẻ Project, truy cập vào thư mục Assets | Standard Assets | Character Controllers và kéo thả First Person Controller.prefab vào khung nhìn Scene.

Click vào hình để xem chi tiết

B6. Nhấp chọn vào prefab vừa đưa vào khung nhìn Scene và điều chỉnh giá trị tọa độ tại thẻ Inspector như sau:


B7. Nhấp chuột phải vào thư mục Assets trong thẻ Project và chọn Create | Folder và đặt tên là Script.


B8. Nhấp chuột phải vào thư mục Script và chọn Creat | C# Script và đặt tên là PlayerHealth.


B9. Double click vào file C# PlayerHealth vừa tạo và gõ đoạn code sau vào:

using UnityEngine;
using System.Collections;

public class PlayerHealth : MonoBehaviour {

public int maxHealth = 100;
public int curHealth = 100;

public float healthBarLength;

// Use this for initialization
void Start () {
healthBarLength = Screen.width / 2;
}

// Update is called once per frame
void Update () {
AddjustCurrentHealth(0);
}

void OnGUI(){
GUI.Box(new Rect(10,10, healthBarLength, 20), curHealth + "/" + maxHealth);
}

public void AddjustCurrentHealth(int adj) {
curHealth += adj;

if(curHealth < 0)
curHealth = 0;

if(curHealth > maxHealth)
curHealth = maxHealth;

if(maxHealth < 1)
maxHealth = 1;

healthBarLength = (Screen.width / 2) * (curHealth / (float)maxHealth);
}
}


B10. Trở lại làm việc với Unity Editor, tại thẻ Hierarchy đổi tên First Person Controller thành Player.


B11. Kéo thả file C# Player Health vào Player như hình sau:

Click vào hình để xem chi tiết

B12. Nhấp chọn Main Camera trong thẻ Hierarchy và ấn Delete để xóa đối tượng này.

B13. Nhấp chuột phải vào Cube trong thẻ Hierarchy và chọn Rename rồi đổi tên thành Plane. Sau đó ấn Play để kiểm tra thành quả.




B14. Tiếp tục thực hiện thanh máu cho Enemy. Vào Game Object | Creat Other | Cube và điều chỉnh các giá trị tại thẻ Inspector như sau:

 
B15. Nhấp chuột phải vào thư mục Script trong thẻ Project và chọn Creat | C# Script và đặt tên là EnemyHealth.


B16. Double click vào file C# EnemyHealth vừa tạo và nhập đoạn code sau vào:

using UnityEngine;
using System.Collections;

public class EnemyHealth : MonoBehaviour {
public int maxHealth = 100;
public int curHealth = 100;
public float healthBarLength;
// Use this for initialization
void Start () {
healthBarLength = Screen.width / 2;
}
// Update is called once per frame
void Update () {
AddjustCurrentHealth(0);
}
void OnGUI(){
GUI.Box(new Rect(10, 40, healthBarLength, 20), curHealth + "/" + maxHealth);
}
public void AddjustCurrentHealth(int adj) {
curHealth += adj;
if(curHealth < 0)
curHealth = 0;
if(curHealth > maxHealth)
curHealth = maxHealth;
if(maxHealth < 1)
maxHealth = 1;
healthBarLength = (Screen.width / 2) * (curHealth / (float)maxHealth);
}
}


B17. Kéo thả file C# EnemyHealth vào Evil Cube như hình sau:


B18. Vào GameObject | Creat Other | Directional Light và điều chỉnh thông số tại thẻ Inspector như sau:


B19. Cuối cùng, ấn nút Play để kiểm tra thành quả.




Thứ Ba, 15 tháng 10, 2013

AI 1.1 - Giới thiệu về AI



  1.1 - Giới thiệu về AI (Trí Tuệ Nhân Tạo)

Quyển sách này giúp bạn kết hợp chặt chẽ nhiều kỹ thuật AI (Trí tuệ nhân tạo) trong các game của bạn. Chúng ta sẽ thảo luận về những kỹ thuật quyết định chẳng hạn như Finite State Machines (Máy Trạng Thái) và Behavior Tree (Cây Hành Vi). Chúng ta cũng sẽ nhìn vào động tác, tránh thoát chướng ngại, và tập hợp lại. Chúng ta cũng biết được làm sao để theo dấu, làm sao tạo một con đường bằng cách dùng thuật toán tìm đường A*, và rồi cách nào để đi đến đích bằng cách dùng một mạng lưới điều hướng. Như một phần thưởng, chúng ta sẽ đi vào chi tiết về tính ngẫu nhiên và khả năng có thể xảy ra, và rồi kết hợp chặt chẽ những ý kiến này vào một project cuối cùng.

1. Giới thiệu về AI

Chương này sẽ giúp bạn hiểu một chút nền tảng về trí tuệ nhân tạo ở nhà trường, những lĩnh vực truyền thống, và những ứng dụng chuyên biệt của game. Chúng ta sẽ học để biết ứng dụng và sự thi hành của AI trong game khác với những lĩnh vực khác ra sao, cùng những yêu cầu quan trọng và đặc biệt cho AI trong game. Chúng ta cũng học thêm những kỹ thuật cơ bản của AI được dùng trong game. Chương này dùng để tham khảo cho các chương sau, chúng ta sẽ thực thi những kỹ thuật AI đó trong Unity.


Trí tuệ nhân tạo - Artificial Intelligence (AI)

Các tổ chức sống như động vật và con người có vài loại trí tuệ, giúp chúng ta trong việc đưa ra quyết định riêng để thực hiện vài điều. Mặc khác, máy tính chỉ là thiết bị điện tử có thể xử lý dữ liệu, thực hiện những phép toán logic ở tốc độc cao, và xuất ra kết quả. Vì thế, Trí tuệ nhân tạo (AI) là đề tài chính của việc tạo ra máy tính có thể suy nghĩ và quyết định như tổ chức sống, để thực thi những phép toán chuyên biệt.

Hiển nhiên đây là chủ đề lớn. Và không có thể nào một quyển sách nhỏ như thế này có thể nói hết mọi điều liên quan đến AI. Nhưng nó thật sự quan trọng để hiểu những điều căn bản của AI, khi đang được sử dụng trong những lĩnh vực khác nhau. AI chỉ là một thuật ngữ chung; những thi hành của nó cùng những ứng dụng của nó thì khác nhau cho những mục đích khác nhau, giải quyết những tập vấn đề khác nhau.

Trước khi chúng ta chuyển sang những kỹ thuật game riêng biệt, chúng ta sẽ nhìn về những phạm vi nghiên cứu trong các ứng dụng AI :

Thị giác máy tính (Computer vision) : Đó là khả năng để lấy nhập liệu hình ảnh từ các nguồn chẳng hạn như video hay camera, và phân tích chúng để thực thi các phép toán riêng chẳng hạn như nhận dạng khuôn mặt, nhận dạng vật thể, và nhận dạng ký tự bằng quang học.

Thực thi ngôn ngữ tự nhiên (Natural language processing - NLP) : Đó là khả năng cho phép một máy tính đọc và hiểu các ngôn ngữ, cũng như chúng ta đọc và nói một cách bình thường. Vấn đề là những ngôn ngữ chúng ta dùng hôm nay khó để máy hiểu. Có quá nhiều cách khác nhau để nói về một điều, và cùng một câu có thể hiểu theo nhiều nghĩa khác nhau tuỳ theo ngữ cảnh. NLP là bước tiến quan trọng cho máy tính, khi chúng cần hiểu ngôn ngữ và những diễn đạt chúng ta dùng, trước khi chúng có thể thực hiện chúng và trả lời một cách hợp lý. May thay, có một tập thông tin khổng lồ có thể trên Web, chúng có thể giúp nhà nghiên cứu làm các phân tích tự động về ngôn ngữ.

Lý luận phán đoán theo kinh nghiệm (Common sense reasoning) : Đây là một kỹ thuật mà bộ não của chúng ta có thể dễ dàng dùng để vẽ ra những câu trả lời thậm chí từ các lĩnh vực chúng ta không hiểu rõ. Kiến thức về việc phán đoán dựa theo kinh nghiệm là một cách thông thường cho chúng ta để cố gắng vượt qua các câu hỏi chắc chắn, khi bộ não chúng ta có thể hoà trộn và tác động lẫn nhau giữa ngữ cách, nền tảng kiến thức, và sự thành thạo ngôn ngữ. Nhưng việc làm ra các bộ máy để áp dụng kiến thức như thế vô cùng phức tạp và vẫn là một thách thức lớn đối với các nhà nghiên cứu.
AI trong game

http://somegamez.com/wp-content/uploads/2013/09/the-art-of-game-design.jpgGame AI cần bổ sung chất lượng của một game. Vì thế chúng ta cần hiểu yêu cầu nền tảng mà mỗi game cần có. Câu trả lời sẽ dễ dàng hơn. Đó là nhân tố thú vị. Vì vậy, điều gì làm cho một trò game trở nên thú vị để chơi ? Đây là chủ đề cho việc thiết kế game, và tham khảo tốt là trong The Art of Game Design của tác giả Jesse Schell. Chúng ta hãy thử để thảo luận câu hỏi này mà không cần đi sâu vào chủ đề thiết kế game. Chúng ta sẽ nhận ra rằng một trò chơi kích thích thật sự là niềm vui để chơi. Để tôi nhắc lại : đó là về việc làm ra một trò chơi mang tính thách thức. Có nghĩa là game không nên quá khó mà người chơi không thể đánh bại đối thủ, hoặc là quá dễ thắng. Tìm ra mức độ thử thách đúng đắn là chìa khoá để làm cho trò chơi trở nên thú vị.

Và đó là nơi AI đóng góp. Vai trò của AI trong game là để tạo thú vị bằng việc cung cấp những đối thủ khiêu chiến, và những nhân vật NPCs (non-player characters) hành động một cách có đầu óc trong thế giới game. Vì thế, dẫu rằng mục tiêu ở đây không để tái tạo toàn bộ quá trình của loài người và động vật, nhưng để làm cho NPCs có vẻ thông minh bằng việc phản ứng lại để thay đổi tình thế trong thế giới game theo một cách có nghĩa đối với người chơi.

http://i1.cdnds.net/13/28/618x371/gaming-pokemon-x-and-y-july-12-screenshots-10.jpg 

Lý do mà chúng ta không muốn làm hệ thống AI trong game quá xa hoa máy móc là, sức mạnh thực thi cần cho những tính toán AI cần được chia sẻ giữa những phép toán khác như việc lót đồ hoạ và mô phỏng vật lý. Cũng như, đừng quên rằng chúng ta, tất cả đều đang xảy ra trong thế giới thật, và cũng thật sự quan trọng để có được một tốc độ khung qua game. Thậm chí có những nỗ lực để tạo ra bộ xử lý trong máy tính chuyên dụng cho những phép toán AI (Bộ xử lý Intia của AI Seek). Với sức mạnh thực thi chưa từng tăng thêm, chúng ta bây giờ có nhiều chỗ hơn cho các phép toán AI. Tuy nhiên, như tất cả những quy luật khác trong việc lập trình game, việc tối ưu hoá những tính toán AI còn là một thách thức lớn đối với những nhà lập trình AI.

Những kỹ thuật AI

Trong phần này, chúng ta sẽ đi qua vài kỹ thuật AI đang được dùng trong các hình thức khác nhau của game. Chúng ta sẽ học làm sao để thực thi mỗi đặc tính đó trong Unity trong những chương tiếp theo. Khi đó quyển sách này không tập trung vào những kỹ thuật AI chính nó, nhưng việc thực thi của những kỹ thuật đó bên trong Unity, chúng ta sẽ không đi quá sâu vào chi tiết về những kỹ thuật đó ở đây. Vì thế, hãy xem nó như một buổi học cấp tốc, trước khi đi vào thực hiện đầy đủ hiển nhiên. Nếu bạn muốn học nhiều về AI cho game, thật sự có vài quyển sách hay ở đó, chẳng hạn như Programming Game AI by Example bởi Mat Buckland và Buckland and Artificial Intelligence for Games của Ian Millington và John Funge. Bộ sách AI Game Programming Wisdom cũng chứa nhiều tài nguyên hữu ích và các bài về các kỹ thuật AI gần nhất.

Máy Trạng Thái - Finite State Machines (FSM)

Máy Trạng Thái (FSM) có thể được xem như một trong những mô hình AI đơn giản nhất, và thông dụng trong phần lớn các game. Máy trạng thái cơ bản bao gồm một số trạng thái có hạn với một trạng thái khởi tạo, và rồi quan sát những sự kiện và các quy luật mà sẽ gây ra một sự chuyển đổi trạng thái này sang trạng thái khác. Chính xác thì một thực thể game chỉ có thể ở trong một trạng thái vào một thời điểm bất kỳ.

Ví dụ, chúng ta hãy xét một lính canh gác AI trong một game thể loại bắn súng. Trạng thái của nó có thể đơn giản chỉ là đi tuần tra, săn đuổi, và bắn.


FSM đơn giản của một lính canh gác AI


Cơ bản có 4 thành phần trong một FSM đơn giản :


Trạng thái : thành phần này định nghĩa một tập trạng thái mà game hoặc một NPC có thể chọn trong tuần tra, đi săn, và bắn.

· Chuyển trạng thái : thành phần này định nghĩa mối quan hệ giữa các trạng thái khác nhau


· Quy luật : thành phần này được dùng để khởi đầu một sự chuyển trạng thái (người chơi trong tầm ngắm, tiếp cận đủ gần để tấn công, và người chơi thua hoặc bị giết)


· Sự kiện : đây là thành phần, mà sẽ khởi động để kiểm tra quy luật (khu vực có thể thấy của lính, khoảng cách với người chơi,…)

Vì thế, một con quỷ ở Quake 2 có thể có những trạng thái sau : đứng, đi, chạy, lẩn tránh, đứng yên và tìm kiếm.
http://gunpowered.com/q2cheese/screens/quake2-12.jpg
 
FSM được dùng chủ yếu trong game AI rộng rãi, vì chúng thật sự dễ dàng để thực thi và nhiều hơn cho cả những game đơn giản và phức tạp hơn một chút. Việc sử dụng if/else hoặc switch, chúng ta có thể dễ dàng thực thi một FSM. Nó có thể lộn xộn, khi chúng ta bắt đầu có nhiều trạng thái và nhiều chuyển đổi. Chúng ta xem cách quản lý một FSM đơn giản trong chương tiếp theo.

Cookbook - Lưu các asset trong Unity thành Prefab



 - Lưu các asset (tài nguyên) trong Unity thành Prefab (gói tài nguyên) -

Bạn có thể dễ dàng tạo ra các khối hình học cơ bản trong Unity. Trong bài này, chúng ta sẽ tạo một game object từ các nguồn của Unity và lưu giữ chúng vào project của chúng ta dưới dạng một Prefab.

Cách để làm...


Để tạo một Prefab, chúng ta sẽ làm như sau:

1. Trong Unity editor, vào GameObject | Create Other | Sphere.



2. Trong thẻ Hierarchy, nhấp chuột phải vào Sphere và chọn Rename rồi đổi tên thành Cue Ball.




3. Trong thẻ Project, nhấp phải vào khung Asset và chọn Create | Material. Sau đó đổi tên vật liệu mới tạo lại thành Cue Ball Material.





4. Nhấp chuột chọn Cue Ball Material trong thẻ Project. Sau đó qua thẻ Inspector và đổi giá trị Shader thành Specular.

5. Điều chỉnh Specular Color thành màu trắng và kéo thanh trượt Shininess về phía bên phải để thiết lập giá trị cao nhất.



6. Từ thẻ Project, kéo Cue Ball Material trong thẻ Project vào Cue Ball trong thẻ Hierarchy.


7. Nhấp chọn Cue Ball trong thẻ Hierarchy. Vào Component | Physics | Rigidbody để gắn Rigidbody (giả lập khối lượng và trọng lượng cho sự vật).




8. Nhấp chuột phải vào khoảng trống trong thẻ Project và chọn Create | Prefab. Sau đó đổi tên lại thành Cue Ball Prefab.



9. Kéo Cue ball trong thẻ Hierarchy vào Cue Ball Prefab vừa tạo. Và chúng ta có thể sử dụng lại gói tài nguyên này vào các lần sau.




Công dụng...

Trong Unity, game object (đối tượng được sử dụng trong game) có thể được chứa vào một cái kho gọi là Prefab. Điều này rất hữu dụng cho các trường hợp muốn sử dụng lại một game object trong nhiều tầng khác nhau hay dùng các đối tượng này vào để code. Tương tự như chức năng MovieClips trong Adobe Flash.

Mang những Prefab vào project khác

Bạn cũng có thể sử dụng lại Prefab của bạn vào các project khác bằng cách Export (xuất tài nguyên) ra thành một Custom package và Import (nhập tài nguyên) vào project bạn cần dùng.


Tạo những loại game object khác

Unity không chỉ tạo ra những khối cầu không mà còn có thể tạo ra các game object khác như : light, camera, GUI texture.... Bạn chỉ cần vào GameObject | Create Other và lựa chọn tùy ý.

Chủ Nhật, 13 tháng 10, 2013

Download và cài đặt Unity


  Cài đặt Unity...

Unity là một game engine rất mạnh mẽ và linh hoạt. Nó có hai phiên bản Indie(miễn phí) và P(trả phí).Trong trường hợp bạn chưa cài đặt được Unity, bài này sẽ hướng dẫn cách bạn làm như thế nào


Sẵn sàng cài đặt...


Bạn sẽ cần truy cập mạng để làm theo sự hướng dẩn của bài này.


Cách để làm...


Để cài đặt Unity, xin mời xem hướng dẫn dưới đây:


1. Truy cập vào Unity thông qua trang web www.unity3d.com

2. Tìm và nhấp chuột vào nút Download, được đặt ở góc phía trên bên phải.



3. Trên trang Download, nhấp chuột vào nút Download Unity để tải phiên bản mới nhất về. Chờ quá trình Download được hoàn thành.




4. Khởi động chương trình cài đặt. Quá trình cài đặt này không phức tạp lắm, mọi thứ sẽ được cài đặt trong đôi phút.



5. Khởi động Unity, hộp thoại kích hoạt xuất hiện, bạn có thể chọn việc sử dụng phiên bản miễn phí, trả phí (Unity Pro) hay dùng thử bản trả phí Unity Pro trong 30 ngày.



6. Chọn ra sự lựa chọn của bạn và bấm Ok. Bạn nên đăng nhập hoặc tạo tài khoản.

7. Đăng kí và đăng nhập để kích hoạt phiên bản Unity của bạn.