Sunday, October 3, 2010

Moving to my web site from Blogspot...!

ကၽြန္ေတာ့ရဲ႕ www.thiha-ucsm.blogspot.com ကို လာၾကည့္၊ လာဖတ္ တဲ့အတြက္ ေက်းဇူး တင္ပါတယ္။
အခု ကၽြန္ေတာ္ blogspot ကို မသံုးေတာ့ပဲ ကိုယ္ပိုင္ web site ဖန္တီး ထားပါတယ္။

ေနာက္ပိုင္းမွာ ကၽြန္ေတာ့ post ေတြကို ကၽြန္ေတာ့ရဲ႕ ကိုယ္ပိုင္ web site ေပၚမွာပဲ တင္ေတာ့မွာ ျဖစ္ေၾကာင္း အသိေပး ပါတယ္။ အခု ဒီ blog မွာ တင္ ထားတဲ့ post ေတြကိုလည္း ကၽြန္ေတာ့ web site ေပၚကို ေျပာင္း ေပးထားပါတယ္။

ကၽြန္ေတာ့ ကိုယ္ပိုင္ web site လိပ္စာက  www.thihaoo.com   ျဖစ္ပါတယ္...။

Monday, September 20, 2010

Use iPhone's Internet connection for Wi-Fi only iPad

Apple က ထုတ္တဲ့ ဘာပစၥည္းမဆို သေဘာက်စရာ ေကာင္းတာေတာ့ အမွန္ပဲ။ iPhone 3GS ၿပီးေတာ့ iPhone4၊ ေနာက္ၿပီး iPad တဲ့။ အမ်ိဳးမ်ိဳးပဲ။ အခုကၽြန္ေတာ္ မ်က္စိက် ေနတာက iPad ေပါ့။ (ဒါေပမယ့္ လက္ထဲမွာ မရိွေသးပါဘူူး)

iPhone ကိုသံုးေနတဲ့ သူေတြအဖို႔ iPhone 3G network ကို tether လုပ္ၿပီး computer ေတြကို Internet ခ်ိတ္လို႔ ရေအာင္ လုပ္ႏိုင္တယ္ ဆိုတာ အေတာ္မ်ားမ်ား သိၿပီးသားပါ။ ကၽြန္ေတာ္ ကိုယ္တိုင္လည္း ကၽြန္ေတာ့ laptop ကို Internet မရိွတဲ့ ေနရာကို ယူသြားျဖစ္ရင္ iPhone သံုးၿပီး Internet ခ်ိတ္ျဖစ္ပါတယ္။ အဆင္လညး္ ေျပတဲ့ အျပင္ ကၽြန္ေတာ္ ကေတာ့ အရမ္း သေဘာက်မိတယ္။ Mobile broadband adaptor ၀ယ္သံုးတာေလာက္ မျမန္ ေပမယ့္ Internet ကို လိုတဲ့ ေနရာမွာ သံုးလို႔ရေတာ့ အလုပ္ ျဖစ္တယ္ေလ။ သီးသန္႔ mobile broadband လည္း ထပ္မ၀ယ္ရေတာ့ ဘူးေပါ့။

အခု ကၽြန္ေတာ္ စဥး္စားၾကည့္တာက iPad အတြက္ပါ။ iPad ၀ယ္မယ္ လို႔ စဥ္းစားရင္ ေရြးခ်ယ္စရာ ၂ မ်ိဳး ရိွပါတယ္။ Wi-Fi သီးသန္႔ အမ်ဳိးအစားနဲ႔ Wi-Fi + 3G ဆိုၿပီး ရိွတာ လူတိုင္း သိပါတယ္။ Wi-Fi နဲ႔ 3G ႏွစ္မ်ဳးိလံုး ရတဲ့ iPad က ေစ်းပိုၾကီးတာ ေပါ့ေနာ္။ ဒီေတာ့ iPad မ၀ယ္ခင္ ေသခ်ာစဥ္းစား ရမွာက Wi-Fi သီးသန္႔ ပဲ ၀ယ္မလား၊ ေစ်းပိုေပးၿပီး 3G ရတာကို ၀ယ္မလားေပါ့။ ပံုမွန္အတိုင္း ဆို အိမ္ေတြမွာက Wi-Fi wireless access point (router) ရိွေနေတာ့ Wi-Fi နဲ႔ တင္ လုံေလာက္တယ္ေလ။ ဒါေပမယ့္ တစ္ျခား အျပင္ကို ယူသြားရင္ iPad မွာ Internet ရေအာင္ ဘယ္လို လုပ္မလည္းေပါ့။

iPhone ရဲ႕ Internet tethering ကို သံုးၿပီး computer ေတြကို Internet ခ်ိတ္လို႔ ရေအာင္ သံဳးႏိုင္ခဲ့ေတာ့ iPhone ရဲ႕ tethering ကို iPad အတြက္ေရာ သံုးလို႔ ရႏိုင္မလား စဥ္းစားမိပါတယ္။ Internet ေပၚမွာ research လုပ္ၾကည့္တဲ့ အေျဖက (ပံုမွန္အတိုင္းဆို) iPad နဲ႔ iPhone Internet tethering ကို ခ်ိတ္ၿပီး Internet သံုးလို႔ မရႏိုင္ပါဘူး။ 3G မပါတဲ့ iPad ကို Internet ခ်ိတ္ခ်င္ရင္ Wi-Fi access point တစ္ခု ရိွဖို႔ လိုပါတယ္။ ဒါေပမယ့္ Wi-Fi သီးသန္႔ iPad က ေစ်းလည္း သက္သာတယ္။ ၀ယ္ဖို႔လည္း သင့္ေတာ္တယ္ လို႔ ယူဆေတာ့ Wi-Fi သီးသန္႔ iPad ကို iPhone က တစ္ဆင့္ Internet နဲ႔ ခ်ိတ္ဖို႔ ျဖစ္ႏိုင္ေခ်ကို ရွာၾကည့္ေတာ့ နည္းတစ္ခု ကို ေတြ႕ခဲ့ပါတယ္။

iPhone ကို jailbreak လုပ္ၿပီးရင္ ေသခ်ာ ဖန္တီးထားတဲ့ MiWi ဆိုတဲ့ software ကို ထည့္လိုက္ရင္ ကၽြန္ေတာ္တုိ႔ ရဲ႕ iPhone က Wi-Fi access point အေနနဲ႔ အလုပ္ လုပ္ပါလိမ့္မယ္။ ကြန္ပ်ဴတာ နဲ႔ ခ်ိတ္ဖို႔က အဲလိုၾကီး လုပ္ဖို႔ မလုိေပမယ့္ Wi-Fi သီးသန္႔ ပဲ ပါတဲ့ iPad ကို Internet ခ်ိတ္ဖို႔က Wi-Fi access point ရိွမွ ျဖစ္မွာမုိ႔ အဲဒါကို သံုးရပါ လိမ့္မယ္။ ဒါဆို iPhone က Wi-Fi access point ျဖစ္သြားၿပီ ဆိုေတာ့ Wi-Fi iPad ကို အဲဒီ network ထဲကို ၀င္ခ်ိတ္လိုက္ တာနဲ႔ Internet သံုးလို႔ ရၿပီေပါ့။ ကိုယ့္ရဲ႕ iPhone ကို jailbreak လုပ္ဖို႔ေတာ့ လုိပါလိမ့္မယ္။

ဒီနည္းကို သံုးျခင္းအားျဖင့္ 3G မပါတဲ့ iPad ကို iPhone ကတစ္ဆင့္ ေရာက္ေလရာ ေနရာမွာ Internet သံုးလို႔ ရေအာင္ လုပ္ေပးႏိုင္ပါတယ္။ ဒါေပမယ့္ တစ္ခု သတိထားရမွာက အဲလိုသံဳးတယ္ဆိုရင္ iPhone battery အရမ္း စားပါတယ္။ ဒါေၾကာင့္ iPhone ကို charge လုပ္ဖို႔ အဆင္ေျပမွ သံုးသင့္ပါတယ္။ ဒါမွမဟုတ္ iPhone ကို computer ရဲ႕ USB မွာ တပ္ထားၿပီးမွ သံုးေပါ့ေနာ္။ ဘယ္လိုပဲ ျဖစ္ျဖစ္ iPhone က Wi-Fi wireless access point အေနနဲ႔ အလုပ္လုပ္ေပး ႏိုင္တဲ့ အတြက္ ေစ်းသက္သာတဲ့ Wi-Fi သီးသန႔္ iPad အတြက္ အဆင္ေျပသြားတာ ေပါ့ေနာ္။

ကၽြန္ေတာ့ လက္ထဲမွာ iPad မရိွတဲ့ အတြက္ အဲဒါကို လက္ေတြ႕ မစမ္းၾကည့္ရ ေသးပါဘူး။ ဒါေပမယ့္ Internet က ရတဲ့ information အရ MyWi program က ေကာင္းေကာင္း အလုပ္လုပ္ ႏိုင္တယ္လို႔ ေျပာပါတယ္။

Thursday, September 16, 2010

How to solve MacBook Pro freezing problem on Windows 7

Apple က MacBook PRO 13” ေတြကို Mid-2010 model ေတြမွာ internal hardware ေတြကို ပိုေကာင္းတာ ေတြနဲ႔ ေျပာင္းခဲ့ပါတယ္။ အထူးသျဖင့္ အရင္က Nvidia Geforce 9400M (16 shaders) အစား ပိုေကာင္းတဲ့ Geforce 320M (48 shaders) ေတြနဲ႔ အစားထိုး ခဲ့ပါတယ္။
ဒါေၾကာင့္ mid-2010 MacBook PRO 13” တစ္ခု ၀ယ္ျဖစ္ ခဲ့ပါတယ္။ ကၽြန္ေတာ္က laptop ၀ယ္ရင္ 13” ေလာက္ပဲ သေဘာက် မိတယ္။ 14” ကိုေတာင္ ၾကီးတယ္ ထင္လို႔ပါ။ အဲဒီ MacBook Pro ရဲ႕ graphic card အသစ္ ကိုလည္း အေတာ္ သေဘာက် မိပါတယ္။ အရင္က 9400 ထက္ အမ်ားၾကီး ပိုေကာင္းလာတာ သိသာပါတယ္။ MacBook ျဖစ္တဲ့ အတြက္ Mac OS X (SnowLeopoard) ပဲ ပါလာတဲ့ အတြက္ Windows 7 (OEM) ကို ၀ယ္ၿပီး install လုပ္ခဲ့ပါတယ္။

ဒါေပမယ့္ ၀ယ္ၿပီး ကထဲက စိတ္အေႏွာင့္ အယွက္ ျဖစ္ရတာက Windows 7 ေပၚမွာ video ေတြ ၾကည့္ေနရင္းနဲ႔ video ကို pause လုပ္လုိက္ရင္ system တစ္ခုလံုး စကၠန္႕ (၃၀) ကေန (၁)မိနစ္ ေလာက္ freeze ျဖစ္သြား ပါတယ္။ ဘာမွ လုပ္လုိ႔မရပဲ ခဏေလာက္ ေစာင့္ေနမွ ျပန္သံုးလို႔ ရပါတယ္။ Video ကို pause လုပ္လိုက္တုိင္း ျဖစ္ပါတယ္။ အစက youtube video ေတြ ၾကည့္တဲ့ အခ်ိန္မွာ သတိထားမိ ခဲ့လို႔ streaming video ေတြမွာ ျဖစ္တယ္ ထင္ခဲ့ပါတယ္။ ဒါေၾကာင့္ network driver နဲ႔ configuration ေတြကို အမ်ိဳးမ်ိဳး စမ္းၾကည့္ ေပမယ့္ မရခဲ့ပါဘူး။
ဒါေပမယ့္ ေနာက္ပို္င္းမွာ သတိထားမိ တာက download လုပ္ထားတဲ့ hard disk ထဲက video file ေတြကို ဖြင့္ရင္လည္း ျဖစ္တာကို ေတြ႕ခဲ့ပါတယ္။ ဒါေၾကာင့္ graphic card မွာမ်ား ျပႆနာ တက္သလား ဆိုၿပီး graphic card driver ေတြကို အမ်ိဳးမ်ိဳး ေျပာင္းသံုးခဲ့ ပါတယ္။ Setting အမ်ိဳးမ်ိဳး နဲ႔ စမ္းၾကည့္တာ လညး္ အဆင္မေျပပါ။ ေနာက္ဆံုး Windows ကို ျပန္ install လုပ္တယ္။ Windows 7 Home Premium ေရာ၊ Windows 7 Professional နဲ႔ပါ စမ္းလည္း ျပႆနာ မေျပလည္ ခဲ့ပါဘူး။ IE, FireFox, Safari, Chrome စတဲ့ browser ေတြ ေျပာင္းၿပီး youtube ကို စမ္းလည္း freeze ျဖစ္တဲ့ ကိစၥက မေျပလည္ ခဲ့ပါဘူး။ အေတာ္ကို စိတ္အေႏွာင့္ အယွက္ ျဖစ္ရပါတယ္။
Youtube video ေတြတင္ မဟုတ္ပဲ ေနာက္ပိုင္းမွာ game ကစားေနရင္း ingame movie ေတြ တက္လာရင္လည္း တစ္ခါတစ္ခါ freeze ျဖစ္တတ္တာကို သတိထားမိ ခဲ့ပါတယ္။ အဲဒီလို freeze ျဖစ္တဲ့ အခ်ိန္မွာ CPU usage ကလည္း 100% ျပေနတာကို သတိထားမိ ပါတယ္။
Apple discussion မွာ ၀င္ေဆြးေႏြး ၾကည့္ေတာ့လည္း တိက် ေရရာတဲ့ အေျဖကို မရခဲ့ပါဘူး။ တစ္ခ်ိဳ႕ကဆို hardware problem လို႔ေတာင္ ေျပာပါ ေသးတယ္။
ခက္တာက Mac OS X ထဲမွာက်ေတာ့ ဘာမွ မျဖစ္ပဲ Windows 7 ထဲမွာမွ ျဖစ္တာကိုလညး္ ေသေသခ်ာခ်ာ သတိထားမိေတာ့ hardware ျပႆနာ မျဖစ္ႏိုင္ဘူး လို႔ပဲ ယူဆပါတယ္။ ဒါေပမယ့္ နည္းလမ္း အေတာ္မ်ားမ်ား နဲ႔ စမ္းသပ္ ခဲ့ေပမယ့္ အဲဒီ freeze ျပႆနာကို မေျဖရွင္း ႏိုင္ခဲ့ပါဘူး။ Internet ေပၚက ဘယ္ web site က video ကိုပဲ ၾကည့္ၾကည့္ pause လုပ္လိုက္တာနဲ႔ system က ရပ္သြားတာ အေတာ္ကို စိတ္ညစ္မိ ပါတယ္။ ေနာက္ဆံုး ကၽြန္ေတာ့ MacBook Pro ကို Apple ဆီကို ျပန္ပို႔ရေတာ့ မလားလုိ႔ ေတာင္ စဥ္းစားမိ ပါတယ္။ ကၽြန္ေတာ္ ေျဖရွင္းေနတာ ၂ လနီးပါး ရိွခဲ့ၿပီေလ…။

