Giới thiệu về 3D game studio ************************************************************* 1.Giới thiệu chung: 3D game studio là engine làm game do hãng Conitec GmbH sản xuất từ năm 1997, và với thế mạnh vượt trội của mình, engine này đã đứng vào Top các engine sản xuất với mục đích hướng tới giới không chuyên làm game. 2.Lời nói đầu: Trước tiên, tôi xin khẳng định là mình không phải là người đã am hiểu hết về 3d game studio, tuy nhiên nói về căn bản thì tôi cũng nắm kha khá. Tôi viết bài viết này hi vọng sẽ mang lại những đề tài mới cho box make game, vì theo tôi, Rpg maker 2003, XP, hay Game maker mặc dù là những phần mềm rất mạnh, nhưng dường như đề tài về chúng đã hơi “nhàm”, suốt mấy năm nay, chúng ta đã có hàng trăm bài viết xoay quanh các chủ đề ấy rồi. Hi vọng với 3d game studio, các bạn sẽ hài lòng khi sử dụng, đồng thời, tôi cũng muốn kêu gọi những mem kì cựu trong box kể cả những người đã biết hay chưa biết đều nghiên cứu và đóng góp cho làn gió mới này. Mọi liên hệ xin gửi về hòm thư [email protected]. 3.Những điều khác của 3d game studio với RPGMXP và GM: Với 3d game studio, các bạn sẽ tiếp xúc với một engine rất khác với các phần mềm make game trước, không chỉ vì đây là engine game 3d, mà còn vì tính chuyên nghiệp cao của nó. Nếu bạn hi vọng có thể làm một game hoàn chỉnh trong thời gian ngắn và được hỗ trợ một thư viện đồ hoạ và tập hàm trong phần script như RPGM thì nên suy nghĩ lại. Khi sử dụng 3d game studio các bạn sẽ phải làm quen với khái niệm “bắt đầu từ 2 bàn tay trắng”. Còn với GM, 3d game studio sẽ chứng tỏ cho bạn thấy tính vượt trội về mọi mặt, từ sức mạnh hình ảnh tới tính chuyên nghiệp cao. Có thể trước đây bạn mơ ước làm một game FPS như counterstrike nhưng quá nan giải và phức tạp với GM, thì giờ đây, đó không còn là vấn đề lớn nữa. 4.Khó khăn: Đương nhiên, vì 3d game studio là một engine mạnh và chuyên nghiệp nên không tránh khỏi sự phức tạp khi mới làm quen, nhiều khi với việc học những tập lệnh của nó, bạn sẽ cảm thấy kiệt sức, thêm nữa, việc thiết kế model và level cũng ngốn không ít thời gian và công sức của bạn. Vì thế, tôi muốn nói ngay là nếu bạn không thực sự yêu thích và đam mê việc làm game mà chỉ muốn “làm cho vui” thì đừng tìm hiểu engine này làm gì cho mất thời gian, tôi nói rất thật đấy. Còn nếu bạn thực sự thích tìm hiểu và đi sâu vào công việc make game chuyên nghiệp thì tôi xin khẳng định các bạn sẽ không thất vọng với 3d game studio đâu. 5.Các link cần thiết: Phần này khá là cần thiết, nó sẽ giúp các bạn nghiên cứu một cách thuận tiện và dễ dàng hơn: Link download bản 3dgs version 6.1: http://forum.gamedev.vn/index.php?showtopic=116 6.Cấu trúc của 3D Game Studio: 3dgs gồm 3 phần chính: thiết kế level, thiết kế model và thiết kế script. 3 phần này được tách rời một cách thoải mái và khi cần bạn sẽ kết hợp chúng lại để làm nên một game hoàn chỉnh. 1.Thiết kế Level – WED MFC application: Đây là phần thiết kế các cấu trúc như nhà cửa, đồ vật và nói chung là những cấu trúc “không thể có trí thông minh”, hay nói cụ thể là bạn không thể viết cho chúng các “action”. Nếu trình bày một cách cụ thể về tất cả các công cụ trong WED thì tôi chưa thể, vì thế tôi sẽ trình bày ngắn gọn, đi vào những ý chính, nếu muốn tìm hiểu thêm, các bạn có thể tham khảo trong phần Manual sau khi cài chương trình. 1. Sau khi khởi động WED, các bạn sẽ thấy hiện lên một cửa sổ, bên tay phải là các hình chiếu vật thể cùng với hình ảnh 3d của nó. Bên tay trái là các thống kê về các level. - Các hình chiếu :Top (XY) : hình chiếu từ trên xuống Back (XZ) : hình chiếu nhìn thẳng từ ngoài vào Side (YZ) : hình chiếu nhìn từ trái qua phải 3D view : hình 3d của vật thể - Thống kê:Objects : thống kê toàn bộ các vật thể trong level (bao gồm chi tiết đến từng khối) Textures: thống kê các texture có thể sử dụng trong level Resourse: thống kê phần resourse của level 2. Phần menu: New, open và save : đã quen thuộc Build : dựng level sau khi bạn đã hoàn thành công đoạn thiết kế Run : chạy thử game Select none : không chọn bất kì object nào Select : chọn object (tuỳ chọn) Move : di chuyển object Rotate : quay object theo các hướng Scale : phóng to, thu nhỏ object Vertex move : di chuyển từng điểm trên object Edge move : di chuyển các đoạn thẳng nối các điểm trên object Face move : di chuyển các mặt trên object Add object : đưa các object có sẵn vào, bao gồm đầy đủ các object từ đơn giản đến phức tạp được tạo sẵn ( tất nhiên bạn có thể dựa vào các object này để tạo nên các object phức tạp hơn, lớn hơn) Delete object : xoá object Move eye : dịch chuyển mắt nhìn theo các hướng 1 chiều Rotate eye : xoay mắt nhìn vật thể Zoom eye : phóng to, thu nhỏ tầm nhìn Camera move : dịch chuyển camera theo hướng tuỳ chọn Walk-thru : di chuyển mắt nhìn một cách linh động Scope up & down : quan sát từng phần và toàn phần object 3. Menu chính (các phần quan trọng thôi) File : -map properties: chỉnh sửa các thông số sương mù, ánh sáng mặt trời, nhưng quan trọng hơn cả là phần lựa chọn sử dụng script chính cho toàn bộ màn chơi. -resourse: tổng hợp tất cả resourse của game thành một file duy nhất, cũng giống như encript data trong rpgmaker -publish: xây dựng thành một game hoàn chỉnh với file . exe để thuận tiện chia sẻ cho mọi người chơi (phần này bản trial không có) Object : Phần này như đã nói ở trên, là nơi bạn đưa các object cơ bản hoặc một số đã được tạo sẵn vào trong level, tôi chỉ lưu ý vài điều: -add light : đưa ánh sáng vào level, hiển thị dưới dạng một bóng đèn nhỏ màu vàng, dĩ nhiên, độ sáng và màu sắc có thể chỉnh sửa được trong properties. -add sound : đưa âm thanh vào level, lưu ý là dưới dạng wav -add model, terran : đưa các model, terran mà bạn tạo trong phần MED hoặc các model có sẵn mà 3d game studio hỗ trợ vào màn chơi. (chú ý là các model này đã có mặt trong folder game của bạn) -load entities, sound : đưa các model, sound vào folder game của bạn, từ đó có thể add dễ dàng. Texture : -texture manager: nơi bạn quản lí thư viện texture của mình dưới dạng các file . WAD. 4. Một số giải thích cơ bản: a.Phần build map: -Build level: dựng cả level mà bạn tạo -Build map entity : dựng các model trong màn bạn tạo -Update Entities, texture và light : dựng các model, tex và ánh sáng mà bạn tạo thêm sau khi đã dựng màn trước đó, điều này giúp bạn bớt thời gian dựng lại cả màn. -Visibility calculation, light calculation: thiết lập độ chi tiết cho màn chơi, lưu ý là bạn cần tuỳ theo sức mạnh của máy mình để thiết lập phần này, vì nếu máy yếu, thời gian xây dựng sẽ rất lâu mà ko đem lại hiệu quả như mong muốn. b.Phần map properties: -Fog & sun: tôi sẽ trình bày sau -Main : phần này tôi chỉ nói về Script Đây là nơi để bạn đưa hoạt động cho cả màn bằng script, nói rõ hơn là nhờ các action nằm trong script chính hoặc được liên kết tới script chính. +Sau khi tạo xong màn, đưa nhân vật vô bạn sẽ phải chọn một script chính cho màn này. 3d game studio hỗ trợ bạn một số script chính có sẵn với các action cơ bản, tất nhiên bạn cũng có thể tự viết script cho chính mình vì các script hỗ trợ rất nghèo nàn và chủ yếu mang tính tham khảo. +Để đưa script vô, trong phần script bạn chọn new script, sau đó chọn script mà mình muốn. c.Texture là gì? Tiếc là tôi không phải chuyên gia giải thích nên tôi chỉ có thể nói cơ bản cho bạn là thế này : -Texture cũng như là tấm tranh dán tường vậy, nó giúp các object có một “bộ cánh” khoác ngoài. Gỉa dụ bạn tạo một object dạng khối chữ nhật và muốn nó là bức tường, bạn hãy dùng một texture dạng hoa văn trên tường cho nó, bây giờ bạn lại muốn nó là sàn nhà, hãy dùng texture dạng hoa văn sàn nhà cho nó. -Chính vì vai trò của Texture lớn như vậy nên một game ko thể không có texture, và hình ảnh trong game có đẹp, có thật hay không cũng một phần là do texture. -Làm sao để tạo được một texture trong 3dgs? +Rất đơn giản, bạn vô bất kì phần mềm vẽ tranh nào (PTS, paint…..) và tạo một tranh với kích thước là bội số của 2 (vd: 64*64, 128*128….) và vẽ lên đó những gì bạn thích (ví dụ bạn muốn dùng tex này cho bức tường, hãy vẽ lên đó các viên gạch xếp lên nhau, sau đó màu mè vào cho hợp lí), sau đó save lại dưới dạng .bmp, .pcx, .tga +Bây giờ bạn vào Texture manager > new texture > đặt tên 1 và save vô +Gìơ bạn chọn Texture trên toolbar project > ấn vào 1. wad và chọn add texture, sau đó dẫn tới file.bmp, tga, pcx mà bạn đã chọn, ok xong rồi đó. Sorry đến đây chẳng biết đưa thêm câu hỏi nào nữa, thôi để sau tôi sẽ nói tiếp. 5. Ví dụ về quá trình dựng một level đơn giản: Thí dụ tôi dựng một căn phòng, trong này có bạn và một enemy, hãy chiến đấu để kill enemy này nhé. +Bước 1: Vô WED, chọn new, ok, bạn đã sẵn sàng cho một level mới. +Bước 2: -object > add hollow cube > medium. Ok, trên màn hình đã xuất hiện một hộp vuông với các hình chiếu, ta hãy điều chỉnh cho nó trở thành 1 căn phòng nhé. -Dùng scale để điều chỉnh độ rộng của object bằng cách dùng chuột di chuyển. Chú ý các hình chiếu cho tới khi bạn hài lòng về hình dáng giống như 1 căn phòng. +Bước 3: -Bây giờ đến cái cửa ra vào, bạn hãy tạo một Cube (object > add cube) (lưu ý là cube khác hollow cube ở chỗ cube là một khối còn hollow cube là do 4 khối ghép lại) -Dùng move và scale để điều chỉnh khối cube này nằm xuyên qua một bức tường căn phòng mà bạn tạo lúc nãy (nghĩa là 1 phần trong một phần ngoài) -Edit > CSG subtract,delete object cube đó đi, ok, bạn đã có 1 cánh cửa rồi đó. +Bước 4: -Gìơ bạn tạo một hành lang bên ngoài cánh cửa đó (nơi bạn xuất phát để đi vào phòng) cũng bằng hollow cube như bước 2. -Chú ý là 1 đầu hành lang phải áp vào cửa, sau đó bạn chọn scope down để chọn từng khối của hành lang, chọn khối áp vào cửa và ấn delete để bỏ khối này đi. - Nếu làm tốt, bạn có thể chiêm ngưỡng thành quả tạm thời bằng cách View > solit, sau đó dùng walk-thru để chiêm ngưỡng thành quả tạm thời. Sau đó lại chọn View > wire frame để tiếp tục hành trình. +Bước 5: -Căn phòng có thể coi như tạm hoàn chỉnh, giờ ta quét cho nó ít vôi ve nhỉ? -Chọn Texture trong toolbar project (bên trái màn hình) bạn sẽ thấy chúng ta có một thư viện tex defaut, mở nó ra bạn sẽ thấy tex dạng bức tường, nhưng có vẻ xấu quá hả, tội gì không chọn cái đẹp hơn nhỉ? -Bạn vào Texture trên menu chính > tex manager > add WAD > tìm đến folder Gstudio6 và chọn Standard. Wad > open > ok. Rồi, bây giờ bạn đã có thêm một thư viện Tex mới ngoài defaut, mở nó ra bạn sẽ thấy khá nhiều tex trong này. -Rồi, giờ bạn chọn căn phòng đầu tiên và dựng Tex cho nó bằng cách chọn căn phòng và klick chuột phải vào tex mà bạn muốn và chọn Apply. -Gìơ bạn lại muốn sàn nhà có Tex khác tường nhà? Hãy chọn căn phòng, sau đó chọn Scope down rồi chọn khối sàn nhà và làm tương tự, khi nào xong thì lại chọn Scope up để quay về ban đầu. -Làm tương tự với hành lang sau đó bạn vào View > texture để chiêm ngưỡng thành quả. +Bước 6: -Sao không thêm ít ánh sáng vô nhỉ? Ok, bạn chọn Object > add light (hoặc nhanh hơn là chuột phải và add light) sau đó move tới vị trí mà bạn muốn có ánh sáng. -Rồi, thế là kha khá rồi, ta có thể Build đc rồi đó, bạn chọn Build > build level > ok. Đợi khoảng vài giây cho tới khi build xong rồi chọn Run để chiêm ngưỡng thành quả thôi ! -Chú ý là trước khi build bạn phải Save lại đã. +Bước 7: -Đã xong căn phòng rồi, giờ đến lượt các nhân vật máy và người chơi. Bạn chọn Object > load entities > chọn trong folder template 6 > models > guard.mdl. Di chuyển model này vào trong phòng (đây sẽ là enemy nhé). -Làm tương tự nhưng di chuyển model ra ngoài hành lang (đây là người chơi) -Chú ý điều chỉnh kích thước 2 model này cho phù hợp với kích thước căn phòng nhé. +Bước 8: -Bây giờ bạn cần các model này hoạt động, vì thế ta sẽ dùng Script. -Chọn File > map properties > main > new script > chọn A5 template project. Ok bạn đã thấy xuất hiện trong bảng script tên của level mà bạn chọn khi save. -Gìơ thì chọn model trong phòng, klick chuột phải và chọn Properties > behavior > action > chọn actor_walk_fight. -Làm tương tự với model ngoài hành lang nhưng chon action là player_walk_fight. +Bước 9: -Thêm chút vũ khí chứ nhỉ, bạn chọn Object > load entities > template 6 > models > shortgun.mdl. Sau đó move model này tới chỗ cửa ra vào và chỉnh cho kích thước phù hợp với người chơi. -Chọn cho model này action là Lasergun. +Bước 10: -Đã đến lúc Finish rồi, bạn chọn Build > build map entity -Sau đó chọn Run, nào , chiến đấu thôi!!!!! Phù, mệt quá, xin khất các bạn phần dựng Model sau nhé, mọi thắc mắc có thể gửi tin nhắn cho tôi : anhdung86. Các bạn có thể download demo tại đây : http://z21.zupload.com/download.php?file=getfile&filepath=26878