Steam for mac

ก่อนที่ผมจะใช้ Mac ผมใช้ Windows มาก่อน เคยสงสัยกันไม๊ว่าทำไม mac ถึงไม่ค่อยมีเกมส์ให้เล่น เหมือน windows

ทำไมถึงไม่ค่อยมีเกมส์ใน Mac ?

คำตอบง่ายๆเลยครับ การลงทุนพัฒนาเกมส์ใช้ต้นทุนค่อนข้างสูง เมื่อลงทุนสูงเค้าก็ต้องการยอดขายในปริมาณมาก และสมัยก่อนคนใช้ Mac ไม่เยอะครับ เทียบกับ Windows แล้วคนละเรื่องเลย เทียบทั่วโลกแล้วคนใช้ windows ต่อ mac อาจจะน้อยกว่า 100 คนต่อ 5 ด้วยซ้ำไป แต่ในปัจจุบันคนใช้ mac มากขึ้น การลงทุนในการพัฒนาเกมส์สำหรับ mac ก็ดูจะคุ้มขึ้นมาหน่อย และอีกอย่างครับเรื่องปัญหาทางเทคนิคบางประการเช่น การเขียนโปรแกรม mac กับ windows นั้นแตกต่างกันอย่างมาก เอาง่ายๆว่าถ้าสมมติว่า เราต้องเขียนเกมส์ขึ้นมาสักเกมส์เราก็ต้องเลือกแล้วครับจะเขียนโดยใช้ DirectX หรือ OpenGL ถ้าหากว่าเลือกใช้ DirectX ก็จะไม่สามารถนำ code ไปใช้ต่อใน Windows ได้เลย แต่ถ้าหากใช้ OpenGL เขียน code บางส่วนสามารถนำกลับไปใช้ ใน mac หรือ linux ได้ และในจุดนี้เองทาง Windows มีการพัฒนา DirectX ที่ไปไวมากๆ และใช้งานง่ายกว่า OpenGL มีทั้ง document ต่างๆมากมาย update ใหม่ๆเข้ามาตลอด ในความเป็นจริงแล้วแม้ว่าการเขียนโปรแกรมด้วย OpenGL จะสามารถนำ code บางส่วนที่ได้เขียนไป สามารถเอาไปใช้ได้ แต่ว่ามันก็ไม่ได้ง่ายขนาดนั้น ทางผู้ผลิตจึงเลือกที่จะพัฒนาเกมส์โดยใช้ DirectX เป็นหลักทำให้ code โดยส่วนมากไม่สามารถนำมาใช้ได้ อย่าลืมนะครับ code นี่ไม่ใช่พันสองพันบรรทัด บางเกมส์เป็นแสนๆบรรทัด นี่ก็เป็นสาเหตุทำให้ผู้พัฒนาเลือกที่จะลงทุนกับ Windows ซะมากกว่า

What is Steam ?

วันนี้เป็นวันแรกที่ Steam ได้ออกเวอร์ชั่นสำหรับ mac สำหรับคนที่ยังไม่รู้ว่า Steam นั้นคืออะไรขออธิบายง่ายๆนะครับว่า Steam นั้นก็เหมือนกับ App Store  นั่นเหละครับ เพียงแต่ Steam นั้นขายเกมส์ เราต้องการเกมส์อะไรก็ซื้อแล้วก็ Download มาเล่นได้ทันที ถ้าเราย้ายเครื่องก็ไม่ต้องพกแผ่นไปเล่นแต่อย่างใด แค่เปิด Steam แล้วก็ Login พร้อมกับ Download เกมส์ที่ได้ซื้อไว้ ก็เล่นได้แล้ว

Steam ได้พัฒนาจากบริษัท valve ซึ่งเป็นบริษัทผลิตเกมส์ดังๆอย่าง Half-Life , Counter-Strike และมีเครื่องมือพัฒนาเกมส์ในชื่อ Source Engine คิดว่าหลายคนน่าจะพอคุ้นชื่อเกมส์เหล่านี้ เกมส์ดังๆหลายเกมส์ก็ได้จำหน่ายผ่านทาง Steam อาทิเช่น Football Manager , Bioshock