စိတ္ထဲမွာ မေက်နပ္တာ နဲ႔ ျဖစ္ႏိုင္ေခ် ေတြကို စဥ္းစားပါတယ္။ Video file ေတြ ၾကည့္ေနရင္း ျဖစ္တာဆိုေတာ့ graphic card မွာ ျပႆနာ ျဖစ္ႏိုင္သလို sound မွာလည္း ျပႆနာ ျဖစ္ႏုိင္တာကို စဥ္းစားမိခဲ့ ပါတယ္။ MacBook PRO 13” ရဲ႕ sound chip က CirrusLogic က ထုတ္တာပါ။ Nvidia ရဲ႕ MCP89 chipset နဲ႔ တြဲၿပီး အလုပ္လုပ္ ပါတယ္။
Windows 7 control panel ထဲက Sound settings ထဲကို ၀င္ၿပီး ကၽြန္ေတာ့ sound chip ရဲ႕ properties ေတြကို စစ္ၾကည့္ပါတယ္။ အဲဒီမွာ ေတြ႕မိတာက Windows 7 default configuration က 4-speaker (surround) လုိ႔ လုပ္ထားတာ သတိထားမိ ပါတယ္။ ကၽြန္ေတာ့ MacBook Pro က speaker ၂ ခုပဲ ပါတဲ့အတြက္ stereo (2-speakers) ကို ျပန္ခ်ိန္ ထားလိုက္ပါတယ္။ ၿပီးေတာ့ Advanced settings ထဲက sound quality ကိုလည္း 24-bit, 48000Hz (Studio Quality) ကေန 16-bit, 44100Hz (DVD quality) ကို ျပန္ေျပာင္း လိုက္ပါတယ္။ သာမာန္ stereo အတြက္ဆို အဲဒါက လံုေလာက္တယ္ မဟုတ္လား။
အဲဒီ လို ေျပာင္းၿပီးေတာ့ youtube ကို သြားၿပီး video ၾကည့္ရင္း pause လုပ္ၾကည့္ေတာ့ ကၽြန္ေတာ့ကို စိတ္အေႏွာင့္ အယွက္ ေပးေနတ့ဲ freeze ျဖစ္တဲ့ ျပႆနာ လံုး၀ မရိွေတာ့တာကို ၀မ္းသာစရာ ေတြ႕လိုက္ရပါတယ္။ ကၽြန္ေတာ္ အမ်ိဳးမ်ိဳး စမ္းၾကည့္ေတာ့ တစ္ကယ္ပဲ freeze ျဖစ္တာ မရိွေတာ့တာကို ေတြ႕ရပါတယ္။

ဒါေၾကာင့္ တစ္ကယ္လို႔ mid-2010 MacBook Pro ေတြကို သံုးေနရင္း video freezing ျပႆနာမ်ား ၾကံဳခဲ့ရင္ sound configuration ေတြကို ျပင္ၾကည့္မယ္ ဆိုရင္ ေျပလည္သြားႏိုင္ တယ္လို႔ ကၽြန္ေတာ့ အေတြ႕အၾကံဳကို မွ်ေ၀ခ်င္ ပါတယ္။

Wednesday, September 15, 2010

More shaders (or) Higher Clock???

Graphic Processing Unit (GPU) ေတြကို ေရြးခ်ယ္ဖို႔ စဥ္းစားတဲ့ အခါမွာ GPU ေတြနဲ႔ သိပ္မရင္းႏွီး ေသးတဲ့ လူသစ္ေတြ နဲ႔ အခုမွ game ေလာကထဲကို ၀ယ္ဖို႔ ၾကံစည္ေနတဲ့ new gamers ေတြ အတြက္ အသံုးတည့္မယ့္ အေၾကာင္းအရာ ေလး တစ္ခုေလာက ္ေရးခ်င္ပါတယ္။

GPU တစ္ခုကို ေရြးခ်ယ္ေတာ့မယ္ ဆိုရင္ အေျခခံ အက်ဆံုး စဥ္းစားတဲ့ အခ်က္က chip model နဲ႔ memory ပမာဏ ကို အရင္ဆံုး ၾကည့္ျဖစ္ၾကပါတယ္။ GPU chip က ဘာအမ်ိဳးအစားလည္း ဆိုတာ အရင္ဆံုး သတိထားၿပီးရင္ ဒုတိယ ၾကည့္ျဖစ္တာက video memory (graphic memory, frame buffer, VRM လို႔လည္း ေခၚပါတယ္) ပမာဏ နဲ႔ အမ်ိဳးအစား ပါ။
သာမာန္ အားျဖင့္ ေတြးၾကည့္ရင္ video memory မ်ားရင္ game ေတြ အတြက္ ပိုေကာင္းတယ္ ဆိုေပမယ့္ GPU အေပၚမွာလည္း မူတည္ ပါတယ္။ Graphic card ထုတ္လုပ္ သူေတြဟာ performance သိပ္မေကာင္းတဲ့ GPU ေတြကို အထင္ၾကီး ေလးစားမႈ ရေအာင္လုိ႔ VRAM မ်ားမ်ား ထည့္ၿပီး ဆြဲေဆာင္ တတ္ပါတယ္။ ဥပမာ ေျပာရရင္ - ATI Radeon X1300 GPU ကို 512MB graphic memory တပ္ထားတာဟာ Radeon X1900 GPU ကို 256MB memory နဲ႔ သံုးတာေလာက္ တစ္ကယ္တမ္း game ေတြ ကစားၾကည့္ရင္ ပိုမေကာင္း ႏိုင္ပါဘူး။ Memory ပမာဏ မ်ားတာဟာ GPU က အားနည္းေနရင္ အစစ္အမွန္ performance ကို သိသိသာသာ ပိုေကာင္းမလာ ေစတာကို သတိျပဳ သင့္ပါတယ္။ ဒါေၾကာင့္ memory မ်ားတာကိုပဲ မၾကည့္ပဲ GPU ကို ေသေသခ်ာခ်ာ ထည့္သြင္း စဥ္းစားသင့္ပါတယ္။ ေနာက္ ဥပမာ တစ္ခုေျပာရရင္ ATI Radeon HD 4650 (512MB) graphic card ဟာ ATI Radeon HD 3650 (1GB) ထက္ စြမ္းဆာင္ရည္္ ပိုေကာင္းတာ ေသခ်ာပါတယ္။
Graphic memory ကို စဥ္းစားတဲ့ ေနရာမွာ memory width ကလည္း အေရးၾကီး ပါတယ္။ ဥပမာ- Nvidia Geforce 9800GT မွာ သံုးထားတဲ့ video memory က 256-bit data ပို႔ႏိုင္ေပမယ့္ Geforce 9400GT card ေတြမွာ ေတြ႕ရတဲ့ video memory က 128-bit ပဲ ရိွတာကို ေတြ႕ႏိုင္ပါတယ္။ ေစ်းသက္သာတဲ့ graphic card ေတြမွာ bus width နည္းတဲ့ memory ကိုပဲ သံုးထား တတ္ပါတယ္။ ေစ်းခ်ိဳတ့ဲ graphic card ေတြမွာ အဆင့္ျမင့္ card ေတြမွာ သံုးတဲ့ GDDR-3, GDDR5 လို high speed memory မသံုးပဲ DDR2, DDR3 လို ေႏွးတဲ့ memory ေတြကို သံုးထားတတ္တာ ကိုလည္း သတိျပဳသင့္ ပါတယ္။ ေယ်ဘူယ် အားျဖင့္ desktop graphic card ေတြမွာ ပါတဲ့ memory ေတြက 128, 256 bit န႔ဲ အထက္ ရိွေပမယ့္ သာမာန္ laptop GPU ေတြက memory width 64-bit ပဲ ရိွတာကို သတိျပဳသင့္ ပါတယ္။

Memory ကို စဥ္းစား ၿပီးရင္ ေနာက္ထပ္ ေသခ်ာ စဥ္းစားရမွာက GPU အတြက္ပါ။ GPU လို႔ ေျပာလုိက္ရင္ အဓိက ကၽြန္ေတာ္တုိ႔ စကားေျပာတာက shader (stream processors) ဘယ္ေလာက္ ပါသလည္း ဆိုတာ နဲ႔ clock speed ကို ေျပာေလ့ ရိွပါတယ္။ အဲဒီ ႏွစ္ခု စလံုးဟာ GPU ရဲ႕ performance ကို ဆံုးျဖတ္တဲ့ ေနရာမွာ အေရးပါ ပါတယ္။
ဥပမာ- Laptop GPU ေတြ ျဖစ္တဲ့ Nvidia Geforce 305M, Geforce 310M နဲ႔ Geforce 320M ေတြဟာ နညး္ပညာ အေျခခံ အားျဖင့္ အတူတူပါပဲ။ Architecture လည္း တူၾကပါတယ္။ သူတို႔မွာ အဓိက ကြာတာက သူတို႔ထဲမွာ ပါတဲ့ shader (stream processors) အေရအတြက္ နဲ႔ clock speed ေတြပါ။ 

Geforce 305M = 16 shaders (525Mhz core clock) , 64-bit memory
Geforce 310M = 16 shaders (625MHz core clock) , 64-bit memory
Geforce 320M = 48 shaders (450MHz core clock) , 64-bit memory

အဲဒီ GPU (၃) ခုစလံုးဟာ laptop ေတြမွာ သံုးတ့ဲ mobile GPU ေတြ ျဖစ္တဲ့ အျပင္ shared memory ကို သံဳးပါတယ္။ ဆိုလိုတာက main memory ကေန graphic memory ကို share လုပ္သံုးပါတယ္။
သူတို႔ကို ႏႈိင္းယွဥ္ၾကည့္ တဲ့အခါ shader မ်ားတာ ပိုေကာင္းသလား၊ clock speed ျမန္တာကို စဥ္းစားရမလား ဆိုတာ ေမးစရာျဖစ္လာပါတယ္။ အလြယ္ဆံုးနဲ႕ အရွင္းဆံုး ေျပာရရင္ ဒီေန႔ေခတ္ demand မ်ားတဲ့ 3D game ေတြအတြက္ သိပ္မကြာရင္ shader မ်ားတာက ပိုေကာင္းတယ္ လို႔ ေျပာခ်င္ပါတယ္။ ကၽြန္ေတာ့ကို အဲဒီ ကိစၥ နဲ႔ ပါတ္သက္ၿပီး သိပ္နားမလည္ ေသးသူေတြက ေမးတာလညး္ ရိွပါတယ္။ ကၽြန္ေတာ္ကေတာ့ clock speed ေႏွးေပမယ့္ shader ပိုမ်ားတဲ့ 320M ကိုပဲ ေရြးမွာပါ။ Geforce 310M ဟာ entry-level အဆင့္ပဲ ရိွပါတယ္။ 310M နဲ႔ 320M သာမာန္ၾကည့္ရင္ သိပ္မကြာပါဘူး။ Performance အတူတူ ေလာက္ျဖစ္မွာပါ လို႔ ထင္ရေပမယ့္ Call of Duty : Modern Warfare 2 လို game မ်ိဳး ကစားၾကည့္ရင္ performance ကြာတာကို သိႏိုင္ပါတယ္။
Shader အေရအတြက္ မ်ားတာဟာ clock speed ပိုျမန္တာထက္ high end game ေတြမွာ ပိုအက်ိဳး ရိွေစတာ ေသခ်ာပါတယ္။

Monday, August 23, 2010

Nvidia GPU မ်ားရဲ႕ ကြာဟခ်က္မ်ား....

