[UNITY] [Editor] เทคนิคการเขียน Editor ภาค 3 by

2
Sep
0

[UNITY] [Editor] เทคนิคการเขียน Editor ภาค 3

จากคราวที่แล้ว เรื่อง Validate Function ของ MenuItem วันนี้เราจะมาสอนเรื่อง Hot Key ครับ

รู้หมือไร่?? เราสามารถกำหนด Hot Key ให้ MenuItem ของเราได้ เพื่อที่จะได้เรียกใช้ได้ง่ายๆครับ วิธีใช้ก็ดังนี้เลยครับ

[MenuItem("Test/Menu1", false, 1)]
static void Menu1() { }
[MenuItem("Test/Menu2", false, 1)]
static void Menu2() { }
[MenuItem("Test/Menu3", false, 51)]
static void Menu3() { }
[MenuItem("Test/Menu4", false, 101)]
static void Menu4()
{
Selection.activeGameObject.name = "Test";
}
[MenuItem("Test/Menu4", true, 101)]
static bool Menu4Validator()
{
return Selection.activeGameObject != null;
}

นี่คือ code ของคราวที่แล้ว แล้วถ้าเราอยากให้ Menu4 นั้นมี Hot Key ก็ให้แก้พารามิเตอร์ตัวแรก ของ MenuItem
ซึ่งมี supported keys อยู่ดังนี้ครับ

% – CTRL on Windows / CMD on OSX
# – Shift
& – Alt
LEFT/RIGHT/UP/DOWN – Arrow keys
F1…F2 – F keys
HOME, END, PGUP, PGDN

เมื่อเราจะใส่ก็ใช้ประมาณนี้นะครับ

[MenuItem("Test/Menu4 %x", false, 101)]
static void Menu4()
{
Selection.activeGameObject.name = "Test";
}
[MenuItem("Test/Menu4 %x", true, 101)]
static bool Menu4Validator()
{
return Selection.activeGameObject != null;
}

จะได้ผลลัพท์ดังรูป
1

สังเกตุ1: จะต้อง เว้นวรรคก่อนใส่สัญลักษณ์ Hot Key เสมอนะครับ
สังเกตุ2: ถ้ามี Validate Function จะต้องแก้พารามิเตอร์ตัวแรกให้เหมือนกันนะครับ

เราสามารถใส่ %#&x เพื่อแทน Hot Key Ctrl+Alt+Shift+x ได้ครับ

ก็จบกันไปแล้วนะครับสำหรับการแนะนำ Feature ต่างๆของ UnityEditor ครับ
แต่จริงๆแล้ว UnityEditor ยังทำอะไรๆได้อีกมาก ถ้าใครอยากรู้มากกว่านี้ไปศึกษาดูได้ ที่นี่ ครับ

วิธีการ Build ไฟล์ Lua ใน Windows (เพื่อเช็คบัคหรืออะไรก็แล้วแต่) by

31
May
0

หลังจากที่ใช้ภาษา Lua มาได้สักพักแล้วก็ยังหา Tools ในการเขียนโค้ดที่ดีที่สุดและสามารถ Build ได้นั้นไม่เจอ เลยต้องเขียนโค้ดใน Editor ทั่วๆไปแล้วค่อย Copy ไป Debug / Test ใน Web ที่สามารถ Run ได้เอา (เช่น repl.it Lua) ซึ่งก็ค่อนข้างลำบาก จนในที่สุดก็ได้ค้นพบวิธีที่ทำให้ Editor ของผม (Sublime) สามารถ Run/Build ได้แล้ววว ซึ่งวิธีการมีหลายวิธีจะมาบอกวิธีที่สะดวกที่สุดละกันนะครับผม

 

1. ดาวน์โหลดและติดตั้ง “Sublime”

เข้าไปโหลดได้ที่เว็ปหลักได้เลย sublimetext
ซึ่งถ้าเราติดตั้งเสร็จก็สามารถใช้แก้ไขไฟล์ Lua ได้เลยแต่ยัง Build ไม่ได้นะครับ

หน้าตาพื้นฐานของ Sublime

 

2. ติดตั้ง “Package Control”

