วันเสาร์ที่ 29 ธันวาคม พ.ศ. 2555

เครื่องมือสำหรับพัฒนาเกม


รวมเว็บลิงค์เครื่องมือต่างๆที่ใช้ในการพัฒนาเกม

melonjs.org  เป็น HTML5 Game Engine ให้ใช้ฟรี

Construct2  เป็น tool สำหรับพัฒนาเกม HTML5 เหมาะสำหรับผู้เริ่มต้น เขียนโค๊ดน้อย สามารถออกแบบด่านได้เลย  สำหรับการพัฒนาเบื้องต้นใช้ได้ฟรี แต่หากจะเอานำไปใช้ในทางพานิชจะเป็นราคา 99 $


corona  เป็นเครื่องมือสำหรับการพัฒนาเกมซึ่งใช้ภาษาสคริป lua เป็นตัวหนึ่งที่ผู้เขียนกำลังสนใจจะนำมาพัฒนาเกมอยู่

http://www.cocos2d-iphone.org/  cocos2d สำหรับไอโฟน

วันจันทร์ที่ 8 ตุลาคม พ.ศ. 2555

NFC part 1

NFC
       Near Filed Communication เป็นเทคโนโลยีการสือสารในระยะใกล้ ซึ่งระยะในการสือสารนั้นจะไม่เกิน 5 เซนติเมตรซึ่งกลายเป็นข้อดีในเรื่องความปลอดภัย เพราะผู้ที่จะมาสื่อสารด้วยนะต้องมาอยู่ด้วยในระยะใกล้ๆ เท่านั้น ส่วนอัตราเร็วในการส่งข้ออยู่นั้นอยู่ที่ 424 kbit/s ซึ่งจะเห็นมาน้อยมากๆ จึงเหมาะแก่การส่งข้อมูลที่ขนาดไม่ใหญ่มาก หรือ ใช้ในการยืนยันการรับส่งข้อมูลในเบื้องต้น  ตัวอย่างที่ใช้จริงในปัจจุบัน เช่น การส่งข้อมูล ใน galaxy s3 ซึ่งเพียงแค่นำเครื่องมาแตะกันก็สามารถส่งรูปภาพ หรือ ไฟล์เพลงไปหากันได้


เปรียบเที่ยบ NFC กับ  Bluetooth

แหล่งข้อมูลอ้างอิง

Google I/O 2012 - Up Close and Personal: NFC and Android Beam
http://www.dailywireless.org/2011/07/22/bluetooth-4-0-vs-nfc/

วันศุกร์ที่ 14 กันยายน พ.ศ. 2555

การตั้งค่า Android Emulator ให้สามารถใช้ keyboard จริงพิมได้


            หลายๆคนที่พัฒนาแอปบนแอนดรอยคงเกิดปัญหาการทดสอบโปรแกรมซึ่งหลายๆครั้งเราต้องพิมข้อมูลเข้าไปอย่างเช่น อีเมล์ซึ่งกว่าจะพิมได้แต่ล่ะครั้งมันยากลำบาก ซึ่งมันมีวิธีทำให้สะดวกขึ้นโดยการตั้งค่า subport keyboard ครับ


1) คลิกเลือกที่ ADV Manager


2) เลือก Emulator ที่เราต้องการ จากนั้น คลิกปุ่ม Edit

 3) แก้ไข  Value  จาก  no เป็น  yes แต่ถ้าหากลิสรายการไม่มี Keyboard support ให้คลิกปุ่ม New
จะมีรายการให้เลือกให้เลือก  Keyboard support  ออกมาครับ






        แต่บางคนปัญหาอาจจะยังไม่จบครับ เพราะบางคนเมื่อเปลี่ยนเป็น yes  แล้วก็ยังพิมไม่ได้ ให้ลองเข้ากลับไปเช็คค่าดูจะเห็นว่า มันมีค่าเป็น  no เปลี่ยนยังไงๆ กี่ สิบรอบ ร้อยรอบ ก็ไม่เปลี่ยนให้ T_T
ให้แก้ไขตามวิธีข้างล่างครับ

วิธีแก้สำหรับ บ้างคนที่ใช้ mac แล้วเกิดปัญหาตั้งค่า subport keyboard ไม่ได้ครับ

1)  ให้เปิดการแสดงไฟล์ที่ซ่อนไว้ โดยใช้คำสั่ง

>> defaults write com.apple.Finder AppleShowAllFiles true
ตามด้วย
>> killall Finder
จะทำให้เรามองเห็นไฟล์ที่ซ่อนอยู่

2) จากนั้นเข้าไปใน แฟ้ม .android --> avd
ซึ่งจะมี แฟ้มชื่อ emulator แต่ละตัวที่เราสร้างไว้อยู่ให้เข้าไปในแฟ้มเครื่องที่เราต้องการเปลี่ยน