Nvidia ရဲ႕ GPU (Graphic Processing Unit) ေတြကို ၾကည့္ရင္ desktop အတြက္ပဲ ျဖစ္ျဖစ္၊ mobile version ပဲ ျဖစ္ျဖစ္ model number တစ္ခုထဲမွာ ကိုပဲ sub-categories ေတြ အမ်ိဳးမ်ိဳး ကြဲေနတတ္ ပါတယ္။ ဥပမာ- GS, GT, GTS, GTX စသည္ျဖင့္ေပါ့။ ဒါေၾကာင့္ တစ္ခါတစ္ေလ ဘယ္လို ကြာၿပီး ဘာက ေကာင္းမွန္း မသိပဲ အေတာ္ ဦးေႏွာက္ ေျခာက္ရ ပါတယ္။
GPU model တစ္ခုမွာ အဲဒီလို ေနာက္က ပါတဲ့ စာသားေတြ ကြဲသြားရင္ တစ္ကယ္က main chip က အတူတူပါပဲ။ ကြာျခား သြားတာက clock speed (MHz), အထဲမွာ ပါတဲ့ shader အေရအတြက္၊ memory bus width, power consumption နဲ႔ အပူထုတ္ လႊတ္မႈ စတာေတြ ကြာသြားတာပါ။ တစ္ခုပဲ သတိထား ရမွာက GT, GS, GTS, GTX စသည္ျဖင့္ နာမည္တပ္ထားတဲ့ model ေတြနဲ႔ 9100M G, 9400M လိုမ်ိဳး motherboard chiptset မွာ built-in လုပ္ထားတဲ့ GPU ေတြနဲ႔ေတာ့ လံုး၀ ႏိႈင္းယွဥ္လုိ႔ မရပါဘူး။ Built-in GPU ေတြက (model တူရင္) စြမ္းေဆာင္ရည္မွာ နိမ့္ပါတယ္။
နမူနာ အေနနဲ႔ အထက္တန္း level လို႔ သတ္မွတ္လို႔ ရတဲ့ Nvidia Geforce 9800M (Laoptop) GPU ရဲ႕ မူကြဲေတြ ဘယ္လို ကြာတယ္ ဆိုတာ ေအာက္မွာ ျပထားပါတယ္။ အဲဒီ မွာ ေတြ႕ရတဲ့ အတိုင္းပါပဲ။ အဓိက ကြာသြားတာက clock speed နဲ႔ shader အေရ အတြက္ပါ။ Memory width ေတာင္ 256-bit ခ်င္း တူၾကပါတယ္။ ပံုမွန္ 9400M လို motherboard built-in CPU ေတြက memory bus width 64-bit ပဲ ရိွပါတယ္။

GeForce 9800M GTX (Clock speed = 500MHz, shaders = 112)
GeForce 9800M GT (Clock speed = 500MHz, shaders = 96)
GeForce 9800M GTS (Clock speed = 600MHz, shaders = 64)
GeForce 9800M GS (Clock speed = 530MHz, shaders = 64)

Nvidia GPU နဲ႔ ATI GPU ရဲ႕ shader အေရအတြက္ ကို တိုက္ရိုက္ သြားၿပီး နႈိင္းလို႔ မရပါဘူး။ သူတို႔ရဲ႕ တည္ေဆာက္ပံု architecture နဲ႔ shader ကို count လုပ္ပံုခ်င္း မတူပါ။ ေယ်ဘူယ်အားျဖင့္ ေျပာရရင္ ATI’s shaders = Nvidia’s shaders * 5 လို႔ တြက္ရပါမယ္။
ဥပမာ- Nvidia GPU ရဲ႕ 8 shders ဟာ ATI GPU ရဲ႕ 40 shders နဲ႔ လုပ္ေဆာင္ရည္ခ်င္း တူႏိုင္ပါတယ္။ ( 8 *5 = 40)

CD/DVD/Blue-Ray burner software for FREE

CD BurnerXP software ေလး အေၾကာင္းကို လြန္ခဲ့တဲ့ တစ္ႏွစ္ေလာက္က ကၽြန္ေတာ္ တင္ထား ဖူးပါတယ္။ အခု ေနာက္ဆံုး ထြက္ version မွာ Windows 7 support နဲ႔ အတူ ပိုေကာင္းလာတဲ့ အတြက္ ထပ္ၿပီး post လုပ္ ျဖစ္တာပါ။
Data CD/DVD ေတြကို burn လုပ္မယ္ ဆိုရင္၊ ဒါမွမဟုတ္ CD/DVD ေတြကို copy ကူးမယ္ ဆုိရင္ သံုးလို႔ရမယ့္ CD/DVD burner software ေတြ အမ်ားႀကီး ရိွပါတယ္။ Nero Burning ROM ဆိုရင္ အရမ္း နာမည္ၾကီးပါတယ္။ ဒါေပမယ့္ အဲဒီလို နာမည္ၾကီး CD/DVD burner software ေတြက အလကားမရတဲ့ အျပင္ တစ္ကယ္တမ္း အမွန္အကန္ ၀ယ္မယ္ ဆိုရင္ ေစ်းလညး္ ၾကီးပါတယ္။
အခု ကၽြန္ေတာ္ free ရတဲ့ CD/DVD burner program ေလး တစ္ခုကို ေျပာျပခ်င္ပါတယ္။ လံုး၀ free ရတဲ့ အျပင္ ေလးစားစရာေကာင္းေလာက္ေအာင္ လုပ္ေဆာင္ ႏိုင္စြမ္းလညး္ အေတာ္ေလးကို စံုတာကို ေတြ႕ရပါတယ္။ Installer file size ကလည္း ေသးေသးေလးပါ။
CD BurnerXP ဆိုတဲ့ software ေလးပါ။
Internet ကေန လြယ္လြယ္ေလး ရွာၿပီး အခမဲ့ download လုပ္ယူလို႔ ရႏိုင္ပါတယ္။ CD/DVD အျပင္ Blue-Ray နဲ႔ HD DVD ေတြကိုေတာင္ burn လုပ္ေပးႏိုင္ပါတယ္။ ကိုယ့္ရဲ႕ ကြန္ပ်ဴတာ မွာေတာ့ burner drive ရိွဖို႔ လိုတာေပါ့ေနာ္။

Nero BurningROM လိုမ်ိဳး ေစ်းၾကီးၿပီး ၾကီးက်ယ္တဲ့ software ေတြကို မသံုးပဲ အခမဲ့လည္းျဖစ္တဲ့ CD/DVD burner software ကို အမွန္အကန္ သံုးၾကည့္ခ်င္တယ္ ဆိုရင္ CD Burner XP ဆိုတဲ့ burner software ေလးကို သံုးၾကည့္ပါလို႔ အၾကံျပဳခ်င္ပါတယ္။ ကၽြန္ေတာ့ အတြက္ေတာ့ DVD ကူးတာ၊ multi-session disic ေတြဖန္တီးတာ၊ ISO image file ေတြလုပ္တာ၊ image file ေတြကို Disc ေပၚကို ျပန္ေ၇းတာ အားလံုးအတြက္ အဆင္ေျပေအာင္ လုပ္ေပးႏိုင္တဲ့ အတြက္ အေတာ္ေလး သေဘာက်မိ ပါတယ္။
Freeware ျဖစ္တ့ဲအတြက္ license ျပႆနာ ေတြ နဲ႔ crack လုပ္ရတဲ့ ကိစၥ ေတြလည္း မရိွေတာ့ ဘူးေပါ့။

Friday, August 20, 2010

Nvidia reference driver ကို OEM GPU အတြက္ install လုပ္ျခင္း (အပိုင္း ၂)

Nvidia web site က download လုပ္ယူလို႔ ရတဲ့ driver ထဲမွာ Apple MacBook ေတြရဲ႕ Nvidia Geforce 320M  အတြက္ support မပါပါဘူး။ ဒါနဲ႔ ကၽြန္ေတာ္ ေရွ႕မွာ ေျပာခဲ့တဲ့ နည္းအတိုင္း ရမရ လက္ေတြ႕ စမ္းၾကည့္ ခဲ့ပါတယ္။
Geforce 320M ရဲ႕ device ID ပါတဲ့ စာေၾကာငး္ကို Windows 7 device manager ကေန ၾကည့္ၿပီး မွတ္ထား လိုက္ပါတယ္။ ၿပီးေတာ့ Nvidia က ရတဲ့ driver အသစ္ရဲ႕ INF file ထဲမွာ device ID ဆင္တူမယ့္ စာေၾကာင္း ကို ရွာၾကည့္ေတာ့ device ID နဲ႔ ဆင္တူတဲ့ စာေၾကာင္းေတာင္ ရွာလို႔ မရခဲ့ ပါဘူး။

ဒါနဲ႔ Geforce 320M အတြက္ နဂိုမူလ driver အေဟာင္းကို ဖြင့္ၿပီး အဲဒီထဲက INF file ထဲမွာ device ID ပါတဲ့ စာေၾကာင္းေတြကို ရွာပါတယ္။ ၂ ခုေတြ႕ပါတယ္။ အဲဒီ စာေၾကာင္း ၂ ခုလံုးကို copy ကူးလိုက္ၿပီး driver အသစ္ရဲ႕ INF file ထဲမွာ မူလ driver အေဟာင္းက ေနရာခ်တဲ့ ပံုစံအတိုင္း ကူးထည့္ လိုက္ပါတယ္။ 
ၿပီးေတာ့ driver အေဟာင္းရဲ႕ INF file ထဲက "Geforce 320M" ဆိုတဲ့ device description နာမည္ပါတဲ့ စာေၾကာင္းေတြကို ရွာၿပီး သူတို႔ကို ခုနကလိုပဲ driver အသစ္ရဲ႕ INF file ထဲကို copy ကူးထည့္ လိုက္ပါတယ္။

အားလံုး ကူးလို႔ ၿပီးေတာ့ Nvidia ရဲ႕ driver အသစ္ကို install လုပ္ေတာ့ compatible device ကို မေတြ႕ဘူး ဆိုတဲ့ error message မျပေတာ့ပဲ အဆင္ေျပေျပ install လုပ္သြားပါတယ္။ တစ္ခုပဲ ရိွပါတယ္။ Windows 7 က ကၽြန္ေတာ္တု႔ိ modify လုပ္ထားတဲ့ driver ကို signature မေတြ႕လု႔ိ install လုပ္မွာ ေသခ်ာလား ေမးပါလိမ့္မယ္။ Install anyway ကိုသာ ေရြးေပးလိုက္ပါ။ သူ႔ဘာသာ ဆက္ၿပီး install လုပ္သြား ပါလိမ့္မယ္။ Windows ကို reboot လုပ္ၿပီးတဲ့ အခ်ိန္မွာ diver အသစ္က ကၽြန္ေတာ့ Geforce 320M နဲ႔ ေကာင္းေကာင္း အလုပ္ လုပ္တာကို ၀မ္းသာစြာ ေတြ႕လိုက္ရပါတယ္။

ဒါေၾကာင့္ တစ္ကယ္လို႔ Nvidia web site က ရတဲ့ latest driver အသစ္ရဲ႕ INF file ထဲမွာ ကိုယ့္ graphic chip ရဲ႕ hardware ID ကို လံုး၀ ရွာလို႔ မေတြ႕ရင္လည္း ျပႆနာ မရိွပါဘူး။ Driver အေဟာင္းထဲက အတိုင္း သက္ဆိုင္ရာ စာေၾကာင္းေတြကို ကူးထည့္ ေပးလိုက္ရင္လည္း ေကာင္းေကာင္း အလုပ္လုပ္ ႏိုင္ပါတယ္ လို႔ ေျပာခ်င္ပါတယ္။ တစ္ခုေတာ့ ရိွပါတယ္။ ကၽြန္ေတာ္တို႔ download ဆြဲထားတဲ့ driver က ကၽြန္ေတာ္တုိ႔ graphic chip family နဲ႔ အလုပ္လုပ္ ဖို႔ေတာ့ လိုပါတယ္။ (မ်ားေသာ အားျဖင့္ လုပ္ပါတယ္)

ဒီ information အရဆိုရင္ ေနာက္ဆို Nvidia GPU ေတြ အတြက္ driver support မရမွာ မပူရေတာ့ ဘူးေပါ့။ Device description နာမည္ ပါတဲ့ စာေၾကာင္းေတြမွာ device နာမည္ကို ကိုယ္ၾကိဳက္တာ ေလွ်ာက္ေပးလု႔ိ ေတာင္ ရႏိုင္ပါတယ္...။ :)

Wednesday, August 18, 2010

Install Nvidia drivers for OEM GPUs

ATI က laptop computer ေတြမွာ သံုးတ့ဲ သူ႔ရဲ႕ Mobility Radeon graphic processor ေတြအတြက္ mobility driver ေတြကို ATI web site မွာ download လုပ္ခြင့္ မေပးပဲ laptop ထုတ္လုပ္သူ Original Equipment Manufacturer (OEM) ေတြဆီကေနပဲ download လုပ္ခြင့္ ေပးပါတယ္။ ဒါေၾကာင့္ ATI က driver update လုပ္တိုင္း desktop GPU သံုးသူေတြသာ update လုပ္ခြင့္ ရၿပီး laptop သံုးသူ ေတြကေတာ့ update လုပ္ခြင့္ မရခဲ့ပါဘူး။ အဲဒါကို ေျဖရွင္းဖို႔ Mobility Modder အေၾကာင္းကို ကၽြန္္ေတာ္ ေဆြးေႏြး ဖူးပါတယ္။

အခုတစ္ခါ ATI နဲ႔ အၿပိဳင္ ထိပ္တန္း GPU ထုတ္လုပ္ သူ Nvidia အတြက္ပါ။ အခုေနာက္ပုိင္း Nvidia က ထုတ္တဲ့ တစ္ခ်ိဳ႕ laptop GPU ေတြလညး္ driver ရွာရတာ ခက္ပါတယ္။ Nvidia web site မွာ ေပးထားတဲ့ driver list ထဲမွာ သူတို႔ နာမည္ မပါတာေတြ ေတြ႕ရတတ္ ပါတယ္။ Apple MacBook နဲ႔ MacBook PRO ကို Windows OS နဲ႔ သံုးတဲ့ သူေတြ ပိုၿပီး သိမွာပါ။ ဥပမာ- Geforce 320M, Geforce 330M…။

ကိုယ့္ရဲ႕ laptop မွာ ပါတဲ့ Nvidia GPU (Graphic Processing Unite) အတြက္ Nvidia web site မွာ support မပါဘူး ဆိုရင္ (OEM) manufacturer ဆီကေန သြားရွာရ ပါတယ္။ Nvidia web site က ရတဲ့ ေနာက္ဆံုး ထြက္ updated driver က သံုးလို႔ မရပါဘူး။ Install လုပ္တာနဲ႔ setup program က compatible ျဖစ္တဲ့ device ကို ရွာလို႔ မေတြ႕ဘူး ဆိုၿပီး error message ေပးၿပီး install လုပ္ခြင့္ မေပးပါဘူး။ တစ္ကယ္လို႔ ဘယ္လိုပဲ ျဖစ္ျဖစ္ Nvidia က ထုတ္တဲ့ latest driver ကို ကိုယ့္ရဲ႕ laptop GPU အတြက္ သံုးခ်င္တယ္ ဆိုရင္ လုပ္လို႔ ရတဲ့ နည္းရိွပါတယ္။
အမွန္က Nvidia က ကၽြန္ေတာ္တို႔ laptop GPU ရဲ႕ hardware ID ကို သူ႔ရဲ႕ device list ထဲမွာ မထည့္ ေပးထားတဲ့ အတြက္ driver setup program က error ျပၿပီး install လုပ္ မေပးတာပါ။ ဒါေၾကာင့္ ကၽြန္ေတာ္တုိ႕က device ID list ထဲကို ကိုယ့္ဘာသာ ထည့္ေပးရပါမယ္။

