Design Federbrau 2010 Demo!!
posted on 27 Feb 2010 17:00 by ozstuidio in Design
งาน Design ของเบียร์ Federbrau เบียร์นำเข้าจากเยอรมัน 2010 ส่ง Layout เป็น Demo
หน้าแรกของ theme #1 เป็นหน้า Screen Age ของผู้เข้าชมเว็บไซต์
!! เหมือนมันเป็นธรรมเนียมไปแล้วสำหรับเว็บไซต์ที่เป็น "แอลกอฮอลก์" ต้องมีหน้านี้
ปกติเว็บทั่วไปก็จะมีแต่ให้เลือกวันๆ สกอร์บาร์ผมเลยคิดว่าถ้าเราทำให้ขั้นตอนมันน้อยลงละ
ผมเคยอ่านหนังสือ Text Book เกี่ยวกับ Action Script เล่มนึงเค้ากล่าวไว้ว่า
"การทำงาน Creative คือการซ่อนสิ่งที่ไม่จำเป็น"
** สำหรับการใช้งานก็คือการลดขั้นตอนนั้นเอง
ถ้าสามารถเข้าเว็บได้โดย ผ่านหน้า Screen Age เหมือนเดิมแต่ แค่ 3 คลิ๊กละ หุหุ
ก็เลยออกมาหน้าตาแบบข้างล่าง