แน่นอนว่าการมาของ Steam นั้น มันทำให้ mac มีเกมส์เล่นมากขึ้น และยังช่วยทำให้การตัดสินใจซื้อ mac สำหรับผู้ใช้หน้าใหม่นั้นง่ายขึ้นด้วย พูดจริงๆนะครับว่าแต่ก่อนผมไม่อยากจะซื้อ mac เพราะว่า มันไม่มีเกมส์ดีๆให้เล่น แล้วมันก็เป็นข้อด้อยที่ Windows เอามากัดตลอดว่า mac ไม่มีเกมส์ แต่ในวันนี้พอจะเริ่มเห็นอนาคตแล้วครับว่า เราจะได้เล่นเกมส์ดังๆเหมือนกับ windows สักที

Setup

เราสามารถที่จะ download ได้ที่ https://steamcdn-a.akamaihd.net/client/installer/steam.dmg ครับหลังจาก download มาแล้ว เราก็จะเจอหน้าตา setup ในแบบฉบับของ mac ที่ง่ายแสนง่าย ดังรูป เพียงแค่ลากเข้ามายัง application ก็เสร็จแล้ว

หลังจากที่ Setup เรียบร้อยแล้ว ผมก็เปิดโปรแกรมขึ้นมาครับ แต่ก็ปรากฎว่าต้องทำการ update โปรแกรมเสียก่อน ( จริงผมก็แปลกใจตั้งแต่แรกแล้วว่าทำไมไฟล์ download มามันมีขนาดเล็ก ) ก็จะเห็นหน้าตาโปรแกรมดังรูป

First Look

หลังจากที่เราได้ update เรียบร้อยแล้ว เมื่อเปิดโปรแกรมเข้ามาก็จะเจอหน้า Login ดังรูปครับ ซึ่งหน้านี้ ถ้าหากว่ายังไม่มี account เราสามารถสร้าง account ได้ เมื่อสร้างเรียบร้อยแล้ว ก็ Login ครับ

หลังจาก Login เรียบร้อย เราก็จะพบกันหน้า News หรือว่าข่าวสารจาก Valve เป็นอย่างแรก และก็อย่างที่เห็นครับ หน้าแรกที่เจอก็คือเค้าบอกว่า Portal สามารถ download มาเล่นใน mac ได้แล้ว ผมก็ไม่รอช้ากดโหลดทันที

หลังจากที่ได้กด PLAY IT NOW โปรแกรมก็จะทำการ Download เกมส์ครับ ซึ่งก็จะเห็นหน้าตาประมาณนี้

เมื่อมันครบ 100 % ก็ไม่ใช่ว่าจะเล่นได้เลยนะครับ เพราะว่ามันเป็นแค่บอกว่า กำลังเตรียมการ download แต่ยังไม่ได้ download นะครับ เมื่อเสร็จจากหน้านี้แล้ว มันถึงจะ download ให้เรา ซึ่งก็จะเห็นหน้าตาโปรแกรมดังรูป

สังเกตด้านล่าง ก็จะเห็นว่ามีแถบสถานะ บอกว่าได้ download ไปเท่าไหร่แล้ว ถ้าหากว่ากดดูก็จะหน้าตาโปรแกรม บอกสถานะ download แบบนี้ครับ

ก็อย่างที่เห็นครับว่า Portal มีขนาดประมาณ 3 Gb. !!! เราก็รอไปเรื่อยๆครับ ถ้าเน็ทเร็วก็เสร็จเร็ว เมื่อเสร็จแล้วเราก็เล่นได้ทันทีเลยครับ เกมส์จะอยู่ใน library ของเรา

สำหรับหน้าตาส่วนอื่นๆอย่าง Home Scene ก็เป็นดังรูปครับ

PORTAL

หลังจากผมใช้เวลาร่วม 4-5 ชม ในการ Download Game ที่ได้ชื่อว่าเป็นเกมส์ที่ได้รับรางวัลมากกว่า 50 สำนัก ว่าเป็นเกมส์ยอดเยี่ยม เราจะมาทดสอบว่า เมื่อเล่นจริงๆแล้ว ผลลัพธ์ที่ได้มันเป็นอย่างไร ( Portal เป็นเกมส์ 3 FPS แนว Puzzle ครับ สนุกมากๆ )

