DinoTalk : รถกระป๋องหรรษา (1)

posted on 20 Apr 2011 10:39 by studiooo in dinosao
Dinosao : สวัสดีครับคุณแบงค์
นายแบงค์ : ครับผม สวัสดีครับ
 
 
Image Hosted by ImageShack.us
Dinosao : วันนี้ คุณแบงค์เรียกผมออกมา ว่าแต่..... วันนี้เรามาทำไรอะไรที่นี่กันครับเนี่ย
นายแบงค์ : ไม่มีอะไรมากหรอกครับ วันนี้ผมแค่มาบ่นนิดหน่อย
 
Dinosao : บ่นอะไรครับ
นายแบงค์ : คือยังงี้ครับ เรื่องมันมีอยุ่ว่า.......
 
Dinosao : เดี๋ยวนะครับ ผมก็เพิ่งจะนึกออก
นายแบงค์ : นึกอะไรออกครับ
 
Dinosao : ทำไมผมต้องมานั่งฟังคุณบ่นด้วยครับเนี่ย เล่าไปคนเดียวไม่ได้รึไงครับ
นายแบงค์ : โห่ว นิดหน่อยน่ะครับ บ่นคนเดียวมานานมันก็เหงา อยากจะหาเพื่อนมาฟังบ้าง
 
Dinosao : ตีหน้าเศร้าเล่าความเท็จนะครับ
นายแบงค์ : น้ำตาจะไหลครับ
 
Dinosao : อย่ามาลีลาศครับ ผมไม่แพ้น้ำตาผู้ชาย
นายแบงค์ : เสียใจครับ ว่าแต่เมิงจะฟังมั้ยครับ เปลืองมาหลายบรรทัดแล้วครับ
 
Dinosao : (ช็อค) อ่า..... ไหนๆ ผมก็มาแล้วครับ
นายแบงค์ : ขอบคุณครับ คือเรื่องมันมีอยู่ว่า......
 
Dinosao : เดี๋ยวนะครับ ผมก็เพิ่งจะนึกออก
นายแบงค์ : เริ่มเยอะนะครับ เมิงนึกอะไรออกอีกครับ
 
Dinosao : ได้ข่าวว่าตอนนี้เวลางาน คุณแบงค์ไม่ได้ทำงานเหรอครับ
นายแบงค์ : โหว แฉแต่เช้า ผมทำเสร็จแล้วตะหากครับ ว่างก็เลยมานั่งเขียนเล่นก่อนลืมตะหากครับ
 
Dinosao : อ๋อ ฟังดู ข้างๆ คูๆ ชาบูๆ นะครับเนี่ย
นายแบงค์ : โอเค จริงๆ ผมอู้น่ะครับ ถ้าพอใจแล้ว ผมขออณุญาติเริ่มเลยนะครับ
 
Dinosao : คุณได้รับสิทธิ์นั้นเดี๋ยวนี้ครับ
นายแบงค์ : น้ำตาจะไหลครับ
Dinosao : เริ่มด่วนเลยครับ ก่อนผมจะนึกอะไรออกอีก
นายแบงค์ : จัดครับ คือ เรื่องมันมีอยู่ว่า....... วันก่อนผมกลับบ้านครับ
 
Dinosao : วันอื่นไม่ได้กลับเหรอครับ
นายแบงค์ : .... กวนตรีนละครับ 
 
Dinosao : ขอโทษครับ มันอดไม่ได้
นายแบงค์ : ครับ ต่อครับ วันก่อนผมกลับบ้านเร็วครับ เลยได้นั่งเรือด่วนกลับจากท่าเรือสาทร มาลงที่วังหลัง ศิริราชครับ
 
Dinosao : แล้วไงต่อครับ
นายแบงค์ : อ่า ใจเย็นนะครับ พอลงจากเรือที่วังหลังแล้ว ผมก็ต้องนั่งรถกระป๋องต่อครับ เหตุการณ์เป็นแบบนี้ครับ
 
..........................................................................................................
 
นายแบงค์ : ลงจากท่าเรือ ป๊าบบ ผมก็เดินๆๆ จะไปต่อรถสองแถวครับ
 
Image Hosted by ImageShack.us
 
นายแบงค์ : ชะ โชคดีมาก
 
Image Hosted by ImageShack.us
 
นายแบงค์ : พอดีบนรถเหลือที่นั่งหนึ่งที่พอดีครับ
 
Image Hosted by ImageShack.us
 
นายแบงค์ : ผมก็กระหยิ่มยิ้มในใจ "แหล่มม๊าก ขึ้นปุ๊บ รถออกป๊าบบ ถึงบ้านเร็วแน่น๊อน"
 
Image Hosted by ImageShack.us
 
