Nhóm đã hoạt động từ năm 2015 nhưng đến năm 2021 mớichính thức được thành lập và đăng ký kinh doanh với tên gọi Unicorn Studio, vớimong muốn phát triển như một startup kỳ lân như tên gọi
GIỚI THIỆU ĐỊA ĐIỂM THỰC TẬP
Giới thiệu về doanh nghiệp
Công ty là một Startup được thành lập bởi ba thành viên sáng lập: Nguyễn Đức Ngọc; Nguyễn Việt Dũng; Lê Trần Trung Công ty hoạt động như một nhóm phát triển phần mềm với những thành viên có trên 15 năm tham gia vào lĩnh vực phát triển phần mềm Nhóm đã hoạt động từ năm 2015 nhưng đến năm 2021 mới chính thức được thành lập và đăng ký kinh doanh với tên gọi Unicorn Studio, với mong muốn phát triển như một startup kỳ lân như tên gọi của công ty.
Hồ sơ pháp lý và đăng ký kinh doanh.
- Tên công ty: Công ty cổ phần Unicorn Studio.
- Ngày cấp phép hoạt động: 24/12/2021
- Số đăng ký kinh doanh: 0109869285
- Đại diện pháp luật: Nguyễn Đức Ngọc
- Chức vụ: Giám đốc điều hành.
- Địa chỉ: Tầng 2, toà nhà Luxury Park View, số 8 đường Phạm Văn Bạch, Phường Yên Hoà, Quận Cầu Giấy, Thành phố Hà, Việt Nam.
1.2 Ngành nghề đăng ký kinh doanh của doanh nghiệp.
- Hoạt động dịch vụ công nghệ thông tin và các dịch vụ liên;
- Sản xuất đồ chơi, trò chơi;
- Lập trình máy vi tính;
- Xử lý dữ liệu, cho thuê các hoạt động liên quan;
- Tư vấn máy tính và quản trị hệ thống máy vi tính;
- Lập trình và phát triển các trò chơi;
- Phát triển ứng dụng phần mềm;
1.3 Lĩnh vực hoạt động chủ yếu của doanh nghiệp trong những năm gần đây.
Kể từ khi thành lập từ 2021 đến nay, công ty tập trung phát triển các sản phẩm game online trực tuyến Tham gia phát triển các dự án NFT, Blockchain, Metaverse, truyền thông và phát hành tiền số.
Ngoài ra trong công ty cũng có tham gia các hoạt động outsourcing để phát triển các dự án liên quan đến lĩnh vực IT, cho các khách hàng liên quan đến các lĩnh vực: tài chính, blockchain, metaverse, thực tế ảo, thực tế tang cường, y tế, giáo dục, giải trí, điện ảnh, kiểm thử và truyền thông
1.4 Mục tiêu và định hướng phát triển của công ty.
- Tạo nên sản phẩm có giá trị cho xã hội.
- Đóng góp cho sự phát triển công nghệ 4.0.
- Thực hiện nghĩa vụ thuế với nhà nước đầy đủ.
- Xây dựng mối liên hệ cùng cộng đồng kinh doanh.
Về định hướng phát triển: 9 giai đoạn
- Giai đoạn 1: Xây dựng đội ngũ công ty – văn hóa doanh nghiệp (03 tháng).
- Giai đoạn 2: Thu hút cộng đồng chung sức tạo tiền đề vững mạnh, lấy cộng đồng làm giá trị cốt lõi để phát triển nguồn lực về con người truyền thông và tài chính (Dự kiến 18 tháng).
- Giai đoạn 3: Truyền thông quảng cáo các dự án nội tại của công ty và truyền thông các dự án theo hợp đồng kinh tế ký kết (Dự kiến 20 tháng).
- Giai đoạn 4: Hoạch định kinh tế và chia cổ tức cho các thành viên tham gia tại GĐ 2 của công ty (Dự kiến 35 tháng).
- Giai đọạn 5: Đưa công ty trở thành công ty đại chúng với mức vốn hóa 1 tỷ USD (Dự kiến sau 37 tháng).
- Giai đoạn 6: Thu hút nguồn lực vốn từ các nhà đầu tư ‘thiên thần” có các tổ chức ngoài (Dự kiến sau 40 tháng).
- GĐ 7 - GĐ 8 – GĐ 9: Đưa công ty trở thành tập đoàn truyền thông toàn cầu(Dự kiến sau 120 tháng).
1.5 Cơ cấu tổ chức của công ty Unicorn Studio.
Công ty Unicorn Studio với đội ngũ quản lý và nhân viên trẻ tuổi đầy nhiệt huyết và năng động – với một tập thể đoàn kết vững mạnh Công ty được cơ cấu và tổ chức thành các “Khối - phòng ban” theo từng chức năng, dưới các “Khối - phòng ban” là các bộ phận chuyên biệt hoạt động chuyên trách theo các nhiệm vụ cụ thể trong các hoạt động thường ngày.
- Giám đốc: Nguyễn Đức Ngọc.
- Phó giám đốc: Nguyễn Việt Dũng.
- Phụ trách khối kinh doanh: Lê Trần Trung
- Phụ trách khối Văn phòng: Nguyễn Thu Hằng
- Phụ trách khối Công nghệ: Nguyễn Việt Dũng
Hình 1: Sơ đồ bộ máy quản lý công ty
1.6 Chức năng, nhiệm vụ của từng phòng ban trong công ty Unicorn Studio. 1.6.1 Chức năng và nhiệm vụ của các phòng ban.
Là đội ngũ lãnh đạo và là các thành viên sáng lập ra công ty, chịu trách nhiệm quyết định và điều hành mọi hoạt động của công ty Với giám đốc là người phụ trách điều hành doanh nghiê ›p theo mục tiêu, tầm nhìn và các giá trị cốt lõi vốn có của doanh nghiê ›p Giám đốc còn là người tổng hợp dữ liê ›u và đưa ra các quyết định chiến lược cho công viê ›c kinh doanh ngắn hạn và dài hạn của công ty và chịu trách nhiê ›m cho kết quả kinh doanh này.
Phòng marketing: Triển khai chương trình phát triển sản phẩm mới Xác định phân khúc thị trường, mục tiêu và định vị thương hiệu Xây dựng và triển khai chiến lược Marketing Quan hệ với báo chí truyền thông.
Phòng dự án: Tìm kiếm và khai thác dự án Xây dựng hồ sơ năng lực và chuẩn bị các hồ sơ, tài liệu khác Thực hiện những thủ tục cần thiết để thực hiện dự án. Quản lý quá trình thực hiện dự án Nghiệm thu, bàn giao dự án Đánh giá kết quả hoàn thành dự án Nghiên cứu, phát triển thị trường.
Phòng phát triển phần mềm: Chuyển nhu cầu của người dùng hoặc mục tiêu tiếp thị thành một sản phẩm phần mềm Phát triển phần mềm đôi khi được hiểu là sự bao gồm các quá trình của ký sư phần mềm cộng với sự nghiên cứu và các mục tiêu tiếp thị phần mềm để phát triển những sản phẩm phần mềm máy tính.
Phòng kiểm thử phầm mềm: Được tiến hành để cung cấp cho các bên liên quan thông tin về chất lượng của sản phẩm được kiểm thử Kiểm thử có thể cung cấp cho doanh nghiệp một quan điểm, một cách nhìn độc lập về phần mềm để từ đó cho phép đánh giá và thấu hiểu được những rủi ro trong quá trình triển khai phần mềm. Phòng hỗ trợ - triển khai: Là đơn vị triển khai tới khách hàng đồng thời hỗ trợ khách hàng sau bán hàng.
Phòng thiết bị công nghệ: Có trách nhiệm nghiên cứu các sản phẩm công nghệ mới trên thị trường của các hãng, làm việc với các hãng (đơn vị cung cấp thiết bị,công nghệ) về quy trình, yêu cầu kỹ thuật, tính bản quyền và dịch vụ hỗ trợ sau bán hàng cũng như các cập nhật công nghệ trong tương lai Xây dựng kế hoạch chuyển giao công nghệ để là đầu mối cung cấp thông tin cần thiết cho Khối kinh doanh và khối công nghệ nắm bắt và triển khai công việc trong phòng
Phòng nhân sự, công đoàn: Lập kế hoạch nhân sự của Công ty Các quy định nội bộ quản lý nhân sự, và các quy định về chế độ, chính sách đối với người lao động BHXH, BHYT, BHTN, các chính sách xã hội khác
Phòng tài chính kế toán: Quản lý tài chính, thực hiện đúng, đầy đủ nghĩa vụ tài chính, thuế với Nhà nước Thực hiện công tác hạch toán kế toán, lập các báo cáo tài chính và quản lý hướng dẫn công tác hạch toán kế toán trong Công ty.
Phòng quản lý chất lượng: Chịu trách nhiệm chung cho công tác quản lý chất lượng, đảm bảo chu trình vận hành dự án sản phẩm và dịch vụ mà tổ chức cung cấp phù hợp với mục đích và đáp ứng được các yêu cầu bên trong và bên ngoài.
1.6.2 Mối quan hệ giữa các bộ phận quản lý
Giữa các phòng ban có mối quan hệ hỗ trợ qua lại, hợp tác giúp đỡ nhau hoàn thành tốt các công việc của công ty.
Lĩnh vực hoạt động chủ yếu của doanh nghiệp
Kể từ khi thành lập từ 2021 đến nay, công ty tập trung phát triển các sản phẩm game online trực tuyến Tham gia phát triển các dự án NFT, Blockchain, Metaverse, truyền thông và phát hành tiền số.
Ngoài ra trong công ty cũng có tham gia các hoạt động outsourcing để phát triển các dự án liên quan đến lĩnh vực IT, cho các khách hàng liên quan đến các lĩnh vực: tài chính, blockchain, metaverse, thực tế ảo, thực tế tang cường, y tế, giáo dục,giải trí, điện ảnh, kiểm thử và truyền thông.
Mục tiêu và định hướng phát triển của công ty
- Tạo nên sản phẩm có giá trị cho xã hội.
- Đóng góp cho sự phát triển công nghệ 4.0.
- Thực hiện nghĩa vụ thuế với nhà nước đầy đủ.
- Xây dựng mối liên hệ cùng cộng đồng kinh doanh.
Về định hướng phát triển: 9 giai đoạn
- Giai đoạn 1: Xây dựng đội ngũ công ty – văn hóa doanh nghiệp (03 tháng).
- Giai đoạn 2: Thu hút cộng đồng chung sức tạo tiền đề vững mạnh, lấy cộng đồng làm giá trị cốt lõi để phát triển nguồn lực về con người truyền thông và tài chính (Dự kiến 18 tháng).
- Giai đoạn 3: Truyền thông quảng cáo các dự án nội tại của công ty và truyền thông các dự án theo hợp đồng kinh tế ký kết (Dự kiến 20 tháng).
- Giai đoạn 4: Hoạch định kinh tế và chia cổ tức cho các thành viên tham gia tại GĐ 2 của công ty (Dự kiến 35 tháng).
- Giai đọạn 5: Đưa công ty trở thành công ty đại chúng với mức vốn hóa 1 tỷ USD (Dự kiến sau 37 tháng).
- Giai đoạn 6: Thu hút nguồn lực vốn từ các nhà đầu tư ‘thiên thần” có các tổ chức ngoài (Dự kiến sau 40 tháng).
- GĐ 7 - GĐ 8 – GĐ 9: Đưa công ty trở thành tập đoàn truyền thông toàn cầu(Dự kiến sau 120 tháng).
Cơ cấu tổ chức của công ty Unicorn Studio
Công ty Unicorn Studio với đội ngũ quản lý và nhân viên trẻ tuổi đầy nhiệt huyết và năng động – với một tập thể đoàn kết vững mạnh Công ty được cơ cấu và tổ chức thành các “Khối - phòng ban” theo từng chức năng, dưới các “Khối - phòng ban” là các bộ phận chuyên biệt hoạt động chuyên trách theo các nhiệm vụ cụ thể trong các hoạt động thường ngày.
- Giám đốc: Nguyễn Đức Ngọc.
- Phó giám đốc: Nguyễn Việt Dũng.
- Phụ trách khối kinh doanh: Lê Trần Trung
- Phụ trách khối Văn phòng: Nguyễn Thu Hằng
- Phụ trách khối Công nghệ: Nguyễn Việt Dũng
Hình 1: Sơ đồ bộ máy quản lý công ty
Chức năng, nhiệm vụ của từng phòng ban trong công ty
Là đội ngũ lãnh đạo và là các thành viên sáng lập ra công ty, chịu trách nhiệm quyết định và điều hành mọi hoạt động của công ty Với giám đốc là người phụ trách điều hành doanh nghiê ›p theo mục tiêu, tầm nhìn và các giá trị cốt lõi vốn có của doanh nghiê ›p Giám đốc còn là người tổng hợp dữ liê ›u và đưa ra các quyết định chiến lược cho công viê ›c kinh doanh ngắn hạn và dài hạn của công ty và chịu trách nhiê ›m cho kết quả kinh doanh này.
Phòng marketing: Triển khai chương trình phát triển sản phẩm mới Xác định phân khúc thị trường, mục tiêu và định vị thương hiệu Xây dựng và triển khai chiến lược Marketing Quan hệ với báo chí truyền thông.
Phòng dự án: Tìm kiếm và khai thác dự án Xây dựng hồ sơ năng lực và chuẩn bị các hồ sơ, tài liệu khác Thực hiện những thủ tục cần thiết để thực hiện dự án. Quản lý quá trình thực hiện dự án Nghiệm thu, bàn giao dự án Đánh giá kết quả hoàn thành dự án Nghiên cứu, phát triển thị trường.
Phòng phát triển phần mềm: Chuyển nhu cầu của người dùng hoặc mục tiêu tiếp thị thành một sản phẩm phần mềm Phát triển phần mềm đôi khi được hiểu là sự bao gồm các quá trình của ký sư phần mềm cộng với sự nghiên cứu và các mục tiêu tiếp thị phần mềm để phát triển những sản phẩm phần mềm máy tính.
Phòng kiểm thử phầm mềm: Được tiến hành để cung cấp cho các bên liên quan thông tin về chất lượng của sản phẩm được kiểm thử Kiểm thử có thể cung cấp cho doanh nghiệp một quan điểm, một cách nhìn độc lập về phần mềm để từ đó cho phép đánh giá và thấu hiểu được những rủi ro trong quá trình triển khai phần mềm. Phòng hỗ trợ - triển khai: Là đơn vị triển khai tới khách hàng đồng thời hỗ trợ khách hàng sau bán hàng.
Phòng thiết bị công nghệ: Có trách nhiệm nghiên cứu các sản phẩm công nghệ mới trên thị trường của các hãng, làm việc với các hãng (đơn vị cung cấp thiết bị,công nghệ) về quy trình, yêu cầu kỹ thuật, tính bản quyền và dịch vụ hỗ trợ sau bán hàng cũng như các cập nhật công nghệ trong tương lai Xây dựng kế hoạch chuyển giao công nghệ để là đầu mối cung cấp thông tin cần thiết cho Khối kinh doanh và khối công nghệ nắm bắt và triển khai công việc trong phòng
Phòng nhân sự, công đoàn: Lập kế hoạch nhân sự của Công ty Các quy định nội bộ quản lý nhân sự, và các quy định về chế độ, chính sách đối với người lao động BHXH, BHYT, BHTN, các chính sách xã hội khác
Phòng tài chính kế toán: Quản lý tài chính, thực hiện đúng, đầy đủ nghĩa vụ tài chính, thuế với Nhà nước Thực hiện công tác hạch toán kế toán, lập các báo cáo tài chính và quản lý hướng dẫn công tác hạch toán kế toán trong Công ty.
Phòng quản lý chất lượng: Chịu trách nhiệm chung cho công tác quản lý chất lượng, đảm bảo chu trình vận hành dự án sản phẩm và dịch vụ mà tổ chức cung cấp phù hợp với mục đích và đáp ứng được các yêu cầu bên trong và bên ngoài.
1.6.2 Mối quan hệ giữa các bộ phận quản lý
Giữa các phòng ban có mối quan hệ hỗ trợ qua lại, hợp tác giúp đỡ nhau hoàn thành tốt các công việc của công ty.
Giữa các phòng ban và lãnh đạo công ty có mối quan hệ lãnh đạo trực tiếp.Tuy nhiên giám đốc là người luôn quan tâm và lắng nghe những yêu cầu đề xuất cũng như sự tham gia, góp ý của công nhân viên Mối quan hệ qua lại này giúp cho công việc được giải quyết một cách nhanh chóng, tạo được môi trường làm việc thân thiện.
NỘI DUNG THỰC TẬP
Lý do lựa chọn chủ đề và lĩnh vực thực tập
Trong thời đại công nghệ như hiện nay, sản phẩm công nghệ ngày càng chịu nhiều đánh giá khắt khe từ phía người dung, đặc biệt là các sản phẩm Game nhận được rất nhiều sự đánh giá từ các Game Thủ, và những người bình thường Nghành công nghiệp Game hiện nay có thể nói là bùng nổ, với tốc độ phát triển chóng mặt, rất nhiều Game phát triển và nổi tiếng và hướng đến mọi đối tượng người dung từ trẻ em cho đến người lớn tuổi Với nhiều lĩnh vực có thể áp dụng từ Y tế, đến giáo dục và giải trí và làm việc hàng ngày, đều có thể áp dụng và sử dụng đến.
Cùng với sợ lớn mạnh như vũ bảo của công nghệ và giải trí ngày càng cao, từ việc áp dụng tài chính blockchain cho đến việc giải trí, lập trình game là công việc phát triển tạo ra nhiều khía cạnh sáng tạo Đây là một công việc đòi hỏi kiến thức lập trình và có thể áp dụng được các kiến thức đã học trên ghế nhà trường Vì vậy em đã chọn thực tập tại một công ty phát triển Game.
2.1.1 Giới thiệu về phòng Phát triển phần mềm.
Phòng phát triển phần mềm được làm việc trực tiếp dưới sự quản lý của phó giám đốc công ty và cũng là người phụ trách khối công nghệ Phòng có nhiệm vụ chính là phụ trách các công việc: phân tích, nghiên cứu và phát triển các phần mềm, game theo yêu cầu của khách hàng hoặc ban lãnh đạo công ty.
2.1.2 Mô hình tổ chức của phòng Phát triển phần mềm.
Phòng phát triển phần mềm gồm 50 thành viên, gồm các thành viên trong các nhóm làm việc phụ trách từng mảng trong các lĩnh vực liên quan đến phát triển phần mềm: “Game Developer”, “Artist designer”, “Front-end developer”, “Back- end developer” được bố trí thành các nhóm nhỏ, mỗi nhóm có từ 1 đến 5 thành viên,mỗi nhóm sẽ phụ trách một sản phẩm của khách hang Các nhóm sẽ có một Leader hoặc Scum Master (Tuỳ mô hình mà dự án sẽ áp dụng), là người đứng đầu nhóm phụ trách hỗ trợ các thành viên trong nhóm trong các công việc hang ngày, đồng thời cũng là người phụ trách báo cáo các rủi ro và các vấn đề phát sinh cho người phụ trách khối công nghệ và ban giám đốc.
2.1.3 Chức năng nhiệm vụ của phòng Phát triển phần mềm.
Phòng phát triển phần mềm của công ty Unicorn Studio có các chức năng và nhiệm vụ chính như sau:
- Vận hành các dự án theo yêu cầu của ban giám đốc.
- Phân tích, bóc tách các yêu cầu của khách hàng.
- Đưa ra các ướng lượng về các yêu cầu của khách hàng.
- Nghiên cứu các công nghệ mới phù hợp với thị trường.
- Đưa ra các đề xuất phù hợp với yêu cầu của khách hàng.
- Thực hiện dự án theo yêu cầu của khách hàng.
- Xử lý các lỗi được đưa về từ phòng kiểm thử.
- Tạo CI/CD để thực hiện các flow trong dự án.
- Hỗ trợ “deploy” (triển khai) trong giai đoạn phát triển.
- Viết tài liệu “basic design” và “detail design” theo yêu cầu khách hang.
Nội dung thực tập
Trong thời gian thực tập tại công ty Unicorn Studio, do là một công Studio, nên đa phần các dự án của công ty đều là phát triển game cho khách hàng.
Vì vậy em đã được tham gia trực tiếp vào các dự án game, trong quá trình tham gia thực tập tại phòng phát triển phần mềm của công ty Hiện trong quá trình thực tập tại phòng phát triển phần mềm, phòng em đã nhận dự án xây dựng một mini game
“Space War” theo đơn đặt hàng của khách hàng, với yêu cầu: trò chơi có thể chạy được trên các nền tảng Android, iOS, PC, MacOS, WebGL Vì vậy em đã lựa chọn sử dụng UnityEngine với ngôn ngữ C# để tìm hiểu và thực hiện trong quán trình thực tập lần này với chủ đề: Space War.
C# là ngôn ngữ lập trình hướng đối tượng đa năng, mạnh mẽ được phát triển bởi Microsoft, C# là phần khởi đầu kế hoạch NET của họ Microsoft phát triển C# dựa trên C++ và Java C# được miêu tả là ngôn ngữ có được sự cân bằng giữa C++,
Visual Basic, Delphi và Java C# được thiết kế bởi Anders Hejsberg, kiến trúc sư phần mền nổi tiếng với các sản phẩm Turbo Pascal, Delphi, J++, WFC Phiên bản gần đây nhất là 9.0, được phát hành vào năm 2020 cùng với Visual Studio 2019 phiên bản 16.8.
C# là một trong những ngôn ngữ lập trình phổ biến nhất thế giới Với sự kết hợp của dotnet, hỗ trợ chạy đa nền tảng từ Linux, MacOS, Windows Hỗ trợ để phát triển các ứng dụng đa dạng và phong phú: Web, Mobile, Desktop, Microservices, Cloud, Marchine Learning, Game development, Internet of Things. Đặc trưng cơ bản của C#
- Đơn giản: Đặc trưng đầu tiên của C# là loại bỏ những vấn đề phức tạo đã có trong Java và C++ như macro, template, tính đa kế thừa, lớp cơ sở ảo (hay còn gọi virtual base class) Các cú pháp, toán tử, biểu thức và cả tính năng của C# khá tương đương Java và C++ song đã qua cải tiến nên đơn giản hơn nhiều.
- Hiện đại: C# sở hữu nhiều khả năng như xử lý ngoại lệ, tự động trong thu gom bộ nhớ, bảo mật mã nguồn, dữ liệu mở rộng Đây là tất cả những đặc điểm được mong chờ ở một ngôn ngữ lập trình hiện đại
- Hướng đối tượng: C# là một trong những ngôn ngữ được đánh giá là thuần hướng đối tượng Nó sở hữu cả 4 tính chất quan trọng, đặc trưng là tính kế thừa, tính đóng gói, tính trừu tượng và tính đa hình.
- Ít từ khóa: Một trong những đặc trưng cơ bản của C# là ít từ khóa Từ khóa được dùng trong ngôn ngữ này chỉ nhằm mục đích mô tả thông tin Tuy ít từ khóa song C# vẫn rất mạnh mẽ Lập trình viên có thể sử dụng nó để thực hiện mọi nhiệm vụ
- Mã nguồn mở: C# là một trong những ngôn ngữ lập trình mã nguồn mở, được phát triển, điều hành một cách độc lập với Microsoft Đây là một trong những nét độc đáo khiến ngôn ngữ này được biết đến và ưa chuộng rộng rãi.
- Đa nền tảng: C# là ngôn ngữ được sử dụng trong lập trình trên nhiều nền tảng Các ứng dụng hoặc website được xây dựng bằng ngôn ngữ này có thể hoạt động tốt trên nhiều nền tảng như Windows, Linux và Mac.
- Tiến hóa: C# vẫn đang được nâng cấp và cho ra mắt các phiên bản mới với nhiều tính năng vượt trội và khả năng làm việc mạnh mẽ hơn Hiện C# có thể làm việc với console, điện toán đám mây, phần mềm học máy
Unity là một game engine đa nền tảng được phát triển bởi Unity Technologies, mà chủ yếu để phát triển video game cho máy tính, console và điện thoại Lần đầu tiên nó được công bố chạy trên hệ điều hành OSX, tại Apple’s Worldwide Developers Conference vào năm 2005, đến nay đã mở rộng lên 27 nền tảng. Unity hỗ trợ đồ hoạ 2D và 3D, các chức năng được chủ yếu qua ngôn ngữ C# sử dụng Mono Class Library Unity Engine là một bộ thư viện APIs hỗ trợ xử lý nhắm mục tiêu đồ hoạ các APIs: Direct3D trên Windows và Xbox One; OpenGL trên Linux, macOS và Windows; OpenGL ES trên Android và iOS; WebGL trên Web; và các APIs độc quyền trên các dòng máy chơi game cầm tay Ngoài ra Unity hỗ trợ các APIs cấp thấp như Metal trên iOS và MacOS và Vulken trên Android,Linux, Windows, cũng như Direct3D 12 trên Windows và Xbox One Trong 2D game, Unity cho phép ghép các sprites và một renderer material Đối với 3D game,Unity cho phép thiết lập các texture độ phân giải cao, cung cấp các hỗ trợ bump mapping, reflection mapping, parallax mapping, ambient occlusion, các hiệu ứng đổ bóng bằng cách sử dụng shadow maps, render thiết lập toàn cảnh đến các hiệu ứng.
Unity cũng cung cấp các dịch vụ cho nhà phát triển, bao gồm: Unity Ads, Unity Analytics, Unity Certification, Unity Cloud Build, Unity Everyplay, Unity API, Unity Multiplayer, Unity Performance Reporting and Unity Collaborate. Unity nổi bật với khả năng xây dựng trò chơi chạy trên nhiều nền tảng Các nền tảng được hỗ trợ hiện nay là: Android, Android TV, Facebook Gameroom, Fire
GIỚI THIỆU VỀ GAME SPACE WAR
Cấu hình tối thiểu
- Hệ điều hành: Android, iOS, PC, MacOS.
- Card đồ họa: 256 MB VRAM
Hình 15: Sơ đồ use case
3.3.1 Bố trí thư mục game
3.3.2 Một số file quan trọng
Nhận và xử lý dữ liệu từ bàn phím, chuột, tay cầm…
Di chuyển nhân vật trong trò chơi.
Xác định va chạm của phi thuyền.
Xử lý UI cho thanh thể lực
Xử lý flow game khi người chơi bị thua.
Xử lý đạn cho người chơi
Xử lý đạn cho đối thủ
Xác định va chạm của đạn và enemy, người chơi.
Quản lý việc spawner enemy.
Xác định enemy đi ra khởi vùng chơi.
Xác định tốc độ di chuyển của đối thủ.
Xác định tầm bắn, khoảng cách bắn đạn của đối thủ. Enemy tìm người chơi và bắn.
3.3.3 Một số class quan trọng.
Người chơi di chuyển phi thuyền dựa trên input.
Quản lý máu của phi thuyền người chơi và đối thủ
Năm 2136 con người đã phát hiện ra một loại đá có thể thay thế cho toàn bộ những nhiên liệu khác Nó có thể thay thế cho điện, pin, xăng, gas… Đặc biệt loại đá này có thể tồn tại mãi mãi và nó không gây ảnh hưởng đến môi trường Loại đá này được gọi với đá năng lượng Đá năng lượng khiến những phương tiện di chuyển như ô tô, xe máy, máy bay… có thể sử dụng mãi mãi mà không lo đến việc hết nhiên liệu Khi sử dụng đá năng lượng để thay thế điện thì không bao giờ lo đến hiện tượng mất điện, cháy, nổ… nữa Đặc biệt mọi đồ vật sử dụng nhiên liệu là đá năng lượng thì không bao giờ bị hỏng nên cũng chẳng phải bảo trì và sửa chữa chúng. Đá năng lượng
Kể từ khi Đá năng lượng được phát hiện thì công nghệ cũng theo đó mà phát triển rất nhanh Chỉ trong vòng 5 năm, con người đã đạt được rất nhiều thành tựu về khoa học, kỹ thuật Việc du hành không gian giờ đã trở nên quá dễ dàng, người ta có thể đi du lịch từ hành tinh này ra hành tinh khác với giá cả rất phải chăng, việc buôn bán xuyên không gian cũng giúp trái đất phát triển hơn rất nhiều.
Lúc này con người tạo ra một chiến hạm bên ngoài trái đất với một hệ thống trí tuệ nhân tạo hiện đại nhất để bảo vệ trái đất khỏi những nguy hiểm tử ngoài vũ trụ muốn đánh cắp đá năng lượng và bảo vệ trái đất cũng như các hành tinh khác.
Chiếm hạm bảo vệ trái đất từ xa
Hình 21: Chiến hạm bảo vệ trái đất từ xa
Tuy nhiên sau hơn một năm được đưa vào hoạt động, hệ thống trí tuệ nhân tạo của nó đã phát triển vượt quá tính toán của con người Dẫn đến nó không còn muốn máy móc phục vụ con người nữa mà là con người phục vụ máy móc Nó đã tạo ra rất nhiều chiến hạm khác và thiên thạch nhân tạo để xâm chiếm trái đất, đoạt lấy đá năng lượng Lúc này con người phải cử quân đội để phá hủy “Chiến hạm bảo vệ trái đất từ xa” tạo nên một cuộc chiến không gian là Space War.
Các chiến hạm của địch
Hình 22: Các chiến hạm của địch
-Những người muốn chơi game để giải trí sau những giờ làm việc và học tập căng thẳng.
-Khi đường truyền mạng đang gặp trục trặc thì có thể chơi game để đợi đường truyền mạng được khắc phục.
-Chơi với bạn bè và đồng nghiệp để giải trí.
Giao diện chính của trò chơi
Hình 2: Hiệu ứng cháy nổ khi bắn bổ mục tiêu.
Hiệu quả của vật phẩm tăng sức mạnh
Hình 3: Hiệu quả của vật phẩm tăng sức mạnh
Hình 4: Giao diện Game Pause
Người chơi cần tiêu diệt tàu địch, tránh đạn từ tàu địch và tránh va vào tàu địch, thiên thạch Tiêu diệt được càng nhiều tàu địch và thiên thạch thì điểm của người chơi càng cao Số điểm người chơi nhận được phụ thuộc vào kích cỡ của thiên thạch và tàu địch Tiệu diệt được thiên thạch, tàu có kích thước lớn thì sẽ được nhiều điểm hơn thiên thạch nhỏ và tàu nhỏ.
Mỗi khi bắn hạ tàu địch, thiên thạch thì sẽ có một tỷ lệ nhất định rơi ra vật phẩm hỗ trợ để người chơi hồi máu, tăng sức mạnh… Còn khi gặp tàu tiếp tế thì tỷ lệ nhận được vật phẩm hỗ trợ là 100%.
Một số lưu ý về vật phẩm hỗ trợ:
Vật phẩm hồi máu sẽ hồi một lượng máu ngẫu nhiên từ 20 đến 50. Vật phẩm hồi máu sẽ không có tác dụng khi người chơi đang đầy máu. Vật phẩm tăng sức mạnh sẽ mất tác dụng nếu người chơi bị mất máu sau khi được tăng sức mạnh.
Vật phẩm tăng sức mạnh sẽ không có tác dụng khi sức mạnh người chơi đã ở mức tối đa.
Dữ liệu game
3.3.1 Bố trí thư mục game
3.3.2 Một số file quan trọng
Nhận và xử lý dữ liệu từ bàn phím, chuột, tay cầm…
Di chuyển nhân vật trong trò chơi.
Xác định va chạm của phi thuyền.
Xử lý UI cho thanh thể lực
Xử lý flow game khi người chơi bị thua.
Xử lý đạn cho người chơi
Xử lý đạn cho đối thủ
Xác định va chạm của đạn và enemy, người chơi.
Quản lý việc spawner enemy.
Xác định enemy đi ra khởi vùng chơi.
Xác định tốc độ di chuyển của đối thủ.
Xác định tầm bắn, khoảng cách bắn đạn của đối thủ. Enemy tìm người chơi và bắn.
3.3.3 Một số class quan trọng.
Người chơi di chuyển phi thuyền dựa trên input.
Quản lý máu của phi thuyền người chơi và đối thủ
Cốt truyện
Năm 2136 con người đã phát hiện ra một loại đá có thể thay thế cho toàn bộ những nhiên liệu khác Nó có thể thay thế cho điện, pin, xăng, gas… Đặc biệt loại đá này có thể tồn tại mãi mãi và nó không gây ảnh hưởng đến môi trường Loại đá này được gọi với đá năng lượng Đá năng lượng khiến những phương tiện di chuyển như ô tô, xe máy, máy bay… có thể sử dụng mãi mãi mà không lo đến việc hết nhiên liệu Khi sử dụng đá năng lượng để thay thế điện thì không bao giờ lo đến hiện tượng mất điện, cháy, nổ… nữa Đặc biệt mọi đồ vật sử dụng nhiên liệu là đá năng lượng thì không bao giờ bị hỏng nên cũng chẳng phải bảo trì và sửa chữa chúng. Đá năng lượng
Kể từ khi Đá năng lượng được phát hiện thì công nghệ cũng theo đó mà phát triển rất nhanh Chỉ trong vòng 5 năm, con người đã đạt được rất nhiều thành tựu về khoa học, kỹ thuật Việc du hành không gian giờ đã trở nên quá dễ dàng, người ta có thể đi du lịch từ hành tinh này ra hành tinh khác với giá cả rất phải chăng, việc buôn bán xuyên không gian cũng giúp trái đất phát triển hơn rất nhiều.
Lúc này con người tạo ra một chiến hạm bên ngoài trái đất với một hệ thống trí tuệ nhân tạo hiện đại nhất để bảo vệ trái đất khỏi những nguy hiểm tử ngoài vũ trụ muốn đánh cắp đá năng lượng và bảo vệ trái đất cũng như các hành tinh khác.
Chiếm hạm bảo vệ trái đất từ xa
Hình 21: Chiến hạm bảo vệ trái đất từ xa
Tuy nhiên sau hơn một năm được đưa vào hoạt động, hệ thống trí tuệ nhân tạo của nó đã phát triển vượt quá tính toán của con người Dẫn đến nó không còn muốn máy móc phục vụ con người nữa mà là con người phục vụ máy móc Nó đã tạo ra rất nhiều chiến hạm khác và thiên thạch nhân tạo để xâm chiếm trái đất, đoạt lấy đá năng lượng Lúc này con người phải cử quân đội để phá hủy “Chiến hạm bảo vệ trái đất từ xa” tạo nên một cuộc chiến không gian là Space War.
Các chiến hạm của địch
Hình 22: Các chiến hạm của địch
Đối tượng người chơi
-Những người muốn chơi game để giải trí sau những giờ làm việc và học tập căng thẳng.
-Khi đường truyền mạng đang gặp trục trặc thì có thể chơi game để đợi đường truyền mạng được khắc phục.
-Chơi với bạn bè và đồng nghiệp để giải trí.
Giao diện game
Giao diện chính của trò chơi
Hình 2: Hiệu ứng cháy nổ khi bắn bổ mục tiêu.
Hiệu quả của vật phẩm tăng sức mạnh
Hình 3: Hiệu quả của vật phẩm tăng sức mạnh
Hình 4: Giao diện Game Pause
Cách chơi
Người chơi cần tiêu diệt tàu địch, tránh đạn từ tàu địch và tránh va vào tàu địch, thiên thạch Tiêu diệt được càng nhiều tàu địch và thiên thạch thì điểm của người chơi càng cao Số điểm người chơi nhận được phụ thuộc vào kích cỡ của thiên thạch và tàu địch Tiệu diệt được thiên thạch, tàu có kích thước lớn thì sẽ được nhiều điểm hơn thiên thạch nhỏ và tàu nhỏ.
Mỗi khi bắn hạ tàu địch, thiên thạch thì sẽ có một tỷ lệ nhất định rơi ra vật phẩm hỗ trợ để người chơi hồi máu, tăng sức mạnh… Còn khi gặp tàu tiếp tế thì tỷ lệ nhận được vật phẩm hỗ trợ là 100%.
Một số lưu ý về vật phẩm hỗ trợ:
Vật phẩm hồi máu sẽ hồi một lượng máu ngẫu nhiên từ 20 đến 50. Vật phẩm hồi máu sẽ không có tác dụng khi người chơi đang đầy máu. Vật phẩm tăng sức mạnh sẽ mất tác dụng nếu người chơi bị mất máu sau khi được tăng sức mạnh.
Vật phẩm tăng sức mạnh sẽ không có tác dụng khi sức mạnh người chơi đã ở mức tối đa.
Ý NGHĨA VÀ KẾT QUẢ KIẾN THÚC THU ĐƯỢC
Ý nghĩa trong quá trình thực tập
Sau hơn một tháng thực tập ở Công ty Unicorn Studio em đã được giao nhiệm vụ nghiên cứu và phát triển game Space War cho khách hang với việc sử dụng game engine Unity cùng ngôn ngữ C#.
Bước đầu tìm hiểu về C# và Unity Engine em đã gặp rất nhiều khó khăn trong việc tìm tài liệu và xây dựng kiến trúc cho game vì tài liệu về Unity3D đa phần toàn bằng tiếng Anh Sau khoảng bốn tuần tìm tòi và học hỏi thì em cũng đã có thể hoàn thành được game Space War gần hoàn chỉnh cho khách hang và cũng để phục vụ cho báo cáo thực tập tốt nghiệp cũng như định hướng cho khóa luận tốt nghiệp sau khi hết thời gian thực tập tốt nghiệp bắt tay vào làm khóa luận tốt nghiệp Trong thời gian thực tập em cũng có một số vấn đề đạt được và chưa đạt được.
Kết quả
Các kết quả đạt được:
Hiểu được cấu trúc cơ bản, cách hoạt động và các tính năng chính của Unity Engine và cách phát triển game.
Nâng cao được kiến thức lập trình và tiếng anh chuyên ngành thông qua những tài liệu và video hướng dẫn về C# và Unity.
Load được hình ảnh và âm thanh từ bên ngoài để tạo nên được các hiệu ứng âm thanh, nhạc nề và các chuyển động trong game.
Thiết lập các thuộc tính cho những đối tượng của game: Máu của người chơi, tốc độ di chuyển của người chơi, tốc độ di chuyển của đối thủ, tốc độ bắn của người chơi…
Do kiến thức về C# và Unity Engine còn nghèo nàn nên game của em còn nghèo nàn về tính năng.
Chưa xây dựng được một game hoàn chỉnh theo ý muốn.
Sắp xếp các đoạn code còn lộn xộn.
Em đã vận dụng được các kiến thức em đã học được trong trường vào việc triển khai một dự án cụ thể trong đợt thực tập tại doanh nghiệp này. Được sự chỉ dạy tận tình của thầy, cô và bạn bè.
Không cần phải xây dựng lại nhiều chức năng để lập trình game vì Unity Engine cung cấp khá đầy đủ.
Tài liệu tham khảo trên Internet rất nhiều
C# là ngôn ngữ lập trình mới đối với em nên khi bắt tay vào làm thì em khá bỡ ngỡ.
Tài liệu tham khảo nhiều nhưng để tìm ra tài liệu phù hợp thì khá là khó. Kinh nghiệm rút ra
Phải biết sắp xếp thời gian một cách hợp lý thì sẽ không gặp nhiều khó khăn. Nên kết hợp giữa việc hỏi người khác và tra cứu tài liệu.
Phải biết phân chia kế hoạch một cách phù hợp, tránh trước hợp một cái thì tốt còn một cái thì tệ.
4.3 Định hướng làm đề tài luận sau khi đi thực tập tại doanh nghiệp.
Tiếp tục dành thời gian để phát triển và hoàn thiện dự án Space War.
Hướng phát triển trong tương lai:
Thêm nhiều màn chơi với độ khó tăng dần.
Tạo thêm nhiều vật phẩm hỗ trợ mới như: Bất tử 5s, phản đòn, ngưng thời gian…
Thêm tính năng save/ load game.
Định hướng làm đề tài sau khi đi thực tập tại doanh nghiệp
1 Learn C# in One Day and Learn It Well – Jamie Chan.
2 Unity Game Development in 24 hours – Mike Geig.
3 Mutiplatform Game Development in C# – Joe Hocking and Jesse Schell.
4 Developing 2D Game with Unity – Jared Halpern.
5 Unity From Zero to Proficiency (Foundations) – Patrick Felicia.
6 Unity 2020 by Example – Robert Wells.
7 Pro Unity Game Development 1 Edition – Alan Thorn st