ပထမဆံုး လုပ္ရမွာက ကိုယ့္ laptop ၀ယ္တုန္းက ပါလာတဲ့ driver အေဟာင္း ကို ထည့္ထား ၿပီးသား
ဆိုရင္ ကိုယ့္ laptop မွာရိွတဲ့ GPU ရဲ႕ hardware ID ကို မွတ္ထား ရပါမယ္။
Device Manager ကုိ ဖြင့္ပါ။ (My Computer ကို Right Click လုပ္ၿပီး Properties ကေန သြားရင္ ရပါတယ္)။ Display adapters ကို ဖြင့္လိုက္ရင္ ကိုယ့္စက္ထဲမွာ ရိွတဲ့ graphic card ကို ျမင္ရ ပါမယ္။ သူ႔ကို right click လုပ္ၿပီး ေပၚလာတဲ့ menu ကေန Properties ကို ေရြးလိုက္ပါ။
Properties dialog box တစ္ခု ေပၚလာရင္ Details ဆိုတဲ့ tab ေလးကို သြားလိုက္ပါ။ Property ဆိုတဲ့ drop list ကေန Hardware IDs ဆိုတာကို ေရြးလိုက္ပါ။ (ပံုမွာၾကည့္ပါ)

Hardware Ids list ထဲက ဒုတိယ စာေၾကာင္းကို copy ကူးမွတ္ထားပါ။ ဒါမွမဟုတ္ ေရးမွတ္ထား လိုက္ပါ။ သူ႔မွာ SUBSYS ဆိုတဲ့ စာသား ပါရပါမယ္။

ဥပမာ- PCI\VEN_10DE&DEV_0A29&SUBSYS_035B1234

ဒုတိ အဆင့္အေနနဲ႔ Nvidia ကေန latest driver ကို download လုပ္ပါ။ ကိုယ့္မွာ ရိွတဲ့ Windows OS နဲ႔ ကိုက္ညီတာကို download ဆြဲေပါ့ေနာ္။ သူ႔ထဲမွာ ပါတဲ့ file ေတြကို folder တစ္ခု ထဲကို ျဖည္ခ် လိုက္ပါ။
အဲဒီ file ေတြထဲကမွ nvac.inf ဆိုုတဲ့ file ေလးကို ေတြ႕ေအာင္ ရွာၿပီး Notepad လို မ်ိဳး text editor နဲ႔ ဖြင့္လိုက္ပါ။ Find ကိုသံုးၿပီး ခုနက ကၽြန္ေတာ္တုိ႔ ေရးမွတ္ထားတဲ့ ကၽြန္ေတာ္တို႔ laptop ရဲ႕ hardware ID ကို ရွာပါ။  
အေရးၾကီးတာက ရွာတဲ့ေနရာမွာ SUBSYS ေနာက္က နံပါတ္ေတြကို မထည့္ပါနဲ႔။
ဥပမာ- ကၽြန္ေတာ္တို႔ ရွာတဲ့ ID က PCI\VEN_10DE&DEV_0A29&SUBSYS ဆိုတာ မ်ိဳးပဲ ျဖစ္ရ ပါမယ္။

Find နဲ႔ ရွာလိုက္လို႔ %NVIDIA_DEV.0A29.01% = ပါတဲ့ စာေၾကာင္း ေတြ႕ၿပီ ဆိုရင္ သူ႔ ေနာက္နားမွာ ရိွတဲ့ hardware ID ကို ကၽြန္ေတာ္တုိ႔ ခုနက ေရးမွတ္ထားတဲ့ ကၽြန္ေတာ္တုိ႔ရဲ႕ hardware ID တစ္ခုလံုးနဲ႔ အစားထုိး လိုက္ပါ။ ၿပီးရင္ေတာ့ file ကို save လုပ္ၿပီး ပိတ္လုိက္ပါ။

တစ္ကယ္လို႔ Driver list ထဲမွာ ကိုယ့္ hardware ID ကို ဘယ္လိုမွ ရွာလု႔ိမရဘူး ဆိုရင္ driver အေဟာင္းက hardware ID ပါတဲ့ စာေၾကာင္း (မ်ားေသာအားျဖင့္ ၂ ခုျဖစ္တတ္ပါတယ္) ေတြကို copy ကူးၿပီး driver အသစ္က inf file ထဲကို ထည့္ေပးလိုက္ လို႔လည္း ရႏိုင္ပါတယ္။

အေပၚက အဆင့္ေတြ အားလံုးၿပီးသြားရင္ Nvidia driver ကို ျဖည္ခ်ထားတဲ့ folder ထဲက setup.exe ကို run ၾကည့္ရင္ driver installer က hardware ကို မေတြ႕ဘူး ဆိုတဲ့ error မေပးေတာ့ပဲ install လုပ္သြားပါ လိမ့္မယ္။

အခု ကၽြန္ေတာ္ ေျပာျပတဲ့ နည္းက hardware အားလံုး နဲ႔ အလုပ္လုပ္ခ်င္မွ လုပ္မွာပါ။ ကိုယ့္ စက္ထဲမွာ ရိွတဲ့ hardware, driver version, installer version အေပၚ မူတည္ၿပီး ရႏိုင္ မရႏိုင္ ဆိုတာ ရိွလာႏိုင္ ပါတယ္။ ကိုယ့္ဘာသာ စမ္းၾကည့္ေပါ့ေနာ္။

Tuesday, August 17, 2010

Sound problem with Windows 7 on MacBook PRO

Apple က သူ႔ရဲ႕ Macbook (white) ေတြနဲ႔ MacBook PRO ေတြကို ျပင္ပ design ေရာ၊ hardware ေတြကိုပါ ျပင္ၿပီး အသစ္ထုတ္ခဲ့ပါတယ္။ အဓိက ေျပာင္းလဲသြားတာက CPU ေတြ ေကာင္းလာတဲ့အျပင္ အထူးသျဖင့္ graphic processor (GPU) ေတြကိုလည္း အဆင့္ျမွင့္ခဲ့ပါတယ္။
အရင္က shader 16 ခုပဲ ပါတဲ့ Nvidia Geforce 9400M ကေန အခု ေနာက္ model ေတြမွာ shader 48 ခုပါၿပီး DDR3 memory ကို သံုးတဲ့ Geforce 320M ေတြကို အစားထိုးခဲ့ ပါတယ္။ 15” နဲ႔ 17” MacBook PRO မွာ ဆိုရင္ Geforce GT 330M ေတြ ပါလာ ပါတယ္။ GT model ေတြက shared memory ကို မသံုးပဲ dedicated graphic memory ကို သံုးတဲ့ အျပင္ memory bus width လည္း ပိုက်ယ္တဲ့ အတြက္ performance ပိုေကာင္း ပါတယ္။


၂၀၁၀ ခုႏွစ္ထုတ္ MacBook PRO တစ္လံုး ၀ယ္ၿပီး Windows 7 Home Premium (OEM) edition ကို install လုပ္ခဲ့ ပါတယ္။ OEM Windows 7 က Retail ထက္ အမ်ားၾကီး ေစ်းသက္သာ ပါတယ္။ မေကာင္းတာ တစ္ခု က OEM version ေတြက ကြန္ပ်ဴတာ တစ္လံုးမွာ install လုပ္ၿပီး activate လုပ္ၿပီးရင္ ေနာက္ထပ္ ကြန္ပ်ဴတာ တစ္လံုးကို ေျပာင္းလု႔ိ မရေတာ့ ပါဘူး။ ဒါေၾကာင့္ ေစ်းသက္သာတာေပါ့။ ဒါေပမယ့္ laptop လုိ hardware သိပ္ အေျပာင္းအလဲ မရိွပဲ နဲ႔ ကိုယ္ကလည္း ေရရွည္သံုးမယ္ ဆိုရင္ အဆင္ေျပတယ္ေလ။ OEM Windows 7 Home Premium က 130S$ ေလာက္ပဲ ရိွပါတယ္။ Retail version က S$ 325 ေလာက္ရိွပါတယ္။

အခု ကၽြန္ေတာ္ မွ်ေ၀ခ်င္တာက ကၽြန္ေတာ့ ရဲ႕ MacBook PRO မွာ Windows 7 ကို ထည့္ၿပီးေနာက္မွာ ၾကံဳခဲ့ရတဲ့ sound ျပႆနာ ကုိ ေျပာျပခ်င္ ပါတယ္။ MacBook ေတြ ၀ယ္ရင္ Mac OS X installation DVD တစ္ခါထဲ ပါလာပါတယ္။ အဲဒီ Mac OS X DVD ထဲမွာ Windows ကို MacBook ေပၚကို install လုပ္ၿပီးရင္ Windows အတြက္ လုိအပ္တဲ့ drivers ေတြနဲ႔ အထိန္း program ျဖစ္တဲ့ BootCamp ပါလာပါတယ္။ BootCamp ကုိ install လုပ္ၿပီး မွသာ Windows နဲ႔ MacBook က ေကာင္းေကာငး္ အျပည့္အ၀ အလုပ္လုပ္မွာပါ။
ကၽြန္ေတာ္က MacBook PRO 13” ေပၚမွာ Windows 7 ကို install လုပ္ခဲ့ ပါတယ္။ လိုအပ္တဲ့ BootCamp နဲ႔ drivers ေတြကိုလည္း install လုပ္ခဲ့ ပါတယ္။ အားလံုး OK တယ္ ေျပာ၇မွာေပါ့ေနာ္။ ကၽြန္ေတာ့ MacBOOK PRO ရဲ႕ sound chip က Cirrus Logic က chip ပါ။ အဲဒါ built-in speaker ေတြကလည္း Windows 7 မွာ အလုပ္လုပ္ ပါတယ္။ ဒါေပမယ့္ တစ္ခ်ိန္မွာေတာ့ headphone (နားက်ပ္) ကို MacBook PRO 13” ရဲ႕ audio output port မွာ တပ္လိုက္ေတာ့ MacBook PRO ရဲ႕ speaker က အသံတိတ္သြား ေပမယ့္ head phone မွာ ဘာသံမွ မၾကားရပါဘူး။ အေတာ္ ကို ျပႆနာ တက္ပါတယ္။ ဒါနဲ႔ sound driver ကို ျပန္ၿပီး install လုပ္ၾကည့္လည္း မရပါဘူး။ Soundcard ထုတ္လုပ္သူရဲ႕ web site ကို သြားၿပီး driver အသစ္ကို install လုပ္ၿပီး စမ္းၾကည့္ေတာ့လည္း အဆင္မေျပပါဘူး။ ဒါနဲ႔ ကၽြန္ေတာ့ MacBook PRO က hardware က ပ်က္တယ္လို႔ေတာင္ ထင္မိပါေသးတယ္။ ဒါေပမယ့္ Mac OS X ထဲမွာက်ေတာ့ နားက်ပ္ က ေကာင္းေကာင္း အလုပ္လုပ္ ပါတယ္။ ဒါက MacBook PROနဲ႔ Windows 7 ကို သံုးတဲ့ သူတိုင္း ၾကံဳရႏိုင္တဲ့ ျပႆနာပါ။

ဟိုလုပ္ ဒီလုပ္ ေလွ်ာက္စမ္းရင္း ေနာက္ဆံုးမွာ BootCamp က ျပႆနာ တက္တယ္ လို႔ ယူဆမိခဲ့ ပါတယ္။ ဘာလို႔လည္း ဆိုေတာ့ BootCamp က Windows နဲ႔ MacBook hardware ၾကားမွာ အဓိက အလုပ္လုပ္ ေပးတဲ့ program ျဖစ္လို႔ပါ။ ဒါနဲ႔ပဲ Apple Support web site ကို သြားၿပီး MacBook PRO အတြက္ update version ျဖစ္တဲ့ ေနာက္ဆံုးထြက္ BootCamp Upgrade ကို download ဆြဲၿပီး install လုပ္လုိက္တာ အားလံုး အဆင္ေျပသြား ခဲ့ပါတယ္။ တစ္ကယ္တမ္း အဆင္ ေျပခ်င္ေတာ့လည္း လြယ္လြယ္ေလး ေပါ့ေနာ္။

ဒါေၾကာင့္ ကၽြန္ေတာ္ ေျပာခ်င္တာက MacBook PRO ကို သံုးေနၿပီး Windows 7 ကို install လုပ္ၿပီးမွ headphone က အလုပ္မလုပ္ရင္ တစ္ျခား ဘာမွ လုပ္မေနပါနဲ႔။ Apple Support ကို သြားၿပီး latest BootCamp Upgrade ကို ထည့္လိုက္ရင္ အဆင္ေျပသြား မယ္ လို႔ ေျပာခ်င္ပါတယ္။

Thursday, August 5, 2010

Good open source 3D engine...

OGRE ဆိုတဲ့ Open Source 3D engine ဟာ 2001 ခုေလာက္က စၿပီး အခု ေနာက္ပိုင္းမွာ အေတာ္ေလး ေခတ္စား လာပါတယ္။ သူ႔ကို အရင္က game အတြက္ သီးသန္႔ လုပ္ထားတဲ့ rendering engine လို႔ ေတြးထားခဲ့ ေပမယ့္ ေနာက္ပိုင္းမွာ game ေတြ အတြက္တင္ မကပဲ၊ simulation, interactive 3D environments ေတြနဲ႔ visualization, researchကိစၥတစ္ခ်ိဳ႕ မွာပါ သံုးလာၾက ပါတယ္။