สำหรับเครื่องที่ผมได้ทดสอบคือ Mac Book – White 2.26 Ghz Core 2 Duo ,  Ram 2 GB , NVIDIA GeForce 9400M ก็คือตัวสีขาวที่ออกขายในปลายปี 2009 นั่นเหละครับ

เริ่มกันเลยดีกว่าครับ ก่อนที่จะเล่นเกมส์ โปรแกรมจะบอกให้เราเปิดใช้ Universal Access เมื่อเราเปิดใช้และก็เปิด portal ก็จะเห็นหน้าตา intro ดังรูปครับ

โปรแกรมจะยังไม่เต็มจอนะครับ เมื่อจบ intro ก็จะได้เข้าเกมส์แล้วก็เจอหน้าตาดังรูป

ผมค่อนข้างแปลกใจนะครับว่า เฮ้ย นี่มันใช้ได้จริงๆนี่หว่า 🙂 ฝันไปหรือเปล่าเนี่ย ผมเดาก่อนเล่นว่ามันไม่น่าจะเล่นได้ความละเอียดขนาดนี้ และเมื่อเข้าเล่นเกมส์จริงแล้วก็จะได้ผลลัพธ์ดังรูปครับ

ผลลัพธ์ที่ได้นั้นดีเกินคาดครับ เท่าที่ลองเล่นผมว่ามันค่อนข้างลื่นไหลนะครับ Frame Rate อยู่ในระดับใช้ได้ คือถ้าปรับความละเอียดตามที่เกมส์ได้กำหนดมาให้ปกติ ผมว่าภาพที่ได้ออกมาก็ดีเกินที่ผมคาด สรุปว่า เยี่ยมมาก !!! ผมคิดว่า ถ้าได้ลองกับ iMac หรือ Macbook Pro ตัวล่าสุดภาพคงจะเนียนกว่านี้แน่นอน

More Testing

ผมพยายามจะลองปรับลายละเอียดภาพนะครับว่า สุดท้ายแล้ว mac book ของผมนั้นมันจะมีประสิทธิภาพสักแค่ไหน ก่อนอื่นเลยเรามาดูส่วนของ Display Setting กันก่อนนะครับว่ามันมีอะไรให้ปรับบ้าง

ก็จะเห็นว่าส่วนหลักๆ ก็จะมีให้ปรับตั้งแต่ความละเอียดของจอภาพ ความละเอียดของ texture แล้วก็อื่นๆมากมาย

ผมได้ลองเปรียบเทียบแต่ละอย่างมาให้ดูนะครับว่า ภาพที่ได้จากการปรับแต่งนั้น แตกต่างกันแค่ไหน ( ไฟล์ใหญ่นิดหนึ่งนะครับ )

การปรับความละเอียดของภาพระหว่าง default กับ anti aliasing 2x นั้นให้ผลค่อนข้างแตกต่างกัน เห็นได้ชัดว่าสวยงามขึ้น แต่ระหว่าง 2x กับ 4x ในความรู้สึกของผมมันไม่ได้แตกต่างมากนัก ส่วนการเปิดความละเอียดอื่นๆดูได้ในรูปนะครับ แต่เท่าที่ทดสอบถ้าเปิด anti aliasing หรือปรับอะไรจาก default มีผลกับ frame rate ค่อนข้างเยอะ คือมันหน่วงและกระตุกในบางจังหว่ะ อย่างเห็นได้ชัด

บทสรุป

Steam นั้นทำออกมาได้ดีเกินที่ผมคิดไว้ เกมส์เล่นได้ลื่นไหล แต่ก็ยังหน่วงๆอยู่บ้าง ถ้าหากว่าได้เครื่องที่มีประสิทธิภาพที่ดีกว่านี้ก็คงจะแจ่มมากๆ แม้ว่าตอนนี้เกมส์จะยังออกมาไม่มากนัก แต่เห็นได้ชัดว่า อนาคตเกมส์ใหญ่ๆจะมาลง mac สูงมาก

ปล. ตอนนี้ทาง valve เค้าให้โหลดเกมส์ PORTAL ฟรี ภายใน 24 พ.ค 2010 นี้นะครับ รีบๆกันหน่อย ย้ำนะครับว่า ฟรี !!!

iPad Review ( Developer version )

