एकता में एक वस्तु का प्रेत बदलें


11

नायक (वस्तु) के स्क्रिप्ट कोड के अंदर मैं इसके स्प्राइट को बदलने की संभावना जोड़ना चाहता हूं।

तो खिलाड़ी अंतरिक्ष बटन हिट करता है और स्प्राइट अन्य स्प्राइट में बदल जाता है जो पहले से ही परियोजना में जोड़ा जाता है।

क्या आप मुझे ऐसा करने के लिए एक नमूना कोड प्रदान कर सकते हैं?


1
यद्यपि नीचे दिए गए स्प्राइट को बदलने का कार्य ठीक उसी तरह से काम करना चाहिए जैसा आपने पूछा है, मैं आपको सुझाव दूंगा कि आप यूनिटी एनिमेटर को देखें। आमतौर पर जब लोग स्प्राइट को बदलते हैं तो यह एक एक्शन के लिए एक एनीमेशन बनाना होता है (जैसे कि तलवार को झूलना या दरवाजा खोलना) और यह आमतौर पर स्प्राइट्स को मैन्युअल रूप से स्वैप करके अधिक बुनियादी इंजनों में किया जाता है। एकता ने हालांकि एनिमेशन के लिए समर्थन में बनाया है जो आपको आवश्यक सभी स्प्राइट्स के लिए एक एनीमेशन फ़ाइल बनाने की अनुमति देता है, फिर आपको गेम को बताने के लिए उन्हें स्वचालित रूप से एनीमेशन नियंत्रक में कुछ शर्तों को पूरा करने की अनुमति देता है।
बेंजामिन डेंजरसन जॉनसन

जवाबों:


20

कोड आपके लिए टिप्पणी की गई है। का आनंद लें।

public Sprite sprite1; // Drag your first sprite here
public Sprite sprite2; // Drag your second sprite here

private SpriteRenderer spriteRenderer; 

void Start ()
{
    spriteRenderer = GetComponent<SpriteRenderer>(); // we are accessing the SpriteRenderer that is attached to the Gameobject
    if (spriteRenderer.sprite == null) // if the sprite on spriteRenderer is null then
        spriteRenderer.sprite = sprite1; // set the sprite to sprite1
}

void Update ()
{
    if (Input.GetKeyDown (KeyCode.Space)) // If the space bar is pushed down
    {
        ChangeTheDamnSprite (); // call method to change sprite
    }
}

void ChangeTheDamnSprite ()
{
    if (spriteRenderer.sprite == sprite1) // if the spriteRenderer sprite = sprite1 then change to sprite2
    {
        spriteRenderer.sprite = sprite2;
    }
    else
    {
        spriteRenderer.sprite = sprite1; // otherwise change it back to sprite1
    }
}

आपको अपने गेमऑबजेक्ट में एक स्प्राइट रेंडरर संलग्न करना होगा। एक नया C # स्क्रिप्ट बनाएं और इसे गेमऑबजेक्ट में संलग्न करें। कोष्ठक के बीच कोड चिपकाएँ ... मुझे यकीन है कि आप इसे वहां से समझ सकते हैं :)


आप सर, एक किंवदंती हैं।
कल कोकाह
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.