image background full screen : XNA

posted on 26 Jan 2008 02:44 by xnanoob  in Tutorials


โคสะนา : http://www.smewell.com เว็บไซด์สำเร็จรูป ใช้งานง่ายมาก (ขอบอก) เพียงคุณโทรไปแล้วแจ้งว่าได้ข่าวจาก xnanoob ลดทันที 10% ... ขอบคุณค่ะ

 


สวัสดีค่า

วันนี้มาขยาย texture กัน

จุดประสงค์คือ "มี image อยู่ตัวนึงต้องการให้เป็น background และให้มันขยายเต็มหน้าจอพอดี"

จากวันก่อนๆ เราได้เคยขยาย texture กันมาแล้ว(ไม่รู้วันไหนกด)

ทำโดยใช้ method draw ซึ่งเป็นการ scale texture

แต่ในการ scale นั้นจะมีสองแบบด้วยกัน คือ scale แบบ float กับ scale แบบ vector

scale แบบ float นั้นหมายถึง ทำการ scale เป็นเท่าๆ ไป เช่น 0.5 ลดลงครึ่งหนึ่งเป็นต้น

แต่แบบ vector นั้น หมายถึง เราจะทำการกำหนดขนาดให้ scale เป็นสัดส่วนได้ เช่น ความสูงลดลงครึ่งหนึ่ง

ความกว้างลด 30% ก้อทำได้โดยกำหนดเป็น vector เช่น vector(0.5f,03.f) เป็นต้น

จากตรงนี้ ดังนั้นเราสามารถนำไปใช้มั่วได้ ในการซึ่งจะทำให้ให้ texture background fullscreen

ซึ่งใน spritebatch สามารถทำได้โดยใช้ overload method ที่ 7 ในการจัดการนะค่ะ


 
scale.X = screen.Width / TextureBackGround.Width;

scale.Y = screen.Height / TextureBackGround.Height;

จากโค้ดด้านบน ถ้ารูปเล็กกว่าจะก้อจะขยาย(>1)   และถ้ารูปมันใหญ่กว่าก้อจะย่อ(<1)

 

ก้อลองมั่วๆ ไปดูกัน

จบแระค่ะ บายค่ะ เฮือก งุงิ งุงิ

Comment



smilebig smileopen-mounthed smileconfused smilesad smileangry smiletonguequestionembarrassedsurprised smilewinkdouble winkcry

ชอบประโยคจบ 5555

ขอบคุณสำหรับข้อมูลที่มาแนะนำครับ
กำลังหาอยู่พอดี big smile

#1 By GPEN on 2008-01-27 10:45