OGRE graphic rendering engine ကို Windows, Mac, iPhone စသည္ျဖင့္ platform အမ်ိဳးမ်ိဳး အတြက္ ရႏိုင္ပါတယ္။ OGRE SDK ကို သံုးမယ္ ဆိုရင္ SDL, OpenGL တုိ႔ကို သံုးရတာထက္ ပိုၿပီး အဆင္ေျပ လြယ္ကူ၊ ျမန္ဆန္ ေစမွာပါ။ Rendering ကိစၥေတြကို scratch ကေန စၿပီး အေသးစိတ္ မလုပ္ခ်င္ဘူး ဆိုရင္ OGRE engine က အေတာ္ေလး အဆင္ေျပ ေစမယ္ ထင္ပါတယ္။ Game အတြက္မွ မဟုတ္ပါဘူး။ တစ္ျခား simulation နဲ႔ educational project ေတြမွာလညး္ သံုးလို႔ ရတာေပါ့ေနာ္။
Visual C++ 2005/2008/2010 အတြက္လညး္ project ေတြ နဲ႔ demo/tutorial ေတြလည္း အမ်ားၾကီး ရိွတဲ့အတြက္ ေလ့လာရတာလည္း အဆင္ေျပမယ္ လို႔ ေမွ်ာ္လင့္ပါတယ္။ သူ႔အတြက္ လိုအပ္တဲ့ 3D model ေတြကိုလည္း နာမည္ၾကီး Maya လို 3D application ေတြကေန export လုပ္ယူလို႔ ရသလို free ရၿပီး အရမ္းနာမည္ ၾကီးတဲ့ Blender လို 3D creating application ေတြကေနလည္း export လုပ္လုိ႔ ရတဲ့အတြက္ free version သံဳးခ်င္သူေတြ အတြက္လည္း အဆင္ေျပ ေစပါတယ္။ OGRE engine ကို game အတြက္ပဲ ျဖစ္ျဖစ္၊ simulation application အတြက္ပဲ ျဖစ္ျဖစ္၊ visualization အတြက္ပဲ ျဖစ္ျဖစ္ 3D loading and rendering ကိစၥ ေတြမွာ အခ်ိန္ကုန္ သက္သာေအာင္၊ လြယ္ကူေအာင္ သံုးလို႔ ရႏိုင္ပါတယ္။

OGRE နဲ႔ ပါတ္သက္တဲ့ link ကို ေအာက္မွာ ေပးထားပါတယ္။ Free လည္းျဖစ္တဲ့၊ tutorial နဲ႔ supporting ေကာင္းတဲ့ 3D rendering engine ကို ရွာေနသူေတြ အတြက္ OGRE engine ဟာ စဥ္းစား ၾကည့္သင့္တဲ့ open source 3D rendering engine တစ္ခု ျဖစ္တယ္ ဆိုတာ အၾကံေပးခ်င္ပါတယ္။

Wednesday, August 4, 2010

Think about your laptop's graphic processor (GPU)

Laptop computer ေတြကို ၀ယ္မယ္ ဆိုရင္ အခုေနာက္ပိုင္းမွာ CPU သက္သက္တင္ မဟုတ္ပဲ Graphic Processing Unit လို႔ေခၚတဲ့ (GPU) ကိုလည္း ေသေသခ်ာခ်ာ ထည့္သြင္း စဥ္းစား လာၾကပါၿပီ။ အရင္တုန္းကေတာ့ game ေတြ အသည္းအသန္ ကစားတတ္တဲ့ gamer မဟုတ္ရင္ GPU ကို ထည့္စဥ္းစားေလ့ မရိွခဲ့ ပါဘူး။
ဒါေပမယ့္ အခုေနာက္ပိုင္းမွာ အဆင္ျမင့္ လုပ္ေဆာင္ ခ်က္ေတြ ပါတဲ့ GPU ေတြ ေစ်းက် လာတာေရာ၊ game တင္မဟုတ္ပဲ တစ္ျခား application ေတြကလည္း GPU ရဲ႕ အဆင့္ျမင့္ လုပ္ေဆာင္ခ်က္ ေတြကို လိုအပ္လာ ေၾကာင့္ GPU ဟာ laptop ၀ယ္ရင္ ထည့္သြင္း စဥ္းစားစရာ ျဖစ္လာပါတယ္။

တစ္ကယ္ပါ… မယံုမရိွနဲ႔…။ ဥပမာ ေျပာရရင္ - Blue-ray disc ေတြနဲ႔ High Definition (HD) video ေတြ ၾကည့္မယ္ ဆိုရင္ GPU ေကာင္းေကာင္း ရိွရင္ ရုပ္ထြက္ ပိုေကာင္းမွာ ေသခ်ာပါတယ္။ Nvidia ရဲ႕ VP3 video processor လိုမ်ိဳး၊ ATI ရဲ႕ UVD2 လို GPU ထဲမွာ ေပါငး္ထည့္ေပးထားတဲ့ special video decoding processor ေတြက HD movie/video ေတြ ၾကည့္တဲ့ အခ်ိန္မွာ သာမာန္ထက္ ပိုေကာင္းေအာင္ လုပ္ေဆာင္ေပး ႏိုင္ၾကပါတယ္။ အဲဒီလို အဆင္ျ့မင့္ GPU ေတြက laptop ေတြမွာေတာင္ monitor ႏွစ္ခုထက္ ပိုၿပီး တပ္လို႔ ရေအာင္ လုပ္ေပးႏိုင္ပါတယ္။ ၿပီးေတာ့ HDMI (High Definition Multimedia Interface) port ကေန တစ္ဆင့္ အသံ နဲ႔ အရုပ္ ၂ ခုလံုးကို တစ္ခါထဲ ပို႔ေပးတဲ့ လုပ္ေဆာင္မႈ ေတြလည္း ပါတတ္ပါတယ္။ Nvidia နဲ႔ ATI တို႔ ေနာက္ဆံုးေပၚ GPU ေတြဆိုရင္ Youtube ရဲ႕ HD video ျပသမႈကိုပါ ပိုေကာင္းသထက္ ေကာင္းေအာင္ လုပ္ေဆာင္ ေပးႏိုင္တဲ့ video processor ေတြ ပါလာတာကို ေတြ႕ႏိုင္ပါတယ္။
Game ေတြ ကစားမွ မဟုတ္ပါဘူး။ 3D နဲ႔ HD graphic rendering ေတြ၊ decode/encode ေတြ လုပ္မယ္ဆိုရင္ GPU ေကာင္းေကာင္း ပါတဲ့ laptop ကို စဥ္းစားတာ အသင့္ေတာ္ဆံုး ပါပဲ။ ကၽြန္ေတာ္ကေတာ့ ဒီေန႔အထိ Intel ရဲ႕ GMA (Graphic Media Accelerator) ေတြကို Nvidia/ATI တို႔ ေနရာမွာ စဥ္းစားလုိ႔ကို မရေသးတာ ေတာ့ အမွန္ပါပဲ၊
ကၽြန္ေတာ္ အခု ေဆြးေႏြးခ်င္တာက တစ္ခါတစ္ေလ laptop ၀ယ္ရင္း GPU အတြက္ စဥ္းစားတယ္ ဆိုရင္ model နံပါတ္ သိပ္မကြာရင္ (ေယ်ဘူယ်အားျဖင့္) စြမ္းေဆာင္ရည္ အတူတူပဲ လို႔ ယူဆတတ္ၾကပါတယ္။ ဥပမာ- Nvidia Geforce 9100 နဲ႔ Geforce 9200 လို႔ ေတြ႕လိုက္ရင္ သိပ္မကြာေလာက္ ပါဘူး။ အဆင္ေျပတာကို ယူလိုက္ပါ လို႔ စဥ္းစားတတ္ ၾကပါတယ္။ ဒါေပမယ့္ သိထားသင့္တာက တစ္ခါတစ္ေလမွာ model နံပါတ္ ေလး တစ္ခုေလာက္ ကြာလိုက္တာနဲ႔ overall performance အရမ္းကြာတယ္ ဆိုတာ သတိထားသင့္ပါတယ္။ 9100 နဲ႔ 9200 ဟာ တစ္ကယ္တမ္း စြမ္းေဆာင္ရည္ အေတာ္ကြာပါတယ္။
အဲဒါနဲ႔ ပါတ္သက္ၿပီး model နံပါတ္ နဲနဲ ပဲ ကြာတဲ့ Nvidia နဲ႔ ATI တို႔ရဲ႕ GPU ၂ ခုစီကို အဆင့္ျမင့္ game ေတြနဲ႔ စမ္းသပ္ထားတဲ့ chart ကို ကၽြန္ေတာ္ ျပထားပါတယ္။ အဲဒီမွာ ၾကည့္လိုက္ရင္ သိသာပါတယ။္ GTX 460 နဲ႔ GTX 470 လိုမ်ိဳး ဆိုရင္ ပံုမွန္အားျဖင့္ သိပ္မကြာဘူးလို႔ ယူဆတတ္ၾက ပါတယ္။ ဒါေပမယ့္ တစ္ကယ္ တမ္း performance ကြာဟ ခ်က္ကို ပုံေတြမွာ ၾကည့္ရင္ သိႏိုင္ပါတယ္။ Radeon HD 5830 နဲ႔ Radeon HD 5850 တို႔ရဲ႕ စြမ္းေဆာင္ရည္ ကြာဟခ်က္ကိုလည္း ေလ့လာၾကည့္ပါေနာ္။
Mobility RadeonHD 3450 နဲ႔ Mobility RadeonHD 3470 ေတြမွာ ဆိုရင္လည္း ၂ ခုစလံုးမွာ unified shaders အခု 40 စီပါပါတယ္။ ATI ရဲ႕ 40 shaders လို႔ ေျပာရင္ အၾကမ္းအားျဖင့္ Nvidia GPU ေတြရဲ႕ 8 shaders နဲ႔ ညီပါတယ္။ (ATI shaders = Nvidia shaders * 5 , because 5 dimensional vs 1 dimensional shaders)
3450 နဲ႔ 3470 မွာ memory bus width ကလည္း 64-bit အတူတူပဲ ျဖစ္ပါတယ္။ ဒါေပမယ့္ ကြာတာက GPU ရဲ႕ clock speed ကြာပါတယ္။ 3470 က ပိုျမန္ပါတယ္။ ဒါေၾကာင့္ စြမ္းေဆာင္ရည္မွာ ကြာျခားသြားတာ ေပါ့။

Nvidia G103M နဲ႔ G105M ဆိုတဲ့ laptop GPU ႏွစ္ခုကို ႏိႈင္းယွဥ္ ၾကည့္ရေအာင္။ သူတို႔ ၂ ခုလံုးမွာ 8 unified shaders ပါတာလည္း တူပါတယ္။ GPU core clock speed 640Mhz လညး္ တူပါတယ္။ Video processor လည္း တူပါတယ္။ ဒါေပမယ့္ G103M က အရမ္းေႏွးတဲ့ DDR2 memory အမ်ိဳးအစားကိုပဲ graphic memory အေနနဲ႔ အသံုးျပဳၿပီး၊ G105M က ပိုျမန္တဲ့ GDDR2, GDDR3 လို graphic specialized memory ေတြကို သံုးတဲ့အတြက္ overall မွာ စြမ္းေဆာင္ရည္ အမ်ားၾကီး ကြာဟမႈ ရိွႏီုင္ပါတယ္။

ဒါေၾကာင့္ laptop ၀ယ္တဲ့ အခါမွာ GPU ေတြကို ထည့္စဥ္းစားမယ္ ဆိုရင္ ေသေသခ်ာခ်ာ စဥ္းစားသင့္တယ္ လုိ႔ အၾကံျပဳခ်င္ ပါတယ္။

Monday, July 19, 2010

FREE partition manager for Win 7 (32/64-bit)

Windows 7 OS ေပၚမွာ hard disk ကို partition ခြဲခ်င္တယ္၊ ဒါမွမဟုတ္ ရိွထားၿပီးသား partition ေတြကို resize, edit, move, copy, format လုပ္တာေတြ လုပ္ခ်င္တယ္ ဆိုရင္ အဆင္ေျပ တဲ့ software တစ္ခုကို ေျပာျပခ်င္ပါတယ္။

အရင္က ကၽြန္ေတာ္ ေျပာျပဖူးတဲ့ ESUS က free version မွာ 32-bit OS ကိုပဲ support လုပ္ပါတယ္။ အခု Partition Wizard Home Edition ကေတာ့ Windows 7 (32-bit) အတြက္ေရာ၊ Windows 7 (64-bit) အတြက္ပါ partition လုပ္ငန္း ေတြကို လုပ္လို႔ ရေအာင္ ကူညီေပးပါတယ္။ FREE ရတဲ့အတြက္ သာမာန္ partition လုပ္ခ်င္တဲ့ အလုပ္ မ်ိဳးေလာက္အတြက္ အမ်ားၾကီး အဆင္ေျပပါတယ္။
သူ႔ရဲ႕ user interface (UI) ကလည္း Windows 7 မွာ built-in ပါတဲ့ disk management tool ထက္ အမ်ားၾကီး ပိုေကာင္းပါတယ္။ User အတြက္ အမ်ားၾကီး လြယ္ကူေစပါတယ္။
ေအာက္မွာ ေပးထားတဲ့ link ကေန download လုပ္ႏိုင္ပါတယ္။

Compatibility for VC++ 2008 on Win7 (64-bit)

