Texture2D.FromFile กับ Content.Load
posted on 20 Jan 2008 23:09 by xnanoob in Tutorials

สวัสดีค่า
วันนี้มีจดหมายจากทางบ้าน เขียนเข้ามาถาม (คือเมล์คุยกันนั้นแระ)
แบบอยากจะรู้ว่าอะไรมันคือความแตกต่างระหว่าง Texture2D.FromFile กับ Content.Load
เพราะมันก้อโหลดได้เหมือนกาน
คำตอบ คือ "ไม่รู้เหมือนกานอะงิ" ว่ามันแตกต่างกันอย่างไร?
แต่จะพยายามไปหาคำตอบมาให้แล้วกานนะ
ก้อคือจะไปถามพี่กูมา แล้วยังไงจะมา edit ใน entry นี้ แล้วกานนะ
ส่วนคร่าวๆ ที่พอจะมั่วได้ ก้อประมาณแบบว่า
Texture2D.FromFile
-
มันจะเป็น static method ได้มั่ง
-
อันนี้มันจะเอาไว้ใช้ตอน runtime ได้ แบบว่าไงอะ runtime อะ ตามนั้น (แล้วจะพูดทำไมวะ)
-
รองรับไฟล์ที่ใหญ่กว่า Load (มั่ง) (แบบว่าอันนี้ประสบการณ์นะ ไม่มีไรอ้างอิง แบบเจอ .Load error เปลี่ยนมาใช้ .FromFile ผ่าน)
-
เหมาะกับไฟล์ที่ไม่ได้อยู่ใน project
Content.Load
-
หนูเดาเอานะ คือมันจะคอมไฟล์เป็น .xnb เวลาเอาไปใช้ก้อโหลดเอาจาก xnb เพราะฉะนั้นในแบบตอน runtime ยกตัวอย่าง , ทำเป็น opendialog browse file มาจากข้างนอก จะ load กลางอากาศ มันก้อจะ error ถ้าเป็น Content.Load
-
เห็นเค้าบอกกันว่า เพราะตอนโหลด คุณสังเกตดิ เวลาเราส่งของไปให้เพื่อนช่วยลองเล่น ก้อส่งไปเฉพาะโฟลเดอร์ที่ build แล้ว มีปะหละ file ที่เป็น .jpg หรือ png หมายความว่า Content.Load มันจะโหลดจาก asset names ไม่ได้โหลดจากไฟล์
-
Content.Load น่าจะเหมาะสำหรับงานใน xbox ซึ่งเค้า[1]เดาว่า .FromFile จะไม่เหมาะหรืออาจมีปัญหาใน xbox
-
Content.Load จะ error ถ้าไฟล์ใหญ่ (อันนี้ก้อไม่รู้เหมือนกันนะว่าใหญ่เท่าไหร่?)
-
Texture ต้องเป็นส่วนหนึ่งของ project
-
เร็วกว่า .FromFile เพราะมันจะ build ครั้งแรกตอน สร้างครั้งเดียว
สรุปคร่าวๆ คือในกับนอก project แระ ตอนนี้ที่มีความรู้
มั่งนะ หรือเปล่า
จบแระค่ะ บายค่ะ
งุงิ งุงิ
เอกสารอ้างอิง
[1] http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=1143479&SiteID=1
ปล. ยังไง ใครรู้ความแตกต่าง ช่วยหนูด้วยนะค่ะ งิ
โคสะนา : บริการห้องเช่า อพาร์ตเมนต์ ห้องเช่า รายเดือน พหลโยธิน 24 ใกล้เซ็นทรัลลาดพร้าว








เรื่องที่ fromfile โหลดไฟล์ใหญ่ที่ .Load ทำไม่ได้
ทีแรกก็นึกว่ามันได้จริงๆ แต่ปรากฎว่า มันย่อขนาดลงครับ น่าจะปรับให้พอดีกับเท่าที่รับได้
ซึ่งคิดว่า รับได้เท่าไหร่นี่น่าจะอยู่ที่ฮารดแวร์ด้วย
#1 By NaT (58.97.35.130) on 2008-01-21 09:32