นายแบงค์ : แต่แล้ว.......
 
Image Hosted by ImageShack.us
 
นายแบงค์ : .................................
 
Image Hosted by ImageShack.us
 
 
Image Hosted by ImageShack.us
 
....................................................................................
 
 
 
Dinosao : โอ........ เรื่องมัน..... น่าเศร้านะครับ
นายแบงค์ : น้ำตาจะไหลครับตอนนั้น
Dinosao : งั้นคุณแบงค์ก็อดขึ้นรถกระป๋องคันนั้นกลับบ้าน ก็ต้องรอรถคันใหม่สินะครับ
นายแบงค์ : เรืองมันไม่ง่ายอย่างนั้นสิครับ......
 
 
โปรดติดตามตอนต่อไป.....

papervision 3d library เมพๆ บน flash/flex

posted on 22 Sep 2009 09:21 by studiooo in mahn

สวัสดีครับพี่น้อง

 ขณะนี้กำลังเรียน stat อยู่แล้วเกิดเบื่อโลกแตกขึ้นมาเลย มานั่งเขียน entry เล่นๆ

วันนี้ข้าพเจ้าจะขอนำเสนอพี่น้องทั้งหลายเรื่อง Papervision ครับ

สินค้าที่นำมาเสนอวันนี้เป็นของแรง ที่ความจริงมันก้อแรงมานานแล้วอ่ะนะ ถ้าครัยรู็จัก ก้อลองมาดูกันว่ามันทำหยังได้มั่ง

papervision เป็น library บน flash/flex/actionscript มีอายุมาหลายขวบปีแล้ว พอตัว สิ้งที่มันทำได้คือ ช่วยให้สามารถ เขียน object 3d บน actionscript ได้อย่างงดงาม

วันนี้จะนำเสนอ ตัวปัญญาอ่อนๆให้ดูสักตัว

อย่างแรกที่คนเขียนโปรแกรมในโลก 3d ก้อคือ viewport ครับ viewport คือ...เรียกว่า canvas ละกัน มันเป็น canvas ที่เอาไว้ render ตัว 3d ลงไปนั่นเอง

ทีนี้ ใน papervision ก้อมี สิ่งนี้เช่นกัน

วิธีการใช้ library นั้นง่ายด๊ายๆ

อย่างแรกเราสร้าง Class extends BasicView ขึ้นมาก่อน อันนี้จะเป็นเหมือน กับ stage ของเราใน flash นะครับ

แต่ว่า stage ที่สามารถยัดของ 3 มิติทั้งหลายแหล่ลงไปได้อ่ะ

พอสร้าง basicview object เสร็จเราก้อ สามารถ เอา ไอ้นี่ไปยัดใน mxml / main class ของ action script / ของ flash ยังไงก้อได้อ่ะ 

มาดู BasicView ก่อนนิดเนิง ตัว BasicView นี้จะมี ตัวแปร ที่สำคัญ อยู่สองสามตัว

 1. camera - กล้อง...แหม่ ตรงตัวไปมั้ย แต่มันเป็นแค่นั้นจริงๆครับ โดยปกติแล้วกล้อง คือ object ที่แทนตัว เราอยุ๋ใน 3d space, มันมีความสามารถ ในการ ตั้งค่าว่าจะไปมองที่แห่งหนใด บน space นั้นๆ (ฟังก์ชั่น camera.lookAt(object_to_look_at)) 

 2. scene - ฉาก .. แหม่ ตรงตัวอีกอ่ะแหละ scene ก้อคือ ฉากเลยครับๆ ฉากๆๆๆ คือ อยากมีอะไรก้อใส่ๆ เข้าไป เพราะฉะนั้นเวลาอยากให้มี object อะไรใน ฉาก เราก้อ call scene.addChild(new Cone()); อะไรอย่างงี้ มันก้อจะเอา cone ไปยัดให้ใน ฉาก ง่าย! แหล่ม! แจ่มสุด!!

 3. viewport - อันนี้ เหมือน เลนส์ในตา เรานะครับ เราสามารถ apply filter ใส่ตาเราได้ (ใส่แว่น) อะไรอย่างงั้น นอกจากนั้น viewport เป็นส่วนที่กำหนดขนาด ของ viewing space ของเราด้วย 

ลองมาดู code ง่ายๆ ไม่ปวดไต ปวดตับกันหน่อย

 อันนี้เขียน view ให้มัน มี พื้นระนาบ อ่ะ 

ขโมยมาจาก

http://tutorials.osbo.com/papervision3d/basicview/ (คิเกียจเขียนเอง .. จะอัพบล๊อกยังจะคิเกียจอีก ฮ่าๆๆ) 

package