หน้าที่สอง ของ theme #1 เป็นหน้า Index
หน้าแรกของ theme #2 เป็นโทนกลางคืน เมืองราตรี เน้นคอนเสิร์ตดนตรี
หน้าแรกของ theme #3 เป็นโทนสีออกเย็นๆ สดชื่นสบายๆ
วู้วววววววววว ^ ^
edit @ 27 Feb 2010 17:23:51 by ozstuidio
เกมใหม่มาให้เล่นกันขำๆนะครับ
posted on 27 Feb 2010 16:21 by ozstuidio in FlashActionScriptsวู้ววววววว ไม่ได้มาอัพเดทบล็อคนานนนนนนมากเลยนะเนี่ย งานเยอะมากไม่มีเวลาเยย
วันนนี้ขอแอบเอาเกมมาฝากให้ลองเล่นกันขำๆ เพิ่งทำเสร็จไม่นานนนี้เองคร๊าบบบ
เกมที่ 1
http://dslr.sony.co.th/games/alpha_cafe_restaurant
เกมที่ 2
http://vaio.sony.co.th/game/matching
เกมเล่นฆ่าเวลาลองเล่นขำๆดูนะครับ
ขอบคุณ ฮาร์ทที่ให้คำปรึกษาครับ....
ตามด้วยอีก 1 เว็บไซต์ หุหุ campaign จาก Sony Bloggie
http://bloggie.sony.co.th/blogger-wall
ลองเข้าไปดูกันนะครับ
ส่วนของ Flash ที่ใช้ก็มี
XML + TweenMax,TweenLite แค่นั้นครับ
^ ^
edit @ 27 Feb 2010 16:32:55 by ozstuidio
เกม มาแนะนำเพิ่งทำเสร็จประมาณอาทิตย์นึง
posted on 06 Jan 2010 18:53 by ozstuidio in FlashActionScripts
งานเกม แนวเก็บของที่หล่นมาเล่นง่ายๆครับ
http://dslr.sony.co.th/games/accessories/
^ ^
edit @ 27 Feb 2010 16:36:16 by ozstuidio
การสร้าง Animation แบบง่ายๆ ภาค 2
posted on 27 Dec 2009 10:08 by ozstuidio in FlashActionScriptsสมัยตอนเรียนเด็กๆ ก็คิดว่าทำไมต้องเรียนพวกฟิสกิส์ เรียนไปจะเอามาใช้ทำไร คณิตศาสตร์เอามาทำไรวะแค่บวกเลขคิดเงินก้พอแล้วนิ สมการบ้าบอไรก็ไม่รู้ แต่แล้วววว.... พอได้มาต้องทำงานสายนี้ ก็จ๊ะเอ๋ทันทีกับ ศุตรคำนวณต่างๆนานามากมาย ก็เลยต้องวิ่งกลับไปหาซื้อหนังสือ คณิตศาสตร์กับฟิสกิส์ ม.1-6 กลับมาอีกที น๊านนนงานเข้า
การหาพื้นที่วงกลมก็ Math.PI*r*r ก็คือ "พายอาร์ำกำลัง 2"
การหาเส้นรอบวงของวงกลมก็คือ 2*Math.PI*r ก็คือ "สองพายอาร์"
Math ก็คือ เป็น Class 1 Class ที่ Flash ได้เตรียมไว้ให้สำหรับนัก Developer ทั้งหลายนั้นเอง
โดยที่จะมีหลากหลายความสามารถ เช่น
- ฟังก์ชั่น Math มีความสามารถในการ random "ค่าที่ได้จะมีการสุ่มออกมาระหว่าง 0 - 1" Math.random()
- ฟังก์ชั่น Math มีความสามารถในการหาค่า sin "การหาค่ามุมของ sin" Math.sin(30) = 0.5
- ฟังก์ชั่น Math มีความสามารถในการหาคา pow "การคำนวณหาค่าของการยกกำลัง" Math.pow(r,2)
โดยที่ Class ของ Math จะมีการถูกกำหนดให้เป็น static เนื่องจากสามารถนำไปใช้ได้เลยไม่ต้องทำการ new เพื่อสร้าง Class นั้นมาใหม่แล้วเรียกใช้อีกที เช่น
var obj:Object = new Object();
var result:Number = Math.random();
เป็นการสร้างตัวแปร obj ขึ้นมาใหม่ที่มีชนิดเป็น Object และมีความสามรถเหมือนกับคลาสของ Object ทั้งหมด
แตกต่างกับคลาส Math ตรงที่สามารถเรียกคลาสมใช้ได้เลยโดยใช้แค่ dot เป็นตัวเชื่อมเท่านั้นเอง
ก็อธิบายพื้นฐานความเข้าใจเรื่องคลาสมาพอสมควรและเนอะ
ลองมาดูเรื่องการทำ Curve ดีกว่า
การทำ curve ขึ้นมานั้นก็คือการทำวงกลมขึ้นมานั้นเองให้มันวิ่งตามเส้นรอบวง ส่วนที่เป็นวงรี หรือวางวงกลมที่ไม่กลมซะทีเดียวก็คือการกำหนดให้ cos , sin มีค่าไม่เท่ากัน และ มุมเพิ่มขึ้นทีละไม่เท่ากันนั้นเอง
ลอง trace ค่าเหล่านี้ออกมาดูนะ
for(var angle:Number = 0;angle
trace(Math.sin(angle))
}
Math.PI = 180องศา ถ้า Math.PI*2 ก็เท่ากับ 360 องศาซึ่งครบรอบวงกลม 1 รอบพอดี
โดยที่ ค่าของมุม เพิ่มขึ้นทีละ 0.1 ค่าที่ trace ออกมาก็จะมีค่าของSin มุมตั้งแต่ 0 - 360 องศา
ลองสังเกตุจากค่าที่ได้ออกมามันจะออกมาตั้งแต่ -1 จนถึง 1 ดังนั้นถ้าเป็นค่า cos ก้จะได้ -1 จนถึง 1
เหมือนกันเพียงแต่ว่า ค่าที่เริ่มต้นแต่ละองศาของ sin, cos นั้นต่างกันเช่น
sin(0) = 0, cos(0)= 1
sin(30) = 0.5, cos(30)= 0.866
sin(45) = 0.707, cos(45)= 0.707
sin(60) = 0.866, cos(60)= 0.5
sin(90) = 1, cos(90)= 0
sin(180) = 0, cos(180)= -1
sin(270) = -1, cos(270)= 0
sin(360) = 0, cos(360)= 1
ลองมาเขียนทดสอบกันหน่อยละกันนะครับ
จากตัวอย่าง code อยู่ข่างล่างนี้นะครับ
package
{
import flash.display.Sprite;
import flash.events.Event;
[SWF(width="300" , height="300" ,frameRate="30" , backgroundColor="0x000000")]
//@author aoxzy@hotmail.com
public class Main extends Sprite
{
private var ball:Sprite;
private var centerX:Number;
private var centerY:Number;
private var xSpeed:Number;
private var ySpeed:Number;
private var angleX:Number;
private var angleY:Number;
private var rangeX:Number;
private var rangeY:Number;
public function Main():void
{
angleX = new Number(0);
angleY = new Number(0);
centerX = new Number(stage.stageWidth / 2);
centerY = new Number(stage.stageHeight / 2);
xSpeed = new Number(0.7);
ySpeed = new Number(0.5);
rangeX = new Number(50);
rangeY = new Number(100);
ball = new Sprite();
addChild(ball);
ball.graphics.beginFill(0x00FFFF);
ball.graphics.drawCircle(0, 0, 5);
ball.graphics.endFill();
addEventListener(Event.ENTER_FRAME, updatepos);
}
private function updatepos(e:Event):void
{
ball.x = centerX + Math.sin(angleX) * rangeX;
ball.y = centerY + Math.cos(angleY) * rangeY;
angleX += xSpeed;
angleY += ySpeed;
}
}
}
ปล.ลองเขียนดูนะครับ ถ้างงตรงไหนลองถามเข้ามากันได้นะคัรบหรือว่าถ้าอยากให้เขียนเกี่ยวกับเรื่องไหนเป็นพิเศษสามารถแนะนำเข้ามาได้นะครับ
edit @ 27 Dec 2009 10:58:37 by OZstudio