สวัสดีครับเมื่ออาทิตย์ที่ผ่านมาผมได้รับความอนุเคราะห์จากคุณ Chachris  – http://twitter.com/ChachrisTH ได้มอบเจ้า iPad มาให้ได้ลองเล่นเป็นเวลา 1 อาทิตย์เต็มๆ ต้องขอขอบคุณไว้ ณ ที่นี้ด้วยนะครับ

เอาละครับหลังจากที่ผมได้ iPad มาลองแล้ว ก็อยากจะแชร์ประสบการณ์และมุมมองในแบบของ developer ดูบ้าง เพราะผมคิดว่า ตอนนี้หลายๆเวปก็ได้ review ในด้านการใช้งาน รูปลักษณ์ภายนอก และอะไรไปมากแล้ว ฉะนั้นแล้วผมคงจะเขียน review ในมุมมองอื่นๆดูบ้างนะครับ

ตลาด Application

ณ ขณะที่ผมเขียน review ตอนนี้ก็เป็นเวลาที่ iPad ออกมาได้ 1 เดือนแล้ว และยอดขายกว่าล้านเครื่อง http://www.apple.com/pr/library/2010/05/03ipad.html ถือเป็นเรื่องที่ดีมากๆสำหรับ iPhone , iPad developer เพราะว่ามันหมายถึงว่าจำนวนตลาดของ application โตขึ้นไปด้วย ส่วนตัวผมค่อนข้างเชื่อว่า iPad จะขายได้เกิน 30 ล้านเครื่องภายใน 1 ปีนับจากที่ iPad ได้ออกจำหน่าย และถ้าหากยอดรวมกับ iPhone ที่มีในปัจจุบันแล้ว ก็นับว่าตลาดของคนที่จะ download application ของเรานั้นมากมายมหาศาล

ข้อดีของการเขียนโปรแกรมสำหรับ iPad

การเขียนโปรแกรม iPad นั้น มีข้อดีหลายอย่างครับคือ

  1. อันดับแรกก็ต้องบอกว่า เครื่องไม้เครื่องมือหลักๆก็เป็นตัวเดียวกันกับ iPhone นั่นก็คือ XCode และ Interface Builder ฉะนั้นแล้วถ้าหากว่าเราเคยเขียนโปรแกรมด้วย iPhone อยู่แล้ว ก็ไม่จำเป็นต้องเรียนรู้เครื่องมือในการพัฒนาเพิ่มเลย
  2. อย่างที่สองคือภาษาที่ใช้เขียนโปรแกรมใน iPad นั้นใช้ภาษา Objective-C ครับ เราไม่ต้องไปเรียนรู้ภาษาใหม่ให้ยุ่งยาก
  3. SDK  ที่ใช้ในการเขียน iPad คือ iPhone SDK 3.2 for iPad ครับ ถ้าหากว่าติดตั้งลงไปแล้ว ก็จะมี iPad Simulator มาให้ด้วย เหมือนกับที่มี iPhone Simulator นั่นเหละครับ แต่สิ่งที่เราต้องเรียนรู้เพิ่มก็คือการใช้ Control ต่างๆที่มีอยู่ใน iPad เช่น Split View
  4. ตัวเครื่องมีแบบเดียว ไม่ต้องกลัวว่าเขียนแล้วจะใช้ไม่ได้ ไม่เหมือน Netbook หรือมือถือ ที่มีขนาดหน้าจอ และเครื่องที่แตกต่างกันมากมาย
  5. มีแหล่งความรู้เพิ่มเติมมากมาย และมี community ที่ใหญ่
  6. ได้เป็นสาวก โดยส่วนตัวผมชอบคำว่า สาวก Apple นะครับ แม้ว่าความหมายจะเป็นคำที่เอาไว้ใช้แขวะ กัดจิก ของคนที่คลั่งใคล้ apple มากๆ แบบไม่ลืมหูลืมตา ( เค้าว่าอย่างนั้น ) แต่ผมเชื่อมั่นในศาสดาครับ ฮ่าๆ

สรุปว่าแทบจะไม่มีอะไรที่เราต้องเปลี่ยนเลย มีเพียงแค่เพิ่มในส่วนของ UI Control ของ iPad เข้ามาเท่านั้นเองครับ ถ้าหากว่าเขียนโปรแกรม iPhone มาแล้วรับรองว่าการเปลี่ยนไปเขียน iPad นั้นคงใช้เวลานิดเดียว