Microsoft Windows 7 ကို သံုးၿပီး Visual Studio နဲ႔ အလုပ္လုပ္တဲ့ သူေတြ အတြက္ compatibility ျပႆနာ ေလးေတြ ရိွတတ္ပါတယ္။ ကၽြန္ေတာ္ ကိုယ္တုိင္လည္း မၾကာမၾကာ ဆိုသလို ေတြ႕ၾကံဳခဲ့ရပါတယ္။
အထူးသျဖင့္ Visual Studio 2005 နဲ႔ Visual Studio 2008 ေတြ သံုးၿပီး Win7 ေပၚမွာdevelop လုပ္တဲ့ အခါမွာ compile လုပ္မရတာ၊ linker error ေတြ ျပတာ မ်ိဳးေတြ ျဖစ္တတ္ပါတယ္။ အဲဒီ error တက္တဲ့ same project ကိုပဲ WinXP/Win Vista ေတြပၚမွာ သြား run ရင္ ေကာင္းေန ျပန္ေရာ။ အထူးသျဖင့္ 64-bit Windows 7 ကို သံုးရင္ compatibility ျပႆနာ ပိုေတြ႕ရပါတယ္။
ကၽြန္ေတာ္ ၾကံဳခဲ့ရတဲ့ ျပႆနာက Windows 7 Professional (64-bit) ေပၚမွာ Visual C++ 2008 (32-bit) ကို သံုးတဲ့ အခ်ိန္မွာ ေတြ႕ခဲ့ရတဲ့ ျပႆနာပါ။ CMAKE ကို သံုးၿပီး project တစ္ခုကို Visual C++ 2008 ကို နဲ႔ build လုပ္ဖို႔ ၾကိဳးစားတဲ့ အခ်ိန္မွာေရာ၊ VC++ 2008 IDE ကေန build လုပ္တဲ့ အခ်ိန္မွာပါ Cannot open program database ဆိုတဲ့ error message ျပၿပီး build လုပ္လို႔ မရခဲ့ ပါဘူး။ ဒါေပမယ့္ အဲဒီ project ကိုပဲ 32-bit Windows 7 ေပၚမွာ build လုပ္ေတာ့ ဘာျပႆနာမွ မေတြ႕ရပဲ build လုပ္လို႔ ရခဲ့ပါတယ္။
တစ္ခ်ိဳ႕က Windows 7 (Professional နဲ႔ Ultimate) ေတြမွာ ပါတဲ့ Virtual WinXP mode ကို သံုးဖို႔ အၾကံေပး ပါတယ္။ Forum ေတြမွာ ၀င္ၾကည့္ေတာ့လည္း hard disk check လုပ္ဖို႔၊ VS ကို ျပန္ install လုပ္ဖို႔ စသည္ျဖင့္ အမ်ိဳးမ်ိဳး ေတြ႕ရ ပါတယ္။

ဒါေပမယ့္ ေနာက္ဆံုးမွာ အရိုးရွင္းဆံုး နည္းလမ္းနဲ႔ ေျဖရွင္းႏိုင္ခဲ့ ပါတယ္။ Windows 7 (64-bit) ေပၚမွာ install လုပ္ထားတဲ့ Visual Studio 2008 (32-bit) ရဲ႕ shortcut ေပၚမွာ right-click လုပ္ၿပီး compatibility setting ကို ျပင္ေပးလိုက္တာနဲ႕ အဆင္ေျပသြား ပါတယ္။
ဒါေပမယ့္ သတိထားရမွာက compatibility setting ကို ျပင္ရင္ မ်ားေသာအားျဖင့္ Windows XP (service pack 3) ကို ေရြြးတတ္ၾက ပါတယ္။ Visual Studio 2005 နဲ႔ 2008 ေတြအတြက္ Windows 7 မွာ compatibility ကို ေရြးမယ္ ဆိုရင္ Windows Vista (service pack 1) ဒါမွမဟုတ္ (service pack 2) ကိုပဲ ေရြးရင္ ပိုအဆင္ေျပ ပါတယ္။ Compatibility မွာ Windows XP ကိုေရြးေတာ့ အေပၚက ျပႆနာ မေျပလည္ခဲ့ ပါဘူး။ ဒါန႔ဲ forum ေတြမွာ ေဆြးေႏြးရင္း compatibility setting မွာ Windows Vista (service pack 1) ကိုေရြးလိုက္ေတာ့ project compile လုပ္လို႔ မရတဲ့ ျပႆနာ ေျပလည္သြား ပါတယ္။

ဒါေၾကာင့္ Visual Studio 2005/2008 (32-bit) ေတြကို သံုးၿပီး Windows 7 (64-bit) ေပၚမွာ develop လုပ္မယ္ ဆိုရင္ compatibility မွာ Windows Vista ကို ေရြးရင္ project အေတာ္မ်ားမ်ား အတြက္ ပိုအဆင္ေျပမယ္ လို႔ အၾကံေပးခ်င္ ပါတယ္။

Saturday, July 17, 2010

ကၽြန္ေတာ္ သေဘာက်ခဲ့ေသာ ကဗ်ာေလး တစ္ပုဒ္....

သူငယ္ခ်င္းတစ္ေယာက္က ၾကံၾကံဖန္ဖန္ ဒႆန ဖြင့္ဖူးတယ္...
ဘ၀ၾကင္ေဖၚ ေရြးတယ္ဆိုတာ အေဆာင္မွာ ဟင္းပြဲေရြးသလိုပဲ..တဲ့...
အဆီမ်ားေတာ့ အသားနဲ႔၊ အသားမ်ားေတာ့ အေရက်ဲ ... 
မဆြဲခင္မွာေတာ့ ဟိုဟာေကာင္းႏိုး ဒီဟာေကာင္းႏိုးန႔ဲ... ေရြးလိုက္ရတာ မ်က္စိကိုျပာလို႔....
ဒီလိုနဲ႔ လက္သင့္ရာ ဟင္းတစ္ပြဲ ေကာင္းႏိုးရာရာကို ဆြဲခဲ့... 
အတူစားတဲ့ သူငယ္ခ်င္း ႏိႈ္င္းယွဥ္ရင္း ၾကည့္ေတာ့မွ.. ကိုယ့္ဟင္းခြက္ကနဲ ... ျပန္လဲလို႔မရ.. 
ေဒါပြပြနဲ႔ 
အဖတ္တင္ေနတဲ့ ဟင္းတစ္ပြဲ...ၾကိတ္မွိတ္ပဲ စားခဲ့ရသတဲ့.....။

(credit = ဆရာကိုရန္ႏုိင္ေအး)

Thursday, July 8, 2010

Good book for iPhone developing beginners

Apple iPhone ေတြ ေခတ္စား လာတာနဲ႔ အ မ ွ် iPhone application နဲ႔game ေတြ ဖန္တီးမႈ ဟာလည္း ေခတ္စား လာပါတယ္။ သူတိုု႔ကိုု ေရးရတာ ဖန္တီးရတာ စိတ္၀င္စား စရာ ေကာင္းသလိုု ၀ါသနာ ပါသူေတြ အတြက္ ေပ်ာ္စရာလည္း ေကာင္းပါတယ္။ Game မွ မဟုုတ္ပါဘူး။ တစ္ျခား ရိုုးရိုုး iPhone application ေတြ ဖန္တီး ရတာလည္း စိတ္၀င္စား စရာ ေကာင္းမွာပါ။
အရင္တုုန္းက Apple ဟာ သူ႔ရဲ႕ iPhone SDK ကိုု developer ေတြကိုု ေပးေပမယ့္ close လုုပ္ထားတဲ့ အတြက္ iPhone developer ေတြဟာ iPhone SDK နဲ႔ development အေၾကာင္း ေတြကုုိ openly ေဆြးေႏြးခြင့္၊ forum လုုပ္ခြင့္ မရၾကသလိုု iPhone SDK နဲ႔ ပါတ္သက္တဲ့ စာအုုပ္ေတြ လည္း မထြက္ႏိုုင္ခဲ့ ပါဘူး။ ဘယ္လုုိပဲ ျဖစ္ျဖစ္ iPhone programming ဟာ သာမာန္ အားျဖင့္ Objective-C နဲ႔ Apple ရဲ႕ ကိုုယ္ပိုုင္ development ပံုုစံ အေပၚမွာ အေျခခံ တဲ့ အတြက္ programmer ေတြ အတြက္ learning လုုပ္ရတာ အထူးတလည္ ကိစၥ တစ္ခုု ျဖစ္လာပါတယ္။ ပံုုမွန္ C/C++, Java, dotNET စတဲ့ programming language ေတြကိုု သံုုးေနၾကတဲ့ developer ေတြ အတြက္ လည္း သူတိုု႔ရဲ႕ previous knowledge နဲ႔ experiences ေတြက iPhone development အတြက္ အရမ္းၾကီး အေထာက္ အကူ မျဖစ္လွပါဘူး။ Programming သေဘာတရား ကိုုေတာ့ သိထားတာေပါ့ေလ။
၂၀၀၈ ခုုနွစ္ ကစလုုိ႔ Apple က သူ႔ရဲ႕ iPhone SDK ကိုု open ဖြင့္ေပး လိုုက္တဲ့ အတြက္ developer community ကလည္း ၀မ္းပန္းတသာ ၾကိဳဆိုုခဲ့သလိုု iPhone development forum ေတြ၊ web site ေတြ နဲ႔ စာအုုပ္ေတြ လည္း မိႈလိုု ေပါက္လာခဲ့ပါတယ္။ တစ္ျခား open source iPhone engine ေတြလည္း အမ်ားၾကီး ထြက္လာခဲ့ ပါတယ္။

အခုု ကၽြန္ေတာ္ ေျပာျပခ်င္တာက iPhone development ကိုု စၿပီး ေလ့လာခ်င္တဲ့ Apple environment န႔ဲ မရင္းႏွီးတဲ့ programmer ေတြအတြက္ အစျပဳလုုိ႔ေကာင္းတဲ့ စာအုုပ္ တစ္ခုုကိုု မ ွ်ေ၀ခ်င္ပါတယ္။ ကၽြန္ေတာ္ ကိုုယ္တိုုင္လည္း အေတာ္ေလး သေဘာက်မိ ပါတယ္။
သူ႔ထဲမွာ စာေရးဆရာ က ေျပာထားတာ ကိုုက This book is written to make the life of a beginning iPhone developer as easy as possible လိုု႔ေျပာ ထားပါတယ္။ Beginner ေတြ အတြက္ ဆုုိေပမယ့္ သူ႔ထဲမွာ ရွင္းျပထားတဲ့ အေၾကာင္းအရာ ေတြက တစ္ကယ္ စေလ့လာ သူအတြက္ အရမ္းကိုု ေကာင္းပါတယ္။
Objective-C programming language ရဲ႕ သေဘာတရားေတြ၊ iPhone environment ရဲ႕ သေဘာတရား ေတြနဲ႔ သိထားသင့္တာေတြ အားလံုုး ရွင္းျပထား ပါတယ္။ iPhone application ေတြ အတြက္ သံုုးတဲ့ Interface Builder အေၾကာင္းကိုုလည္း ရွင္းျပထားပါတယ္။ ေနာက္ၿပီး နမူနာ sample code ေတြကိုုလည္း download လုုပ္လုုိ႔ ရတဲ့ အတြက္ ေလ့လာလုုိ႔ အရမ္းေကာင္းပါတယ္။ သာမာန္ game ေတြ အတြက္ လုုိအပ္တာေတြ အျပင္ Map, Location service, accelerometer, email စတဲ့ user application ေတြကိုု ဖန္တီးရာမွာ သံုုးတဲ့ အေၾကာင္း အရာေတြကိုုလညး္ sample codes ေတြနဲ႔ ရွင္းျပထားပါတယ္။

BEGINNING IPHONE SDK PROGRAMMING WITH OBJECTIVE-C ဆိုုတဲ့ စာအုုပ္က iPhone developing ကိုု စၿပီး ေလ့လာမယ့္ developer ေတြအတြက္ ဘယ္လိုုပဲ ျဖစ္ျဖစ္ အေထာက္ အကူျပဳ ႏိုုင္မယ္ လိုု႔ မ ွ်ေ၀ လုုိက္ရပါတယ္။ မ၀ယ္ခ်င္ရင္ Internet မွာ ကိုယ့္ဘာသာ ရွာၿပီး download လုုပ္ယူေပါ့ေနာ္။ :P

Monday, July 5, 2010

Downgrade iPhone OS to older version without jailbreaking

