อะไรคือข้อแตกต่างระหว่างคลาสสไปรต์ของ Unity และ Texture2D


19

ความสามัคคีมีทั้งTexture2Dชั้นเรียนและSprite(ที่เกี่ยวข้องSpriteRenderer) อะไรคือความแตกต่างระหว่างสองคลาสนี้? ทั้งสองเป็นตัวแทนภาพสำหรับเกม 2D ฉันควรจะชอบเกมอื่นมากกว่าหนึ่งเกมหรือไม่?

ความแตกต่างหลักระหว่างสองอย่างที่ใช้Spriteฉันไม่ต้องการสร้าง "บิลบอร์ด" รูปสี่เหลี่ยมตัวเองหรือไม่? และนั่นSpriteจะแสดงผลโดยตรงกับกล้องเสมอ?

คำตอบ:


16

คุณถูกต้อง - ค่อนข้าง โดยค่าเริ่มต้น Sprites จะแสดงผลโดยตรงกับกล้องอย่างไรก็ตามคุณสามารถเปลี่ยนแปลงได้อย่างง่ายดายหากคุณใช้ Sprite Renderer ในฉาก 3 มิติ

สไปรท์เป็นวัตถุทางกายภาพในฉากของคุณในขณะที่ Texture2D เป็นสิ่งที่บอกไว้ พื้นผิว ต้องแนบพื้นผิวกับวัสดุและวัสดุไปยังวัตถุเกม (เช่นเครื่องบิน)

ย้อนกลับไปใน Unity 3.x วันที่คุณไม่ได้รับการสนับสนุนแบบสไปรต์ทันทีดังนั้นคุณต้องหมุน Sprite Manager / Class ของคุณเอง (หรือคุณมีตัวเลือกในการซื้อสินทรัพย์จากร้านขายสินทรัพย์ที่พยายามแก้ไขปัญหานี้ ) Unity ไม่ได้หมายถึงการสนับสนุนเกม 2 มิติ (แต่นักพัฒนาพบวิธีที่จะทำให้มันเกิดขึ้น) จนถึง 4.x เมื่อ Unity Developers ให้การสนับสนุนเกม 2D ในตัว (sprite, sprite sheet, ฟิสิกส์ 2D) ในตัว

หากคุณกำลังเล่นเกม 2D พยายามใช้คลาส Sprite เสมอ มันดีกว่าการกลิ้งของคุณเองและให้มากกว่าที่พอ


AFAIK Spritesจะถูกบรรจุในแผนที่โดย Unity โดยอัตโนมัติหากคุณต้องการ
bummzack

นั่นเป็นเรื่องจริงใน Unity Pro นัก
วางบั๊กที่

4
ฉันเชื่อว่าตอนนี้ว่างกับ Unity 5
Chris Hawkes

@ChrisHawkes แน่นอนมันเป็น - เพียงเพื่อยืนยันคำสั่ง :) - สไปรต์สามารถบรรจุลงในแผนที่ (และมันเป็นวิธีปฏิบัติที่แนะนำ) ผ่านหน้าต่าง> Sprite Packer
AgentKnopf

6

นี่คือข้อดีที่ฉันชอบเกี่ยวกับ Sprite:

  1. SpriteRenderer ทั้งหมดใช้วัสดุเดียวกันโดยค่าเริ่มต้น Sprite-Default แม้ว่าพวกเขาจะมีภาพ / แผนที่ที่แตกต่างกันดังนั้นจึงเป็นไปตามเงื่อนไขหนึ่งของการแบทช์แบบไดนามิกของ Unity โดยอัตโนมัติ
  2. คุณสามารถใช้โทนสีที่แตกต่างกัน (ผ่านตัวตรวจสอบของ SpriteRenderer) กับสไปรต์แต่ละตัวแม้ว่าพวกเขาทั้งหมดจะมีวัสดุสไปรต์เริ่มต้นเหมือนกัน ไม่สามารถทำได้ในวิธีการตาม Texture2D ซึ่งคุณสมบัติ 'สี' จะเชื่อมโยงกับวัสดุ นอกจากนี้ยังมีประโยชน์อย่างมากสำหรับการซีดจางสไปรต์ด้วยค่าอัลฟาของสี
  3. รองรับการแบตช์แบบไดนามิกด้วยการปรับขนาดที่ไม่สม่ำเสมอ
  4. มีโหมดเดียว / หลายโหมดเพื่อให้คุณสามารถจับภาพแต่ละภาพแยกผีสางจากแผนที่พื้นผิวของคุณด้วยโหมดหลายโหมด
  5. คุณสามารถคว้ามุมของเทพดาในมุมมองฉากเพื่อปรับขนาดหรือหมุนโดยไม่ต้องเปลี่ยนเป็นเครื่องมือปรับขนาด / หมุน Gizmo

4
6. ความสามัคคีอัตโนมัติสร้างเรขาคณิตให้พอดีกับรูปทรงของส่วนที่ไม่โปร่งใสของสไปรต์ วิธีนี้สามารถลดการโอเวอร์โหลดได้มากกว่าการเรนเดอร์สไปร์แบบสี่เหลี่ยมและอนุญาตให้คุณ / Unity แพ็คสไปรท์แน่นขึ้นในแผนที่
DMGregory
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.