Thứ Năm, 3 tháng 4, 2014

ProjectGame 1.1 - Platform Game Đơn Giản - Tạo Camera và Level


Vẫn còn nhiều platform game kinh điển tồn tại trong kí ức mọi người như Mario, Sonic, Megaman... Platform game là dạng game với động tác nhảy và yếu tố trọng lực là chính, ngoài ra các yếu tố phụ khác đã góp phần làm nên tên tuổi của các platform game kinh điển trên. Bài viết này được chia ra làm 6 phần nhỏ. Tất cả đều là nền tảng 2D, để các bạn dễ hiểu hơn những kiến thức về lập trình game và dễ đi sâu hơn vào các project game sau trên nền tảng 3D.


Mục tiêu

>> 1.1 - Tạo Camera và Level
1.2 - Tạo nhân vật 2D
1.3 - Tạo class (lớp) CharacterController và SpriteManager
1.4 - Nhảy và yếu tố vật lý
1.5 - Tạo chìa khóa và mở cửa
1.6 - Chèn âm thanh và nút Replay

Tài nguyên
GameProject1



  PG 1.1 - Platform Game đơn giản: Tạo Camera và Level

B1. Vào File | New Project để tạo Project mới với tên là SimplePlatform như hình sau:


B2. Giải nén file GameProject1 vừa tải ở trên và kéo thả thư mục Game Project 1 vào thẻ Project như hình sau:


B3. Tại thẻ Project, nhấp chuột chọn Plane trong thư mục Game Project 1 | FBX và qua thẻ Inspector, điều chỉnh Scale Factor = 1. Sau đó nhấn Apply để hoàn tất việc điều chỉnh.


B4. Kéo thả Plane vào thẻ Hierarchy và đổi tên thành Background.


B5. Nhấp chọn Background trong thẻ Hierarchy, qua thẻ Inspector và điều chỉnh như hình sau:


B6. Vẫn đang chọn Background, ở thẻ Inspector, nhấp phải vào Animator và chọn Remove Component.


B7. Tại thẻ Project, nhấp chọn Create | Material và đặt tên là M_Background.


B8. Nhấp chọn M_Background, qua thẻ Inspector, nhấp vào chữ Select và chọn Background như hình sau.


B9. Vẫn đang chọn M_Background, điều chỉnh như sau:
  • Shader: Diffuse
  • Main Color: R = 164, G = 219, B = 225, A = 255
  • Base (RGB): Tiling X =  2, Y = 2; Offset: X = 0, Y = 0



B10. Nhấp chọn Background ở thẻ Hierarchy, qua thẻ Inspector, tại mục Mesh Renderer | Material điều chỉnh Element 0 là M_Background.


B11. Vào Edit | Project Setting | Tags & Layers và nhập vào các giá trị như sau:


B12. Nhấp chọn Background ở thẻ Hierarchy, qua thẻ Inspector, chọn Tag = Background và Layer = Background như hình sau:


B13. Tại thẻ Hierarchy, nhấp chọn Main Camera, qua thẻ Inspector, điều chỉnh Projection thành Perspective và Position như trong hình sau:


B14. Tại thẻ Hierarchy, nhấp chọn Create | Directional Light và qua thẻ Inspector điều chỉnh như sau:


B15. Vào GameObject | Create Empty và đổi tên thành Level. Qua thẻ Inspector, điều chỉnh các thông số như hình sau:

B16. Tại thẻ Hierarchy, nhấp chọn nút Create | Cube và đổi tên thành Floor. Đặt tag là Floor, layer là Level như hình sau:

B17. Thực hiện lại bước trên một lần nữa với tên cube là Wall, tag là Wall và layer là Level.


B18. Tại thẻ Project, nhấp chọn Create | Material và đặt tên là M_Level.


B19. Nhấp chọn M_Level vừa tạo và qua thẻ Inspector, bấm vào ô điều chỉnh màu và chỉnh các thông số màu sắc là R = 150, G = 230, B = 225, A = 255.


B20. Kéo thả M_Level ở thẻ Project vào Wall và Floor ở thẻ Hierarchy.

 


B21. Tại thẻ Hierarchy, kéo thả Wall và Floor vào Level như hình sau:


B22. Tại thẻ Hierarchy, nhấp chọn Wall và ấn Ctrl + D 6 lần để tạo thêm 6 bản sao nữa. Nhấp chọn Floor và ấn Ctrl + D 2 lần để tạo ra thêm 2 bản sao nữa. Và đặt tên như hình dưới đây:


B23. Tại thẻ Hierarchy, điều chỉnh các bản sao vừa tạo ở bước trên với tên và thông số ở thẻ Inspector như dưới đây:
  • Floor 1 : Position: x = -4, y = -9, z = 0 - Scale: x = 125, y = 15, z = 1
  • Floor 2: Position: x = -6,  y = 5, z = 0 - Scale: x = 32, y = 1, z = 1
  • Floor 3: Position: x = -25, y = 12, z = 0 - Scale: x = 19.5, y = 1, z = 1
  • Floor 4: Position: x = 14, y = 12, z = 0 - Scale: x = 20, y = 1, z = 1
  • Floor 5: Position: x = -7, y = 9, z = 0 - Scale: x = 9, y = 1, z = 1
  • Floor 6: Position: x = -31, y = 1, z = 0 - Scale: x = 6, y = 1, z = 1
  • Floor 7: Position: x = 21, y = 2, z = 0 - Scale: x = 10, y = 1, z = 1

  • Wall 1: Position: x = -49, y = 17, z = 0 - Scale: x = 36, y = 40, z = 1
  • Wall 2: Position: x = 42, y = 17, z = 0 - Scale: x = 38, y = 39, z = 1
  • Wall 3: Position: x = -7, y = 23, z = 0 - Scale: x: 1, y = 36, z = 1

B24. Nhấn Ctrl + S để save scene này lại với tên là SimplePlatform.



Hoàn thành mục tiêu 1.1

Vừa rồi chúng ta đã tạo Background đặt phía sau Level, Level bao gồm các khối gạch được xếp theo tầng (Floor) và tường (Wall) để nhân vật có thể di chuyển lên các tầng và giới hạn phạm vi di chuyển của nhân vật bởi các bức tường.





Ở đây, chúng ta điều chỉnh Main Camera ở chế độ Perspective để tạo chiều sâu cho game, khiến góc nhìn đẹp mắt hơn.


Kiến thức bổ sung
Phần Projection ở Main Camera có 2 giá trị là Orthographic (Góc nhìn trực quan) và Perspective (Góc nhìn phối cảnh). Ở chế độ Orthographic, vật thể sẽ không bị kéo dãn bởi khoảng cách của camera. Bởi vậy trong màn hình game, chúng ta chỉ thấy được 1 mặt của vật thể. Ở chế độ Perspective, chúng ta sẽ nhìn thấy được các mặt bên của vật thể do có chiều sâu, tựa như góc nhìn thực tế của mắt người bởi luật phối cảnh.


Không có nhận xét nào:

Đăng nhận xét