Device

ถ้าพูดถึงตัวเครื่อง iPad แล้ว จากประสบการณ์ของผมนั้น ถ้ามองในมุมที่ว่า ต้องพัฒนาโปรแกรมใน iPad ต้องคำนึงอะไรเพิ่มเติม และอะไรที่แตกต่าง iPhone ก็พอจะแยกได้ดังนี้ครับ

  1. ความเร็ว ต้องบอกเลยครับว่ามันเร็วกว่า iPhone 3GS มากๆ อาจจะเกือบสองเท่าด้วยซ้ำไป เพราะด้วยที่ว่ามันมี CPU ที่แรงกว่านั่นเอง ถ้าหากว่าเขียนเกมส์ 3D ก็น่าจะใส่ Texture ที่มีความละเอียดได้มากกว่า iPhone แน่นอน และไม่ต้อง Optimize ลดจำนวน Polygon มากเท่า iPhone หรือจะเขียนโปรแกรมที่มีความซับซ้อน ต้องการกำลังการประมวลผลสูงๆ เช่นพวกโปรแกรมแก้ไขรูปภาพก็คงจะใช้งานได้มากกว่า iPhone แน่นอน
  2. ขนาดหน้าจอ แตกต่างจาก iPhone ค่อนข้างเยอะมาก มันใหญ่มากครับ เรามีพื้นที่ใช้สอยเยอะมาก อย่างโปรแกรม iPhone ค่อนข้างมีหน้าจอที่จำกัด โปรแกรมเกือบจะทุกโปรแกรมจะใช้ Navigation , Tabbar  เป็นตัวเพิ่มพื้นที่หน้าจอ ทำการสลับไปมาระหว่างส่วนต่างๆ แต่ iPad มีขนาดหน้าจอที่ใหญ่กว่ามากครับ เราอาจจะเอาทุกๆอย่างมารวมในหน้าจอเดียวก็ได้
  3. น้ำหนัก – iPad มีนำ้หนักมากกว่า iPhone ครับ ใช้ไปนานๆเมื่อยมือแน่นอน ถ้าคิดว่าจะทำอะไรเกี่ยวกับ accelerometer เช่นเกมส์กลิ้งลูกบอล เกมส์แข่งรถที่บังคับด้วยการเอียง , doodle อะไรทำนองนี้ต้องคิดให้ดีครับ ใช้ไปสัก 5 นาทีก็เริ่มเมื่อยแล้วครับ ไม่เหมือน iPhone ครับถือเป็นชั่วโมงก็ไม่เมื่อย

ทดลองใช้ iPhone App

หนึ่งสิ่งที่ iPad สามารถทำได้ก็คือการเปิด iPhone App ได้ หลังจากที่ผมได้ทดลองเอา App ที่มีอยู่แล้วเช่นเกมส์มาทดสอบ ก็ผลปรากฎว่าได้ผลที่ยอมรับได้นะ คือมันเล่นได้จริงๆนั่นเหละ ผมสรุปให้ได้ว่า

  1. ใช้งานได้จริง แม้กระทั่งเกมส์
  2. มีให้เลือกปรับขนาดหน้าจอ 2 แบบคือแบบเกือบเต็มจอ และแบบขนาดใกล้เคียงกับ iPhone ( เค้าบอกว่าขนาดมันเท่าหน้าจอ iPhone ) แต่จากที่ได้ลองจริงๆแล้วมันไม่เท่าครับ
  3. ความรู้สึกส่วนตัวผมว่า สีมันเข้ม และไม่สว่างเท่า iPhone นะ

ลองดูรูปตัวอย่างจากหน้าจอที่ผม Capture มาให้ดูดีกว่าครับ