{

  import flash.events.Event;

  import org.papervision3d.events.InteractiveScene3DEvent;
  import org.papervision3d.materials.ColorMaterial;
  import org.papervision3d.objects.primitives.Plane;
  import org.papervision3d.view.BasicView;

  public class Papervision3DBasicViewExtension extends BasicView
  {
    private var material :ColorMaterial;
    private var object   :Plane;

    public function Papervision3DBasicViewExtension()
    {
      super(640, 480, true, true, "Target");

      material             = new ColorMaterial(0x000000);
      material.doubleSided = true;
      material.interactive = true;

      object = new Plane(material);
      scene.addChild(object);

      object.addEventListener(InteractiveScene3DEvent.OBJECT_OVER, handleObjectOver);
      object.addEventListener(InteractiveScene3DEvent.OBJECT_OUT, handleObjectOut);
      object.addEventListener(InteractiveScene3DEvent.OBJECT_PRESS, handleObjectPress);

      startRendering();
      //or
      //addEventListener(Event.ENTER_FRAME, handleEnterFrame);
    }

    override protected function onRenderTick(e:Event=null):void
    //or
    //private function handleEnterFrame(e:Event):void
    {
      object.yaw(1);

      super.onRenderTick(e);
      //or
      //singleRender();
      //or
      //renderer.renderScene(scene, camera, viewport);
    }

    private function handleObjectOver(e:InteractiveScene3DEvent):void
    {
      viewport.containerSprite.buttonMode = true;
    }

    private function handleObjectOut(e:InteractiveScene3DEvent):void
    {
      viewport.containerSprite.buttonMode = false;
    }

    private function handleObjectPress(e:InteractiveScene3DEvent):void
    {
      material.fillColor = Math.random() * 0xFFFFFF;
    }
  }
}

 พอจบ BasicView แล้ว เราก้อจะเอา class ไปยัด ตรงไหนก้อด่ะ ตามสบาย

 

โจบบ! 

ทีนี้ อันที่เพิ่งจบไป เป็นโลกของมนุดเดินดินเค้าเขียนกัน

 อยากดูของที่ พวกเทพเค้าเขียนกันมั้ย..

 http://www.smashingmagazine.com/2009/08/10/discovering-papervision3d-best-design-practices-and-tutorials/ 

 http://www.adobe.com/jp/events/cs3_web_edition_tour/page6.html 

(ชาบูๆ พวกเมิงเป็นคนป่ะเนี้ยยยย)

เรื่องมีอยู่ว่า... เมื่อวันก่อน กระผมรู้สึกนอยๆ เลยตั้งชื่อ เอมแบบว่าเข้าใจคนเดียว คนอื่นอย่าแจม

ปรากฏว่า เสือกมีคนเข้าใจจจ

โลกส่วนตัวถูกทำลายลงไปในพริบตา

แต่เป็นคนต้องหัดมองโลกในแงดี หรือมุมต่าง.. พลิกวิกิดให้เป็นโอกาก

เราจำเลือกให้มันเป็นเกมที่เอาไว้ประชันเขากับเพื่อนๆกัน

สิ่งที่กระผมได้ทำลงไปก้อคือว่า

1. เลือกคำที่ต้องการอยากให้คนอื่นมาแปล.. เช่น Mammoth went to siam by BTS

2. ตัดสระทิ้ง ... Mmmth wnt t sm by BTS

3. ตัดช่องว่างทิ้ง ... Mmmthwnttsmbybts

4. copy & paste ไปแปะบนชื่อ เอม แล้วต่อท้ายด้วย <<< "แน่จริงเมิงแปล"

 เอาไปเล่นดูนะครับ ฟังดูงี่เง่าปัญญาอ่อน แต่ก้อสนุกเหลือเชื่อ!!

 

เพิ่มสาระเข้าไปหน่อย สำหรับพวกที่คิเกียจ ตัดสระเอง หรือตัดช่องว่างเอง เรามีบริการเสริมครับ++

เป็น code C++:

const tstirng & removevowelandspace(const tstring & args)
{
// process words
int i = 0;
int _widx = 0;
TCHAR * _word = new TCHAR[args.size()];
for (i = 0; i < args.size();i++)
{
TCHAR _t = args.c_str()[i];
if (_t != 'a' && _t != 'e' && _t != 'i' && _t!='o' && _t!='u'
&& _t != 'A' && _t != 'E' && _t != 'I' && _t!='O' && _t!='U'
&& _t != ' ') {
_word[_widx++] = _t;
}
}
_word[_widx] = NULL; // terminate it
return new tstring(_word).c_str();

}

นำไปดัดแปลงใช้ให้สาแก่ใจเลยครับ

 

ขอทุกท่านจงพบแต่ความสุขความเจริญ

สวัสดี