Đăng ký Đăng nhập
Trang chủ Hướng đi cho xây dựng game đa nền tảng...

Tài liệu Hướng đi cho xây dựng game đa nền tảng

.DOCX
11
32
120

Mô tả:

Họ - tên: Lê Ngọc Hảo. MSSV: Môn học: Văn phong kỹ thuật. Unity3D: Hướng đi cho xây dựng Game đa nền tảng I. Tổng Quan Trong thời đại công nghệ thông tin như hiện nay, sản phẩm công nghệ ngày càng chịu sự đánh giá khắt khe của người dung, đặc biệt là sản phẩm Game được nhận rất nhiều đánh giá từ các Game thủ, hay các người dung bình thường. Điều đó đưa đến yêu cầu đối với một Game được phát hành, đội ngũ phát triển Game ngày càng cao. Lập trình Game là một trong những mảng khó khăn nhất trong lập trình máy tính – bạn cần phải nắm vững chuyển động, đồ họa lập trình, cấu trúc dữ liệu, lập trình hướng đối tượng… và còn nhiều thứ nữa. Nhưng với công cụ thích hợp, chiến lược đúng đắn, bạn sẽ ngạc nhiên vì những thứ bạn có thể làm. Unity3D là mảnh ghép mới của công nghệ, có thể giúp bạn phát triển Game dễ dàng và đơn giản hơn. Unity là công cụ sản xuất trò chơi hoặc là một phần mềm được viết để thiết kế và xây dựng các trò chơi điện tử (Game Engine). II. Giới Thiệu 1. Sơ lược về Game Engine Một Game Engine là một phần mềm được viết với mục đích thiết và xây dựng Game. Chức năng cốt lõi phần lớn nằm trong hệ thống dựng hình (Rendering System) cho các hình ảnh 2D, 3D, hệ thống vật lý (Physics System), hệ thống giao diện người dung (UI System) và một số bộ phận khác [1]. Quá trình làm Game được tiết kiệm rất nhiều kinh phí và thời gian khi có thể tái sử dụng, thích ứng một Game Engine để tạo ra nhiều Game khác nhau. Game Engine cung cấp các bộ công cụ trực quan và có thể tái sử dụng từng thành phần đó. Nói chung các bộ công cụ này cung cấp một môi trường phát triển được tích hợp đơn giản hóa. Những Game Engine này đôi khi còn được gọi là các phần mềm trung gian cho Game (Game Middleware), như ý nghĩa của thuật ngữ, nó cung cấp một nền tảng dễ sử dụng lại với mọi chức năng cốt lõi cần thiết ngay trong nó để phát triển một Game hoàn chỉnh, đồng thời giảm giá thành, độ phức tạp và thời gian phát triển – tất cả các yếu tố quan trọng trong nền công nghiệp Game đầy cạnh tranh. Một số Game nổi tiếng và Game Engine để phát hành nó như [2]: Games: Dota 2, Half Life 2 series, Counter-Strike: Source, Counter-Strike: Global Offensive, Left4Dead, Left4Dead 2, Portal 1 and 2 Game Engine: Source Engine Game: Hitman Absolution Game Engine: Glacier 2 Game: Battlefield: Bad Company 2, Battlefield 3, Need for Speed: The Run Game Engine: FrostBite Games: Mass Effect Series, Dishonored, Bioshock Infinite, Batman: Arkham Asylum and City and hundreds more Game Engine: Unreal Engine Game: Crysis 2 and 3 Game Engine: CryEngine Game: Liên Quân Mobile, Osiris: New Dawn Game Engine: Unity3D 2. Sơ lược về Unity Hình II.1 Logo Unity Unity Technologies được thành lập vào ngày 2 tháng 8 năm 2004 bởi David Helgason (CEO), Nicholas Francis (CCO) và Joachim Ante (CTO) tại Copenhagen , Đan Mạch. Unity Technologies đã nhận được tài trợ từ những người như Sequoia Capital , WestSummit Capital và iGlobe Partners. [3]  Phiên bản mới nhất: Unity 2018.3.11 và Unity 2019.2.0 Alpha 9.  Ngôn ngữ sử dụng: C#.  Phát triển Game đa nền tảng: Windows, Mac OS X, Android, IOS, WebGL, Xbox 360, PS3…  Website: www.Unity3D.com  Unity là một Game Engine rất mạnh, hỗ trợ phát triển đa nền tảng như Web, Andoid, IOS… Đồng thời Unity không yêu cầu cấu hình máy quá cao và có hỗ trợ các nhà phát triển với phiên bản Free. Với lượng người dung lớn nên tài liệu Unity3D cũng rất nhiều trên mạng, với nhiều tutorials, sách hướng dẫn được cung cấp bởi đội phát triển của Unity3D và các người dùng Unity. Dễ dàng cho người mới bắt đầu. Unity3D là phần mềm làm Game trực tiếp chạy theo thời gian thực mà không cần render, cho phép người dùng có thể thiết kế các Interface Graphics, Character hay Map từ các phần mềm thứ 2 (thường là các phần mềm thiết kế đồ họa như: Photoshop CS6, 3DsMax, Blender, Cinema4D, Maya…) sau đó chỉ cần import vào Unity dưới định dạng như *.FBX, *.PNG, *.3DS tùy vào loại cần đưa vào. Một thế mạnh nữa của Unity là bạn có thể chạy demo Game ngay trên Editor (Sence, Game Editor) mà không cần phải build ra để chạy trên các device hoặc máy ảo. Điều đó làm cho việc phát triển và testing thuận lợi hơn rất nhiều. III. Một số đặc điểm và tính năng của Unity 1. Rendering và Lighting Unity hỗ trợ Windows đồ họa DirectX 11 API nhằm cải thiện hiệu suất tính toán Shaders (bóng của vật thể), trong đó cung cấp khả năng sử dụng CPU và GPU song song và thêm chi tiết phong phú hơn với các mô hình, thế giới, vật thể trong Game. Để tạo độ hoang dã cho Game, Unity sử dụng kỹ thuật vượt trước ánh sáng để cho ánh sáng cao hơn và độ trung thực của bóng tối của vật thể. Các đối tượng được render qua Camera theo các Layer giúp người dùng dễ sắp xếp, tùy chỉnh. Ánh sáng là một yếu tố thiết yếu giúp môi trường đẹp hơn, thực tế hơn. Unity cung cấp hỗ trợ các dạng Lighting đa dạng như Point Light (điểm sáng), Direction Light (Nguồn sáng có hướng) ... Một số công cụ và kỹ thuật ánh sáng mà Unity hỗ trợ như: LightMapping, Realtime Shadows, Lens Flares. Một số hỗ trợ:  Unity cung cấp sẵn hơn 100 Shaders với đầy đủ các loại phổ biến nhất.  Hỗ trợ Surface Shaders, Occlusion Culling, GLSL Optimizer.  Hỗ trợ LOD. 2. Physics PhysX là một Engine cực mạnh về xử lý vật lý và va chạm được phát triển bởi nhà phát triển Card đồ họa hàng đầu thế giới NVIDIA. Unity tích hợp Engine này nhằm đảm nhiệm mọi vấn đề về vật lý và va chạm. Một số tính năng vật lý được hỗ trợ bởi Unity như: Rigidbody, Ragdolls, Collider, Cloths, Joint... 3. Terrains Terrains gọi chung là địa hình, bao gồm nền đất, núi sông... trong mỗi trường trò chơi mà trên đó các đối tượng như cây cỏ được dựng lên. Unity cung cấp một bộ công cụ giúp tùy chỉnh một cách tinh tế như nâng hạ địa hình, kéo dãn địa hình. Bên cạnh đó công cụ còn cung cấp chổi vẽ với các kích thước khác nhau, có nhiều thông số để tùy chỉnh các kết cấu địa hình. Cùng Terrains Tools và Tree Creator là một công cụ giúp xây dựng cây cỏ trên địa hình một cách tuyệt vời với đủ loại hình, kích thước. 4. Audio Unity cung cấp công cụ mạnh cho những cảnh cộng hưởng âm thanh. Trong Game âm thanh được hỗ trợ bởi FMOD, một trong những thư viện rộng lớn nhất thế giới và những bộ công cụ giúp hỗ trợ tích hợp âm thanh mạnh mẽ. 5. UI System Hệ thống giao diện người dùng được phát triển một cách hoàn hảo bởi Unity. Các đối tượng UI Unity hỗ trợ cơ bản như: Canvas, Panel, Button, Image, Slider, Scroll View... có nhiều tùy chọn hỗ trợ người phát triển để dễ dàng custom tùy ý theo từng Game. Các thành phần UI được hiển thị thông qua Canvas và bắt sự kiện qua EventSystems giúp người phát triển dễ quản lý giao diện người dùng. Đặc biệt, hệ thống anchor, scaler UI System của Unity rất mạnh mẽ. Điều đó giúp cho phát triển Game trên đa màn hình với các kích thước khác nhau dễ dàng hơn. 6. Particle System – Effect System Với yêu cầu ngày càng cao của người chơi về đồ họa Game, thì các hiệu ứng trong Game là không thể thiếu. Hệ thống hiệu ứng của Unity cũng rất tuyệt vời khi hỗ trợ gần như hoàn thiện tất cả các loại hiệu ứng có thể có như: Line, Trails, Particle. Particle của Unity hỗ trợ render cả triệu hạt một lần, thật mạnh mẽ. III. Tạm Kết Unity3D là một Game Engine rất mạnh mẽ, các tinh năng được cập nhật phát triển liên tục. Trên đây chỉ là một số rất nhỏ các tính năng của Unity. Với Engine này, các nhà phát triển có thể phát triển Game nhanh nhưng vẫn đảm bảo được chất lượng, phù hợp với ngành công nghiệp Game phát triển rất nhanh hiện tại. Đồng thời với Unity, chúng ta có thể làm được gần như tất cả những gì chúng ta nghĩ, chỉ cần đủ trình độ và kinh nghiệm. IV. Tài Liệu Tham Khảo [1].https://vi.wikipedia.org/wiki/Game_enginehttps://vi.wikipedia.org/wiki/Game_ engine [2].https://www.worldofleveldesign.com/categories/level_design_tutorials/recomm ended-game-engines.php [3]. https://en.wikipedia.org/wiki/Unity_Technologies
- Xem thêm -

Tài liệu liên quan

Tài liệu vừa đăng