Chat Room

บทที่ 1.2 Begin Unreal Script

[UDKThai]

สวัสดีครับ
วันนี้ก็มาถึง Unreal script จนได้ผมว่ากะจะมาต่อวันพรุ้งนี้แต่ ว่าพรุ้งนี้อาจจะมีธุระก็เลยรีบนำมาเขียน
นำเสนอไว้ก่อนครับ มาเพื่อเป็นการไม่เสียเวลาเรามาเริ่มเรียน ขั้นตอนแรก กันเลยดีกว่า
ก่อนอื่น หลังจาก สร้าง Map เสร็จแล้วใช่ไหมครับ
ในบทที่ 1.1 UDK Command-Line Arguments & Editor & Tools & Toolbar


 นะครับส่วนทั้งนี้ทั้งนั้นในการสร้าง script นั้นเรามาทำความเข้าใจ กับ folder อีกครั้ง
ก่อนอื่นผมก็จะเข้า folder Development นะครับ เข้าไปใน src แล้วตั้ง folder ชื่อว่า MyGame
หลังจากนั้นผมก็เข้าไปใน MyGame สร้าง อีก folder นึงชื่อว่า Classes ครับ สร้าง ไฟล์
notepad มาไว้อันนึงเข้าไปใน notepad แล้ว save as ตั้งชื่อครับแล้วตามด้วยนามสกุลชื่อว่า
.uc
Ex ตัวอย่าง
TestGame.uc

และวิธีการเข้าไฟล์ .uc ให้ทำการคลิกขวา openwith แล้วเลือก notepad ครับ
ของผมจะสร้างไฟล์ชื่อว่า TestGame.uc นะครับ
โดย เรามาทำความเข้าใจกับ Class ก่อน

ให้ลองจินตนาการ ว่า Class คือ บ้านหลังหนึ่ง แล้ว method คือ ห้อง แต่ละห้อง เช่น ห้องน้ำ ห้องนอน
ห้องนั่งเล่น ห้องเล่นคอม ห้องครัว ต่างๆ

IDE จริงๆ มันก็มีหลายตัวมากเลยครับ แต่ที่ผมใช้อยู่เป็นประจำคงไม่พ้น VS2010 ครับ จะใช้ คู่กับ nfringe
*สำหรับคนที่มี VS2010 http://wiki.pixelminegames.com/index.php?title=Tools:nFringe:Releases
ซึ่งทาง UDK ใจดีครับ ทำ key มาให้ Debug ด้วย http://forums.epicgames.com/archive/index.php/t-716874.html

ข้อแตกต่างระหว่าง มี IDE คือมันตรวจเช็ค code ได้อะไรได้แต่ถ้าอยากเก่งเร็วๆ ผมแนะนำให้ใช้ notepad
เก่งไวพิมพ์คร่องแน่นอน เพราะการใช้ IDE มันฉลาดเกินไปครับ ทำให้เรา โง่ไปทันที = = แต่มีข้อดีคือ หา class ง่าย แต่สำหรับมือใหม่ สามารถ หา Unreal wiki ก็ได้ครับ หรือถามผมก็ได้

จากนั้นก็สร้าง Class ขึ้นมา
สำหรับ คนที่ไม่เป็นภาษา C++ เลย

คลิกนี้ http://udkthai.blogspot.com/2011/12/122-unreal-script.html#

โครงสร้างของ UDK มีอะไรบ้าง

คลิกนี้ http://udkthai.blogspot.com/2011/12/122-source-code-udk.html


Class TestGame Extends Gameinfo;
auto state sayput{
begin:
`log("test");
}
DefaultProperties{
}



เขียน Code เสร็จให้ Save แล้วไปเข้าที่ Folder UDKGame
ไปที่ Folder Config
หาไฟล์ที่ชื่อว่า
DefaultEngine
แล้วไปแก้ บรรทัดนี้
[Engine.ScriptPackages]
ให้สังเกตุว่า

+NonNativePackages=UTGame
+NonNativePackages=UTGameContent
ให้เราใส่เพิ่มไปเลยเป็น

+NonNativePackages=UTGame
+NonNativePackages=UTGameContent
+NonNativePackages=MyGame ( คำอธิบายนะจ๊ะ // หรือ class ของคุณ )

หลังจากนั้น
[UnrealEd.EditorEngine]
ทำเหมือน อันบนเลย

Ex ตัวอย่าง ( ขยาย ความ )


[UnrealEd.EditorEngine]
+EditPackages=UTGame
+EditPackages=UTGameContent
////--------------------------------------

[UnrealEd.EditorEngine]
+EditPackages=UTGame
+EditPackages=UTGameContent
+EditPackages=MyGame

หลังจากนั้น เราก็มาสร้าง shotcut อีกตัวนึง
ให้พิมพ์หลัง UDK.exe ว่า ชื่อแผนที่ของคุณ?Game=ชื่อ Class ของคุณ -log

ตัวอย่าง

UDK.exe Testmap.udk?Game=MyGame.TestGame -log

หลังจากนั้น มันจะมีถามว่า จะ complie script ไหม ให้ตอบ Yes เมื่อมันสิ้นสุดให้ ปิด แล้วทำการ กดใหม่
อีก หนึ่งรอบ แล้วจากนั้น ผมประกาศ ให้มัน show log file
ฉะนั้น บันทักล่าสุด จะต้องเป็น log: test นะครับ

1 ความคิดเห็น:

ไม่ระบุชื่อ กล่าวว่า...

UDK.exe TestMap.udk?MyGame.MainGameInfo

ผมรันไม่ผ่านอ่ะครับ