3) เข้าไปแก้ไขในไฟล์ config.ini  แก้ไข hw.keyboard=yes โดยตรง ครับ

เท่านี้เราก็พิมข้อความด้วยคีย์บอร์ดได้อย่างสบายนิ้วแล้ว เอิ๊กๆ ^^

วันพฤหัสบดีที่ 6 กันยายน พ.ศ. 2555

Resource สำหรับเกม (sound)

สำหรับใครหลายคนทที่ต้องการฟรีเพลงเหรอ sprite  รูปต่างๆที่ใช้ในเกม ผมได้รวบรวมไว้ซึ่งเราสามารถนำไปใช้กับงานที่ใช้หาเงินได้ (commercial)

sound

http://www.bfxr.net/
เป็นเว็บที่ให้เราสามารถสร้างเสียงเอฟเฟคต่างๆเองได้


http://www.nosoapradio.us/
เว็บแจกเพลงสำหรับเกม ซึ่งมีการจัดหมวดหมู่ตามประเภทเกมไว้ให้




http://www.freesfx.co.uk/
เว็บแจกเสียงเอฟเฟคต่างๆ ซึ่งมีเสียงให้ดาวโหลดเยอะมาก






วันจันทร์ที่ 3 กันยายน พ.ศ. 2555

Memory King

Memory King 

Android Application Project



วิธีติดตั้ง facebook plugin สำหรับ phonegap บน Android

เครื่องมือ Eclipse + ADT Plugin


download phonegap 1.8.1
https://github.com/phonegap/phonegap/zipball/1.8.1

ติดตั้ง
https://github.com/


สร้าง project  ใหม่ new file -> new-> Other -> Android Application Project








สร้าง foder ใหม่ใน assets ตั้งชื่อว่า www



สร้าง foder ใน  project ตั้งชื่อว่า libs ( กรณิที่ยังไม่มี foder นี้ )


copy ไฟล์ cordova-1.8.1.jar  ใน phonegap  ไปไว้ใน โฟรเดอร์ libs



copy cordova-1.8.1.js  ไปไว้ใน www


copy Foder xml ไปไว้ใน res 








เปิดไฟล์ AndroidMinifest.xml

เพิ่ม การอนุญาติต่างๆดังนี้

<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECEIVE_SMS" />
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
<uses-permission android:name="android.permission.READ_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_CONTACTS" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.BROADCAST_STICKY" />


แก้ไข แท็ก <activity>  โดยเพิ่ม
            android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale"


เปิดไฟล์ MainActivity.java


import  org.apache.cordova.DroidGap;
แก้ extends Activity  เป็น extends   DroidGap
เพิ่มบรรทัด super.loadUrl("file:///android_asset/www/index.html");


 สร้างไฟล์  index.html ใน www  (ไฟล์นี้เป็นไฟล์หลักในการแสดงผลต่างๆ เหมือนหน้าเว็บทั่วไป)


code ตัวอย่าง




ทดสอบรันโปรแกรม





เมื่อติดตั้ง github เรียบร้อยแล้ว ให้ เปิด cmd หรือ terminal ขึ้นมา
พิม คำสั่งเพื่อ clone  facebook plugin Project

git clone git://github.com/davejohnson/phonegap-plugin-facebook-connect.git

พิมคำสั่ง ls (สำหรับ แมค) หรือ dir เพื่อดู ชื่อ foder

พิมคำสั่ง
cd ตามด้วยชื่อของ foder

พิมคำสั่ง อัพเดท plugin
git submodule update --init


 เปิดไฟล์ plugins  ใน res/xml เพื่มบรรทัด

 <plugin name="org.apache.cordova.facebook.Connect" value="org.apache.cordova.facebook.ConnectPlugin" />


facebook_js_sdk.js ไปไว้ใน www



copy res และ src ไปวางใน project จะมีข้อความเตือนวางจะทับไฟล์เดิมไหม ให้เลือก no





copy foder org ใน /native/android/src  ไปไว้ใน foder src ของ Project



*** จะมี error ขึ้นมาใน src ให้เรา เพิ่มบรรทัดในหน้าที่เกิด error โดยการเพิ่ม
import (ตามด้วย packet ของ โปรแแกรมหลักของเรา )

เช่น packet ของผม com.example.phonegapfacebookapi

ก็เพิ่ม import com.example.phonegapfacebookapi.*; ครับ


copy cdv-plugin-fb-connect.js  ไปไว้ใน www



ทดสอบ ตัวอย่างงจาก plugin นำ foder www ใน ตัวอย่าง hackbook มาวางแทนในโปรเจค





เปิดไฟล์ index.html นำเลข id ของ facebook app เราไปใส่



ทดสอบรันโปรแกรม




ที่มา