ถัดมาเราต้องติดตั้ง Package Control ซึ่งตัวนี้จะทำให้ Sublime ได้รับพลังมากขึ้นครับ ซึ่งไอเจ้าตัวนี้มันจะสามารถทำให้เราค้นหา Package ดีๆ (หรือเรียกตามธรรมดาก็คือ Plug in นั่นเอง) ได้โดยไม่ต้องไปหาที่อื่น แค่ค้นหาจากตัว Package นี้เองได้เลยทันที วิธีลงมีสองวิธี คือ

  • ใช้ Console
    • เปิดเมนู View > Show Console ขึ้นมา จากนั้นคัดลอกด้านล่างนี้ไปใส่แล้ว Enter เพื่อรันครับ
      import urllib2,os,hashlib; h = 'eb2297e1a458f27d836c04bb0cbaf282' + 'd0e7a3098092775ccb37ca9d6b2e4b7d'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else None; urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler()) ); by = urllib2.urlopen( 'http://packagecontrol.io/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); open( os.path.join( ipp, pf), 'wb' ).write(by) if dh == h else None; print('Error validating download (got %s instead of %s), please try manual install' % (dh, h) if dh != h else 'Please restart Sublime Text to finish installation')
    • เมื่อรันเสร็จแล้วก็ทำการปิด Sublime แล้วเปิดใหม่ 1 ครั้งเป็นอันเสร็จครับ

      ลงด้วย Console

  • ลงใส่ในโฟลเดอร์ Package เอง
    • เปิดเมนู  Preferences > Browse Packages
    • โปรแกรมจะเปิดโฟลเดอร์ที่ไว้ใส่ Package ต่างๆมาให้
    • ดาวน์โหลด Package Control.sublime-package แล้วคัดลองโฟลเดอร์ไปใส่ในโฟลเดอร์ขั้นตอนก่อนหน้านี้
    • ทำการปิด Sublime แล้วเปิดใหม่ 1 ครั้งเป็นอันเสร็จครับ

เมื่อลงเสร็จแล้วจะมีเมนูดังรูป

 

3. ติดตั้ง และใช้งาน Package “Lua Dev”

ให้เรากดที่ Package Control ในรูปก่อนหน้านี้ หรือกด Ctrl+Shift+P แล้วพิมพ์ Package Control จากนั้นจะมีเมนูของ Package Control ขึ้นมาให้เลือก ให้เราเลือก Install Package จากนั้นพิมพ์ Lua เข้าไปแล้วเลือกกดที่ Lua Dev ครับ Package Control จะลง Lua Dev ให้ในทันที สบายสุดๆ

เลือก Lua Dev ดังรูป

จากนั้นเราต้องใช้งานมันก่อนโดยปกติโปรแกรมจะเห็น Syntax ของเราเป็น Lua ให้เราทำการเปลี่ยนเป็น Lua Dev เพื่อเพิ่มประสิทธิภาพครับ มีสองวิธีคือ

  • กดที Lua ขวาล่างของจอเราแล้วเลือก Lua Dev
  • เปิดเมนู เลือก View > Syntax แล้วเลือก Lua Dev

ถ้าสำเร็จทางขวาล่างจอเราจะกลายเป็น Lua Dev แทน Lua แล้วล่ะครับ

จุดแสดงถึงตัวอ่าน Syntax ที่เลือกใช้อยู่

ซึ่งมาถึงจุดนี้เจ้า Lua Dev จะพร้อมให้ทำการ Build แล้ว แต่ว่า! เรายังไม่มีตัว Build ซึ่งต้องทำการลงเพิ่มในขั้นถัดไปครับ

 

4. ดาวน์โหลดและติดตั้ง Lua Build

เข้าไปที่เว็ป luabinaries แล้วเลือกเวอร์ชั่นของ Lua ที่เราจะใช้ หรือดาวน์โหลดเวอร์ชั่นล่าสุดเลยได้ที่ลิงค์นี้ > Click

จากนั้นให้เราแกะ Zip ไว้ในที่ๆเราต้องการ ซึ่งจะมีไฟล์สำคัญสองตัวที่เราจะใช้คือ lua##.exe และ lua##.dll [## แทนเลขเวอร์ชั่นของเรา เช่น lua53]

ตัวอย่างโฟลเดอร์ Lua

เมื่อเราทำการแกะเสร็จแล้ว ทีนี้เราก็ต้องมาแก้ Config ของ Lua Dev ให้ทำการเรียกเจ้าตัวนี้ โดยการกลับไปที่ Sublime แล้วเปิดเมนูของ Package Control ขึ้นมา (วิธีตามข้อ 3) แต่ทีนี้ให้เราเลือก List Package แล้วเลือก Lua Dev

เลือก Package Lua Dev

จากนั้นโปรแกรมจะเปิดโฟลเดอร์ Package Lua Dev ขึ้นมา ให้เราทำการแก้ไขไฟล์ Lua.sublime-build ดังนี้

{
"cmd": ["lua53", "$file"],
"file_regex": "^(?:(?:\t)|(?:.+: ))(.+):([0-9]+): (.*)$",
"selector": "source.lua",
"path": "C:\\Program Files\\Sublime Text 2\\Lua"
}

ตรง cmd ให้ใส่ชื่อไฟล์ .exe ของเรา เช่น lua53 และตรง path ให้ใส่ path เต็มของโฟลเดอร์ที่เราลงไว้

 

5. Build ได้แล้ว รันดูได้เลย!!

รันโดยการ กด Ctrl+B หรือเปิดเมนูแล้วกด Tools > Build เท่านี้แหละครับผม

ปล. ถ้ามี Error สามารถดับเบิลคลิกเพื่อไปบรรทัดนั้นๆได้เลยด้วยนะครับ ซึ่งตัวรันบนเว็ปทำไม่ได้ล่ะเออ!

รันได้แล้ว ไร้บั๊ค ฟัคเย่!

credits : https://packagecontrol.io/installation#st2

 เราชนะรอบ 4 | ยืมเงิน 3000 ด่วน | แอพกู้เงิน | แอพเงินด่วน | สินเชื่อออนไลน์อนุมัติทันที | Site Map | กู้เงินก้อน | กระเป๋าตัง | thisshop และ ยืมเงินฉุกเฉิน 5000 ด่วน