Apple ရဲ႕ iPhone ေတြကို သံုးရင္ သတိထားသင့္တဲ့ အခ်က္တစ္ခု ရိွပါတယ္။ ပံုမွန္အားျဖင့္ ဆိုရင္ iPhone 3GS, iPad နဲ႔ ေနာက္ပိုင္း device ေတြကို Firmware (OS) ကို ေနာက္ထြက္တဲ့ version ကို upgrade လုပ္လိုက္ၿပီးရင္ downgrade ျပန္လုပ္လု႔ိ မရပါဘူး။ ဥပမာ- iPhone 3GS အသစ္တစ္ခုကို ၀ယ္လိုက္တယ္ ဆိုပါေတာ့။ အဲဒီ iPhone 3GS မွာ OS version 3.1.3 ပါတယ္ဆိုရင္ သူ႔ကို iOS4 ကို upgrade လုပ္လိုက္ၿပီးမွ တစ္ခုခု မၾကိဳက္လို႔ 3.1.3 ကို ျပန္ၿပီး restore လုပ္မယ္ ဆိုရင္ Apple က ခြင့္မျပဳပါဘူး။ ကိုယ့္ရဲ႕ device ကို upgrade လုပ္တာပဲ ျဖစ္ျဖစ္ restore လုပ္တာပဲ ျဖစ္ျဖစ္ Apple က သူ႔ရဲ႕ server ကို device ရဲ႕ ECID (Exclusive Chip ID) ကို လွမ္းပို႔ၿပီး signature ကို လွမ္းစစ္ပါလိမ့္မယ္။ ကိုယ့္ device ထဲမွာ ရိွေနတဲ့ OS က latest version ဆိုရင္ ေနာက္ျပန္ ဆုတ္ခြင့္ မေပးတတ္ပါဘူး။
အဲဒါက iPhone user ေတြအတြက္ တစ္ကယ့္ ျပႆနာပါ။ ဒါေပမယ့္ iPhone ကို jailbreak လုပ္ထားၿပီး OS upgrade မလုပ္ခင္မွာ Cydia server ေပၚကို ကိုယ့္ရဲ႕ SHSH signature ေတြကို တင္ထားခဲ့မယ္ ဆိုရင္ေတာ့ iTune မွာ OS ကို restore လုပ္မယ့္ အခ်ိန္မွာ iTune က check လုပ္မယ္ ဆိုရင္ Cydia server ကို လမ္းေၾကာင္းေျပာင္းၿပီး လွည့္စားလို႔ ရပါတယ္။ ဒါေပမယ့္ ဒီနည္းက ကိုယ့္ရဲ႕ iPhone ကို jailbreak လုပ္ဖို႔ လုိပါတယ္။
တစ္ကယ္လို႔ ကိုယ့္ iPhone ကို jailbreak မလုပ္ခ်င္ဘူး ဆိုရင္။ Cydia server ကိုလည္း လွမ္းမသံုးခ်င္ဘူး ဆိုရင္ လုပ္လို႕ရမယ့္ နည္းေကာင္း တစ္ခု ရိွပါတယ္။
Tiny Umbrella လို႔ ေခၚတဲ့ program ေလးကို သံုးႏိုင္ပါတယ္။ ေအာက္မွာ Link ကို ေပးထားပါတယ္။ http://thefirmwareumbrella.blogspot.com 
အဲဒီ program ေလးက iPhone ကို jailbreak မလုပ္ပဲ OS အသစ္ထည့္ၿပီး ခ်ိန္မွာ downgrade ျပန္လုပ္ခြင့္ ေပးပါတယ္။ ဒါေပမယ့္ OS အသစ္ကို install မလုပ္ခင္မွာ ကိုယ့္ iPhone/iPod Touch/iPad ေတြရဲ႕ SHSH signature ေတြကို Tiny Umbrealla ကို သံုးၿပီး စက္ထဲမွာ save လုပ္ၿပီး သိမ္းထားဖို႔ လုိပါတယ္။ Tiny Umbreall က SHSH signatures ေတြကို Cydia server ေပၚကိုလည္း အလိုအေလွ်ာက္ လွမ္းတင္ေပးပါတယ္။
Tiny Umbrella ဟာ ကိုယ့္ device ရဲ႕ SHSH signature ကို အလြယ္တကူ save လုပ္ႏိုင္ေအာင္ စြမ္းေဆာင္ေပးႏိုင္ ပါတယ္။ ၿပီးေတာ့ Cydia server မလိုပဲ local saved file ကေန device ရဲ႕ older OS ကို ျပန္ၿပီး restore လုပ္ႏိုင္ေအာင္ ကူညီေပးပါတယ္။

Latest version iTune ကို အရင္ install လုပ္ပါ။ Tiny Umbrella ကို download လုပ္ပါ။ Windows အတြက္ေရာ၊ Mac အတြက္ပါ ရိွပါတယ္။ သူ႔ကို run လိုက္ၿပီး device ကို connect လုပ္ပါ။ ဒါဆို ဘယ္ဘယ္နားမွာ connected device ကို ျပေနပါလိမ့္မယ္။ ဘယ္ဘက္က Save My SHSH ဆိုတဲ့ button ေလးကို ႏွိပ္လုိက္ရင္ ကိုယ့္ရဲ႕ device ရဲ႕ SHSH signature ကို hard disk ထဲကို သိမ္းေပး ပါလိမ့္မယ္။
ေနာက္ပိုင္းမွာ OS ကို ျပန္ restore လုပ္ခ်င္တယ္ ဆိုရင္ Tiny Umbrella ကို ဖြင့္ၿပီး Start TSS Server ဆိုတဲ့ button ေလးကို ႏွိပ္လိုက္ရင္ TSS server ကို Tiny Umbrella က run လုပ္ေပးပါ လိမ့္မယ္။ ဒါဆုိရင္ အဲဒီအခ်ိန္မွာ iTune ကို သံဳးၿပီး ကိုယ့္ device ရဲ႕ older OS ကို restore လုပ္လို႔ရပါၿပီ။ iTune က Apple server ကို လွမ္းစစ္ကာနီးမွာ TSS Server က လမ္းေၾကာင္းေျပာင္းၿပီး လက္ခံ ေပးပါ လိမ့္မယ္။ ဒါဆို ဘယ္ device ကိုမဆို original older OS ကို downgrade ျပန္လုပ္လို႔ ရၿပီေပါ့။
Newer OS ကို upgrade မလုပ္ခင္မွာ Tiny Umbrella ကို သံုးၿပီး SHSH bloc ကို save လုပ္ထားဖို႔ေတာ့ မေမ့နဲ႔ေနာ္။

ကိုယ့္ရဲ႕ device နဲ႔ OS version ကို ေသခ်ာခ်င္ရင္ Advanced Options ဆိုတဲ့ checkbox ေလးမွာ ႏွိပ္ၿပီး ေအာက္က drop down menu ကေန ကိုယ့္ device န႔ဲ OS Version ကို ေရြးေပးႏိုင္ပါတယ္။ ဥပမာ- iPhone 3GS – 3.1.3
SHSH signature ကို save လုပ္ၿပီးရင္ Display SHSHs ဆိုတဲ့ button ေလးကို ႏွိပ္ၿပီး ကိုယ္ save လုပ္ထားတဲ့ SHSH bloc ေတြ ဘာေတြ ရိွတယ္ဆိုတာ ၾကည့္ႏိုင္ ပါတယ္။ ကိုယ့္ရဲ႕ save လုပ္ထားတဲ့ SHSH file ေတြက ကိုယ့္စက္ထဲက (user name) ေအာက္က shsh ဆိုတဲ့ hidden folder ေအာက္မွာ ရိွပါလိမ့္မယ္။ အဲဒီ file ေတြကို ေနာက္ပိုင္းမွာ ျပန္သံုးလို႔ ရေအာင္ ေသခ်ာတဲ့ တစ္ေနရာရာကို copy ကူးထားလိုက္ေပါ့။

Tiny Umbrella က iPhone ကို jailbreak လုပ္စရာ မလိုပဲ locally saved file ေတြကေန OS ကို downgrade လုပ္ႏိုင္တယ္ ဆုိတာ မွ်ေ၀လိုက္ပါတယ္။ 

အမ်ိဳးမ်ိဳးေသာ iPhone/iPod/iPad firmware file ေတြကို ေအာက္မွာ ေပးထားတဲ့ link ကေန download လုပ္ယူႏိုင္ပါတယ္။
http://www.felixbruns.de/iPod/firmware/

Friday, July 2, 2010

iOS4 on iPhone 3G & iPhone 3GS

Apple ရဲ႕ iOS4 (iPhone OS version 4.0) ထြက္လာၿပီးေတာ့ iPhone 3G, iPhone 3G, iPod Touch 2nd and 3rd generation ေတြမွာ upgrade လုပ္ၿပီး ထည့္လို႔ ရတယ္ ဆုိပါတယ္။
Apple က iPhone 3G နဲ႔ iPod Touch 2nd generation ေတြမွာ iOS4 ကို ထည့္လို႔ ရေပမယ့္ multi-tasking မရႏိုင္ဘူး လို႔ ေျပာထားပါတယ္။ တစ္ကယ္က လံုး၀ မရတာ မဟုတ္ပါဘူး။ သူတို႔မွာ ပါတဲ့ processor က ေႏွးၿပီး memory က နည္းတဲ့ အတြက္ အဆင္မေျပႏိုင္တာပါ။ 

ကၽြန္ေတာ္ သိရသေလာက္ မွ်ေ၀ရရင္….
iPhone 3G ရဲ႕ processor (CPU) က maximum 620 MHz နဲ႔ run ႏိုင္တဲ့ CPU ကို 412 MHz မွာ အလုပ္လုပ္ခုိင္း ထားတာပါ။ Memory 128 MB ပဲ ပါတဲ့အတြက္ တစ္ခ်ိဳ႕ေသာ iOS4 functions ေတြမွာေတာင္ ေႏွးသြားႏိုင္ပါတယ္။
iPhone 3GS မွာက 833 MHz နဲ႔ run ႏိုင္တဲ့ CPU ကို 600MHz ကို underclock လုပ္ထားပါတယ္။ Memory 256MB ပါတဲ့အတြက္ iOS4 ရဲ႕ functions ေတြကို ေကာင္းေကာင္း support လုပ္ႏိုင္ပါတယ္။
iPhone 3GS ရဲ႕ PowerVR SGX graphic processor ဟာလည္း iPhone 3G ရဲ႕ PowerVR MBX lite ထက္ ပိုၿပီး အဆင့္ျမင့္ သလို ပိုလည္း ျမန္ပါတယ္။

ဒါေၾကာင့္ တစ္ကယ္တမ္း ေျပာရရင္ iOS4 ဟာ iPhone 3GS န႔ဲ iPod Touch 3G (3rd generation) ေတြမွာသာ အသင့္ေတာ္ဆံုး ျဖစ္ပါတယ္။ Game ေတြပဲ သီးသန္႔ု ကစားၾကည့္တဲ့ ေနရာမွာ iPod Touch 2nd generation ဟာ iPhone 3G ထက္ပိုျမန္တာကို ေတြ႕ရတယ္ လို႔ ေလ့လာရပါတယ္…။

Thursday, July 1, 2010

A framework for building 2D games for the iPad, iPhone & iPod Touch

Apple iPhone ေတြ ေခတ္စား လာတာနဲ႔ အမွ် iPhone အတြက္ application နဲ႔ game ေတြ ဖန္တီးမႈ ဟာလည္း ေခတ္စား လာပါတယ္။
iPhone အတြက္ application/game ေရးရတာ စိတ္၀င္စားစရာ ေကာင္းသလို ေပ်ာ္စရာလည္း ေကာင္းပါတယ္။ ၿပီးေတာ့ register လုပ္ထားတဲ့ iPhone developer ေတြအတြက္ Apple Store ေပၚကို အလြယ္တကူ upload လုပ္လို႔ ရတဲ့အတြက္ စိတ္လႈပ္ရွားစရာ ေကာင္းတယ္လို႔ ျမင္မိပါတယ္။ iPhone အတြက္ ရိုးရုိး iPhone user interface (UI) ကို သံုးၿပီးေရးတဲ့ application ေတြ နဲ႔ ကိုယ့္စိတ္ၾကိဳက္ UI ေတြနဲ႔ ဖန္တီး ထားတဲ့ game လိုမ်ိဳးေတြ လုပ္ရတာ မတူပါဘူး။ မ်ားေသာအားျဖင့္ game ေတြက ကိုယ္ပိုင္ graphics ေတြနဲ႔ OpenGL ကို သံုးၿပီး render လုပ္ပါတယ္။ ကၽြန္ေတာ္ကေတာ့ Apple iPhone SDK ၇ဲ႕ application UI ကို မသံုးပဲ ကိုယ္ပိုင္ image/graphics ေတြနဲ႔ game ေတြ လုပ္ရတာကို ပိုသေဘာက်ပါတယ္။ iPhone application ေတြကိုလည္း game ေတြလို ကိုယ္ပုိင္ graphic ေတြနဲ႔ လုပ္မယ္ ဆိုလည္း လုပ္လို႔ေတာ့ ရႏိုင္ပါတယ္။
iPhone game ေတြမွာ free version ေတြ ရိွသလို paid version ေတြလည္း ရိွပါတယ္။ မ်ားေသာအားျဖင့္ ပွ်မ္းမွ် အဆင့္မွာ ရိွတဲ့ iPhone game ေတြကို US 1$ ေလာက္နဲ႔ App Store မွာ ေရာင္းၾကပါတယ္။ Download လုပ္တဲ့ အေရအတြက္ အေပၚ မူတည္ၿပီးေတာ့ Apple က developer ကို ၇၀% ေပးပါတယ္။ Apple က ၃၀% ယူတဲ့ သေဘာေပါ့ေနာ္။

iPhone game တစ္ခုကို 1$ နဲ႔ ေရာင္းတယ္ ဆိုလို႔ ႏွစ္ျပားတစ္ပဲ ေစ်းကြက္လုိ႔ မထင္နဲ႔ေနာ္။ တစ္ကယ္တမ္း ေပါက္ သြားတဲ့ game ေလးေတြဆို developer က အရမ္းရတယ္။ ဥပမာ- အခုတစ္ေလာ နာမည္ၾကီးေနတဲ့ Angry Birds ဆိုတဲ့ iPhone game ေလးကိုပဲ ၾကည့္ပါ။ သူ႔ကို App Store မွာ 1$ နဲ႔ ေရာင္းပါတယ္။ ဒါေပမယ့္ အခုအခ်ိန္ထိ သူရသြားတဲ့ download အေရအတြက္က (၄)သန္း ေက်ာ္သြားပါၿပီ။ ဒါဆို developer က ရမယ့္ အေရအတြက္ကို ခန္႔မွန္းၾကည့္ႏိုင္ ပါတယ္။ ဆက္ၿပီးေတာ့လည္း download ေတြ လုပ္ေနဆဲပါ။ အဲဒီ Angry Birds မွာ ဘာ အဆင့္ျမင့္ 3G graphics ေတြမွ မပါပါဘူး။ အားလံုး အလြန္ရိုးရွင္းတဲ့ 2D graphics ေလးေတြ ပဲ သံုးသြားပါတယ္။ Physics engine ကိုေတာ့ အေသအခ်ာ သံုးသြားတာ ေတြ႕ႏိုင္ပါတယ္။ iPhone အတြက္ FREE သံုးလို႔ ရတဲ့ Physics engines ေတြ ရိွပါတယ္။ (ဥပမာ- Box2D လုိမ်ိဳးေပါ့)