จากรูปแรกนี้ผมได้เปิดโปรแกรมที่ผมเขียนเอง ลองทดสอบใช้งานในแบบ ขนาดเท่า iPhone ดูก็ได้ผลปรากฎเหมือนในภาพ สรุปง่ายคือ

  • ตัวหนังสือ รูปภาพก็ไม่ได้แตก ยังคมใช้ได้
  • ยังมีความเพี้ยนของโปรแกรมปรากฎให้เห็นเล็กน้อยครับ ลองสังเกตุตรง Search Bar ครับ จะเห็นว่ามันเป็นสีน้ำเงิน ทั้งๆที่จริงๆแล้ว ใน iPhone มันจะเป็นสีน้ำตาลอ่อนเหมือนกับ Titile Bar ข้างบน
  • ความรู้สึกผมตอนใช้งานไม่เป็นไปดังที่คิด เพราะมันไม่ได้ให้ความรู้สึกเหมือนการใช้งาน iPhone เลย ผมกลับรู้สึกว่าเหมือนเราเปิดโปรแกรม iPhone ใน iPhone Simulator ( โปรแกรมในชุดพัฒนา iPhone ) ซะมากกกว่า

ทีนี้มาทดสอบการใช้งานแบบเปิด 2x ดูบ้างว่าผลเป็นอย่างไร

จากการใช้งาน สรุปได้ว่า

  • รูปภาพและตัวหนังสือเบลอครับ เห็นแตกเป็น pixel เลยทีเดียว
  • ความรู้สึกดีขึ้นกว่า การใช้งานแบบเปิดขนาดเท่า iPhone แต่มันก็ยังแปลกอยู่ดี
  • โปรแกรมก็ยังเพี้ยนเหมือนเดิม

ทีนี้มาดูรูปเปรียบเทียบกับ iPhone ดูดีกว่า

สิ่งที่ Devleoper ควรจะคำนึงในการเขียนโปรแกรมสำหรับ iPad

  1. ถ้าหากคุณเป็นนักพัฒนาโปรแกรมบน iPhone มาก่อนนั้น โปรแกรมของคุณ ต้องแทบจะออกแบบใหม่หมดเลยครับ เพราะอย่างที่ผมบอกไปว่าหน้าจอ iPad มีขนาดใหญ่มากๆ เราสามารถที่จะรวมเอา View หลายๆ View มารวมกันได้ ด้วยหน้าจอเดียว เราควรจะใช้ประโยชน์จากหน้าจอที่ใหญ่ขึ้นให้เป็นประโยชน์
  2. iPad ไม่ใช่ iPhone ขนาดยักอย่างที่หลายคนบอกมา แม้ว่ามันจะคล้ายกับ Netbook แต่การใช้งานโดยปกติมันก็ไม่เหมือน  Netbook เลย ลักษณะการใช้งาน iPhone นั้นใช้มือข้างเดียวถือแล้วเอาอีกนิ้วจิ้ม ส่วน Netbook นั้นหน้าจอภาพอยู่ตรงหน้าเราและมีแป้นเป็นตัวควบคุม แต่ iPad โดยปกติการใช้งานคือต้องเอาวางที่หน้าตักใน แล้วจออยู่ในแนวแบบราบเป็นสิ่งที่เหมาะสมที่สุด
  3. โปรแกรมไม่ควรจะใช้พวก Accelerometer เป็นจุดเด่น เช่นพวกเกมส์ที่ใช้การบังคับด้วยการเอียงเครื่องอย่างเกมส์ doodle นี่เลิกคิดได้เลย ไม่เหมาะเลย มันเหมือนกับเรายกโน๊ตบุคตัวหนึ่งเอียงซ้ายขวาเล่นเกมส์ มันจะเล่นได้สักเท่าไหร่กัน ?
  4. ควรจะใช้ Control พวก Split View แทน Tabbar , Navigation Bar เพราะมันสะดวกกว่า เหมาะสมกว่า

จากทั้งหมดที่ผมกล่าวมา น่าจะพอมองเห็นภาพโดยรวมนะครับ ว่าโปรแกรมของเราควรจะออกแบบลักษณะแบบไหน สิ่งที่ผมอยากจะฝากไว้คือ ก่อนจะทำอะไรสักอย่างเราควรจะพิจาณาตัวเครื่องก่อนครับ ว่าเราจะเขียนมันเพื่อ iPad หรือ iPhone เพราะมันไม่เหมือนกันเลย ต้องคำนึงประสบการณ์การใช้งานของผู้ใช้เป็นหลักครับ แล้วโปรแกรมของเราก็จะออกมาดี