ဒါေပမယ့္ အဲလိုၾကီး download ေတြ သန္းခ်ီရဖို႔က လြယ္ေတာ့ မလြယ္ဘူးေပါ့ေနာ္။ Gameplay ကလည္း ေကာင္းမွ၊ လူၾကိဳက္မွ၊ ကံ လည္းေကာင္းမွ၊ marketing န႔ဲ review ေတြလည္း ေကာင္းေကာင္း ရမွ အဲလို ရႏိုင္မွာပါ။ ဘယ္လိုပဲျဖစ္ျဖစ္ အိပ္မက္ လုိ႔ေတာ့ ေကာင္းတာေပါ့ေနာ္။ ကိုယ္လုပ္တဲ့ game ေလးက download ေထာင္ ဂဏန္း ပဲ ရတယ္ဆိုရင္ေတာ့ ကိုယ့္အတြက္ က်န္ေအာင္ ၾကိဳးစား လုပ္လို႔ ရတာေပါ့။
ရိုးရွင္းတဲ့ 2D graphics ေလးေတြနဲ႔ iPhone game ခပ္ ေသးေသးတစ္ခုကို လုပ္ဖို႔ အတြက္ မခက္ပါဘူး။ အလြယ္ ကူဆံုးလို႔ ကၽြန္ေတာ္ ထင္တဲ့ iPhone game engine တစ္ခု ျဖစ္တဲ့ Cocos2D ကို ေျပာျပခ်င္ပါတယ္။
Cocos2D ဟာ အရင္က Python programming language နဲ႔ အရင္ ရိွခဲ့တာ ျဖစ္ၿပီး ေနာက္ပိုင္းမွာ iPhone အတြက္ Objective-C နဲ႔ port လုပ္ခဲ့ပါတယ္။ Cocos2D ဟာ Objective-C programming language ကို သံုးတဲ့အတြက္ သူ႔ကို သုံးဖို႔ Mac OS ေပၚမွာ XCode IDE နဲ႔ Objective C ကို သံုးတတ္ဖို႔ေတာ့ လိုပါတယ္။ ဒါေပမယ့္ သူ႔ရဲ႕ ေကာင္းတဲ့ အခ်က္က သူ႔ကို နားလည္သြားရင္ 2D iPhone application တစ္ခုကို အရမ္း လြယ္လြယ္ကူကူ နဲ႔ ဖန္တီးလို႔ ရေစပါတယ္။ သူ႔မွာ အေတာ္ အသံုး၀င္တဲ့ examples ေတြနဲ႔ developer ကို လြယ္ေအာင္ လုပ္ေပးမယ့္ libraries ေတြ ပါပါတယ္။ အခု ေနာက္ဆံုးထြက္ version ဆိုရင္ iPhone အျပင္ iPad ကိုပါ support လုပ္ပါတယ္။
Cocos2D မွာ graphic rendering အတြက္ functions ေတြနဲ႔ game တစ္ခု ကို ဖန္တီးဖို႔ အတြက္ framework ေတြ ေပးထားၿပီးသား ျဖစ္တဲ့အတြက္ Developer က လိုခ်င္တဲ့ game specific logics ေတြကို ထပ္ျဖည့္ရံုပါပဲ။ Cocos2D က သူ႔ကို နားလည္ သြားရင္ 2D game တစ္ခုကို iPhone ေပၚမွာ ေရးရတာ အမ်ားၾကီး လြယ္ကူ သက္သာေစတာ အမွန္ပါ။

Cosos2D မွာ Physics engine နဲ႔ sound engine ေတြလည္း ပါၿပီးသား ျဖစ္ပါတယ္။ Tile-based rendering ေတြ လုပ္ဖို႔ အတြက္ Tilemap engine လည္း ပါပါတယ္။ Transition effects နဲ႔ တစ္ျခား graphic effects ေတြကိုလည္း လြယ္လြယ္ကူကူ လုပ္လုိ႔ ရတဲ့အတြက္ အေတာ္ေလး အသံုးတည့္ပါတယ္။
Cosos2D နဲ႔ ပါတ္သက္တဲ့ web site ေတြ၊ forum ေတြနဲ႔ tutorial ေတြလည္း အေတာ္မ်ားမ်ား ရိွတဲ့ အျပင္ sample codes ေတြကိုလည္း လြယ္လြယ္ ကူကူ download လုပ္လို႔ ရႏိုင္တဲ့အတြက္ beginners ေတြ အတြက္လည္း အေတာ္ကို အဆင္ေျပတာ ေပါ့ေနာ္။
ကၽြန္ေတာ္ကေတာ့ သာမာန္ 2D iPhone game တစ္ခုကို ပဲျဖစ္ျဖစ္၊ 2D iPhone application တစ္ခုကို ပဲ ျဖစ္ျဖစ္ စၿပီး ဖန္တီးၾကည့္ခ်င္သူေတြ အတြက္ (ObjectiveC ကို ေလ့လာရတာက လြဲရင္) Cocos2D က 100% FREE ရတဲ့ အသင့္ေတာ္ဆံုး framework တစ္ခုလို႔ ေျပာခ်င္ပါတယ္။

Sunday, June 6, 2010

Visual C++ နဲ႔ iPhone game ေရးဖို႔.............

Airplay SDK (http://www.airplaysdk.com) ဆိုတာ Apple ရဲ႕ Mac computer လည္းမလို၊ Objective-C, Cocoa စတဲ့ Mac programming နည္းစနစ္ေတြ လည္း မလိုပဲ iPhone game ေတြကို အေပ်ာ္တမ္းပဲ ျဖစ္ျဖစ္၊ စီးပြားျဖစ္ပဲ ျဖစ္ျဖစ္ ဖန္တီးခြင့္ ရမယ့္ Software Development Kit တစ္ခု ျဖစ္ပါတယ္။
Airplay SDK က iPhone အတြက္မွ မဟုတ္ပါဘူး။ တစ္ျခား mobile device ေတြ အတြက္လည္း အလုပ္လုပ္ ေပးႏိုင္ပါတယ္။ ဒါေပမယ့္ iPhone development အတြက္ free ရႏိုင္တဲ့ အတြက္ iPhone game developer ေတြအတြက္ အဆင္ေျပပါတယ္။
Airplay SdK ကို download ဆြဲယူၿပီးရင္ example ေလးေတြပါ ရပါလိမ့္မယ္။ ဒါေၾကာင့္ ေလ့လာရတာ ပို အဆင္ေျပတာ ေပါ့ေနာ္။ သူ႔မွာ အေတာ္ေလး ေကာင္းတဲ့ game framework နဲ႔ game programming အတြက္ လုိအပ္တဲ့ library ေတြ ပါလာၿပီးသား ျဖစ္တဲ့အတြက္ programmer ေတြက အေသးစိတ္ကို အစကေန လိုက္ေရးစရာ မလိုပဲ သံုးလို႔ ရႏိုင္ပါတယ္။ သေဘာက်စရာ ေကာင္းတာက Airplay SDK ဟာ artists ေတြၾကားမွာ အသံုးမ်ားတဲ့ 3D Studio Max, Maya တို႔လို နာမည္ၾကီး 3D package ေတြနဲ႔ လည္း အလုပ္လုပ္ပါတယ္။ ကၽြန္ေတာ္ အရင္က သိခဲ့တဲ့ open source ျဖစ္တဲ့ SIO2 SDK ဆိုရင္ Blender တစ္မ်ိဳး ထဲနဲ႔ပဲ အလုပ္လုပ္ ပါတယ္။ ဒါေၾကာင့္ Airplay SDK က developer ေတြ အတြက္ သံုးရတာ ပိုၿပီး flexible ျဖစ္မယ္ ထင္ပါတယ္။ အထူးသျဖင့္ 3D application ေတြ လုပ္ခ်င္ရင္ ပိုအဆင္ေျပမယ္ ထင္ပါတယ္။
Objective-C programming language ကိုလည္း ထပ္ၿပီး ေလ့လာစရာ မလိုပဲ pure C++ ပံုစံ နဲ႔ application ေတြကို Windows OS ေပၚမွာ Visual C++ နဲ႔ ဖန္တီးခြင့္ ရတာကလည္း သေဘာက်စရာပါ။ Microsoft Visual Studio ကို programmer က ရင္းႏွီးၿပီးသား ျဖစ္တဲ့ အတြက္ Mac ေပၚမွာ Objective-C နဲ႔ ျပန္လုပ္ရတာထက္ အမ်ားၾကီး အဆင္ေျပ တာေပါ့ေနာ္။
iPhone game လုပ္ခ်င္ သူေတြ အတြက္ ေကာင္းတာက Airplay SDK မွာ GameState manger လိုမ်ိဳး game အတြက္ အေရးၾကီးတ့ဲ framework ေတြကို လုပ္ေပးထားၿပီးသား ျဖစ္တဲ့ အျပင္ example games ေလးေတြလည္း ပါတဲ့အတြက္ အဲဒီ အေပၚမွာ အေျခခံၿပီး စမ္ၾကည့္ သြားလို႔ ရတာေပါ့ေနာ္။

ဘယ္လိုပဲ ျဖစ္ျဖစ္ Airplay SDK က ေလာေလာဆယ္ မွာ Free လည္း download ဆြဲလို႔ ရတယ္။ ကိုယ့္ဆီမွာ Apple Mac computer လည္းရိွစရာ မလိုတဲ့ အျပင္ ေလာေလာဆယ္ iPhone/iPod Touch မရိွေသးရင္ ေတာင္မွ သူ႔မွာ ပါလာတဲ့ iPhone simulator ကို သံုးၿပီး iPhone game ေလးေတြကို စၿပီး စမ္းၾကည့္လို႔ ရတဲ့အတြက္ အေတာ္ေလးကို သေဘာက်စရာ ေကာင္းတယ္လို႔ ျမင္မိပါတယ္။


ခုေနာက္ဆံုး information အေနနဲ႔ သတိထားမိတာက CAPCOM ရဲ႕ နာမည္ၾကီး Resident Evil series ျဖစ္တဲ့ iPhone အတြက္ လုပ္ထားတဲ့ Resident Evil : Degeneration မွာ AirPlay SDK ကို သံုးထားတာ သတိထားမိ လိုက္ပါတယ္။

Solve Internet Explorer issues in Windows 7

Microsoft Internet Explorer (IE) 7 နဲ႔ 8 ေတြမွာ တစ္ခ်ိဳ႕ IE version အေဟာင္းနဲ႔ အလုပ္လုပ္တဲ့ web site ေတြ ခဏခဏ ျပႆနာ တက္တတ္ ပါတယ္။
Windows Vista နဲ႔ Windows 7 ေတြမွာ ပါတဲ့ newer version IE ေတြနဲ႔ compatible မျဖစ္တဲ့ web site ေတြ အမ်ားၾကီးပါ။ တစ္ခ်ိဳ႕ေတြလည္း မၾကာခဏ ဆိုသလို form ေတြျဖည့္ၿပီး submit လုပ္လို႔ မရတဲ့ ျပႆနာ ေတြ၊ web site ေတြကို ၀င္ၾကည့္ၿပီး errorr ခဏခဏ တက္တာေတြ၊ ဒါမွမဟုတ္ web page ထဲက content ေတြ ေပ်ာက္သြား တာေတြ ေတြ႕ရတတ္ ပါတယ္။ Government ကိစၥနဲ႔ ဆိုင္တဲ့ web site ေတာ္ေတာ္ မ်ားမ်ား က Firefox နဲ႔ ေကာင္းေကာင္း အလုပ္ မလုပ္ၾကပါဘူး။ ၿပီးေတာ့ Windows Vista/Windows 7 ေတြမွာ ပါတဲ့ IE အသစ္ေတြနဲ႔လည္း ေကာင္းေကာင္း အလုပ္ မလုပ္တတ္ၾက ပါဘူး။
အဲဒီလိုမ်ဳိး Windows Vista နဲ႔ Windows 7 ေတြမွာ ပါတဲ့ IE ေတြနဲ႔ ျပႆနာ ရိွေနတယ္ ဆိုရင္ IE အေဟာင္း ကိုလည္း virtual mode သံုးၿပီး ျပန္ထည့္စရာ မလိုပဲ ေျဖရွင္းလို႔ ရႏိုင္မယ့္ နည္းတစ္ခုကို ေျပာျပခ်င္ပါတယ္။ ဒါကို သိၿပီးသား လူေတြလည္း အမ်ားၾကီးပါ။ ကၽြန္ေတာ့ အတြက္ေတာ့ Windows 7 ရဲ႕ IE မွာ ၾကံဳေနရတဲ့ ေတာ္ေတာ္ မ်ားမ်ား ေသာ web site errors ေတြနဲ႔ အဆင္ေျပသြား ပါတယ္။
Windows 7 ရဲ႕ IE က Tools menu မွာ Compatibility View Setting... ဆိုတာ ပါပါတယ္။ အဲဒီ setting ကို ဖြင့္ၿပီး Display all websites in compatibility view ဆိုတာကို ေရြးေပးလိုက္ပါ။ (ပံုမွာ ၾကည့္ၾကည့္ပါ)

အဲဒီလို ဆိုရင္ ေတာ္ေတာ္ မ်ားမ်ားေသာ web site ေတြနဲ႔ IE အသစ္ရဲ႕ ျပႆနာ ေျပလည္ သြားတတ္ ပါတယ္။ ကၽြန္ေတာ္ ဆိုရင္ ICA web site ကေန application တစ္ခု တင္တာ IE ရဲ႕ original settings ေတြ နဲ႔ ဆိုရင္ လံုး၀ကို အဆင္ မေျပပါဘူး။ Submit button လည္း ႏွိပ္လိုက္ေရာ error message ေတြပဲ ရခဲ့ပါတယ္။ အဲဒီ compatibility setting ကိုလည္း ျပင္လိုက္ေရာ အားလံုး အဆင္ေျပ ေခ်ာေမြ႕သြားတာ လက္ေတြ႕ ေတြ႕ခဲ့ရပါတယ္။
ဒီ information က မသိေသးသူေတြ အတြက္ေတာ့ IE ျပႆနာ ေတြနဲ႔ ပါတ္သက္ၿပီး အေတာ္ေလး အသံုးတည့္မယ္ လို႔ ေမွ်ာ္လင့္ပါတယ္။