[Unity] ๋งํ’์„  UI ์ ์šฉํ•˜๊ณ  ๋Œ€ํ™”์ฐฝ ๊ตฌํ˜„ํ•˜๊ธฐ
๐ŸŽฎ Unity

[Unity] ๋งํ’์„  UI ์ ์šฉํ•˜๊ณ  ๋Œ€ํ™”์ฐฝ ๊ตฌํ˜„ํ•˜๊ธฐ

๊ฒŒ์ž„ ๋‚ด์—์„œ ์ •๋ณด๋ฅผ ์•Œ๋ ค์ฃผ๊ฑฐ๋‚˜ NPC๋“ค๊ณผ ๋Œ€ํ™” ์‹œ ์‚ฌ์šฉํ•˜๋Š” ๋งํ’์„  UI

 

Astro Cat ๊ฒŒ์ž„ ์ง„ํ–‰์—์„œ ์•„์ฃผ ํ†กํ†กํ•œ ์—ญํ• ์„ ํ•ด์ค€ ๋งํ’์„  UI๋ฅผ ๊ตฌํ˜„ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹น

 

 

 

์šฐ๋ฆฌ๊ฐ€ ๋งŒ๋“  ๊ฒŒ์ž„์˜ ๋งํ’์„ ์„ ๋„˜๊ธฐ๋Š” ์กฐ๊ฑด์€ ์•„๋ž˜์™€ ๊ฐ™๋‹ค.

 

1. ์ฒซ๋ฒˆ์งธ ๋งํ’์„ ์„ ํด๋ฆญํ•˜๋ฉด ๋‘๋ฒˆ์งธ ๋งํ’์„ ์œผ๋กœ ๋„˜์–ด๊ฐ„๋‹ค.

2. ๋‘๋ฒˆ์งธ ๋งํ’์„ ์„ ํด๋ฆญํ•˜๋ฉด ํ•ด๋‹น ๋งํ’์„ ์ด ์‚ฌ๋ผ์ง€๊ณ  ์šฉ์ด ์ค€ ์•„์ดํ…œ์ด  ๋‚˜ํƒ€๋‚œ๋‹ค.

3. ์šฉ์ด ์ค€ ์•„์ดํ…œ์„ Player๊ฐ€ Getํ•˜๋ฉด ์„ธ ๋ฒˆ์งธ ๋งํ’์„ ์ด ๋‚˜ํƒ€๋‚œ๋‹ค.

 

 

โ€ป ๋Œ€ํ™”์ฐฝ UI๋Š” ๊ธ€ ๋งจ ์•„๋ž˜ ์—์…‹์„ ์ฐธ๊ณ ํ•˜์‹œ๋ผ

 

๋Œ€ํ™”์ฐฝ์—์„œ ์ฐฝ์„ ๋‹ด๋‹นํ•˜๊ณ  ์žˆ๋Š” talkPanel์„ ์‚ดํŽด๋ณด๊ฒ ๋‹ค.

Unity ํ•˜์ด์–ด๋ผํ‚ค์— UI>Canvas๋ฅผ ์ถ”๊ฐ€ํ•ด์ฃผ๊ณ  ๊ทธ ์•„๋ž˜ ๋‹ค์Œ๊ณผ ๊ฐ™์ด UI>Image๋ฅผ ์ถ”๊ฐ€ํ•ด์ค€๋‹ค.

Canvas๋ฅผ ์ถ”๊ฐ€ํ•ด์ค˜์•ผ ๊ฒŒ์ž„ ๋‚ด UI๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค.

๋งํ’์„ (talkPanel) ์•„๋ž˜์—๋Š” UI>Text๋ฅผ ์ถ”๊ฐ€ํ•ด์ค€๋‹ค.

(nameTag์™€ Button์€ ๋ชจ๋‘ UI>Image์ด๋ฉฐ ์„ ํƒ์ ์ธ ๋ถ€๋ถ„์ด๋‹ค.)

 

โ€ป ์ฐธ๊ณ ๋กœ 3D ๊ฒŒ์ž„์˜ UI ์ž‘์—… ์‹œ์—๋Š” ์ด๋ ‡๊ฒŒ 2D๋กœ ์„ค์ •ํ•ด๋†“๊ณ  ํ•˜๋ฉด ํŽธํ•˜๋‹ค.

 

๋งํ’์„ ์˜ Anchor/Inspector ์„ค์ •์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ•ด์ฃผ์—ˆ๋‹ค.

์ ๋‹นํžˆ ์›ํ•˜๋Š” ์ •๋„๋ฅผ ์ฐพ์•„ Scene/Game์„ ๋ด๊ฐ€๋ฉฐ ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

 

๊ทธ๋ž˜๋„ ์ด๋ฏธ์ง€๊ฐ€ ์ด์ƒํ•˜๋‹ค ์‹ถ์œผ๋ฉด(ex.์ง์‚ฌ๊ฐํ˜• ์ด๋ฏธ์ง€๋ฅผ ์›ํ•˜๋Š”๋ฐ ์ •์‚ฌ๊ฐํ˜• ์ด๋ฏธ์ง€์ผ ๊ฒฝ์šฐ) ํ•ด๋‹น ์ด๋ฏธ์ง€ ์—์…‹์„ ํด๋ฆญํ•œ ํ›„

Window>2D>sprite editor๋ฅผ ํ†ตํ•ด ์กฐ์ •ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

 

 

 

๋‹ค์Œ์œผ๋กœ ๋Œ€ํ™”์ฐฝ์—์„œ ๋Œ€ํ™”๋ฅผ ๋‹ด๋‹นํ•˜๋Š” Text UI๋กœ ๋„˜์–ด๊ฐ„๋‹ค.

Text UI์—์„œ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ์„ค์ •์€ Overflow์™€ Best Fit์ด๋‹ค!

๋‹ค์Œ๊ณผ ๊ฐ™์ด ์„ค์ •ํ•˜๋ฉด ์•„๋งˆ ์‚ฌ์šฉ์ž๊ฐ€ ์›ํ•˜๋Š” ๋ชจ์–‘์˜ UI๊ฐ€ ๋‚˜์˜ฌ ๊ฒƒ์ด๋‹ค.

(ํฐํŠธ๋„ ๋‹ค์šด๋ฐ›์•„์„œ ๋ฐ”๊ฟ”์ฃผ๋ฉด ์ฐ ๊ฒŒ์ž„๊ฐ™์œผ๋‹ˆ ์›ฌ๋งŒํ•˜๋ฉด ๋ฐ”๊พธ์ž.)

 

 

์ด์ œ ๊ทธ๋Ÿผ UI๋Š” ์™„์„ฑ๋˜์—ˆ์œผ๋‹ˆ ์•ž์„œ ๋งํ•œ '๋งํ’์„ ์„ ๋„˜๊ธฐ๋Š” ์กฐ๊ฑด'์„ ์ถฉ์กฑํ•  ์ˆ˜ ์žˆ๊ฒŒ ์ฝ”๋“œ๋ฅผ ์งœ๋ณด์ž.

 

UI๋ฅผ ๊ด€๋ฆฌํ•  ์ฝ”๋“œ์—๋Š” ๋งจ ์œ„์— ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ๊ผญ ์ถ”๊ฐ€ํ•ด์ค€๋‹ค.

using UnityEngine.UI;

 

์šฐ์„  ์ฒซ ๋ฒˆ์งธ ์กฐ๊ฑด๊ณผ ๋‘ ๋ฒˆ์งธ ์กฐ๊ฑด์„ ์ถฉ์กฑ์‹œํ‚ค๊ธฐ ์œ„ํ•ด ๋งํ’์„ ์„ ํด๋ฆญํ•ด์„œ ๋„˜๊ธฐ๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์ž.

์šฐ๋ฆฌ๊ฐ€ ์ •ํ•ด์ค€ ์›๋ฆฌ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

๋งˆ์šฐ์Šค ์™ผ์ชฝ ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋Š” ์ˆ˜์— ๋”ฐ๋ผ ๋งํ’์„  ์•ˆ์˜ text๊ฐ€ ๋ฐ”๋€๋‹ค.

    public GameObject talkPanel;
    public Text text;
    int clickCount = 0; 
    int getGem = false;
    
    void Update()
    {
        
        if (Input.GetMouseButtonDown(0))
        {

            if (clickCount == 0)
            {
                text.text = "๋ณด์„์€ ์ž˜ ๋ชจ์•„๋‘๋ฉด ๋ถ„๋ช… ์“ธ๋ชจ๊ฐ€ ์žˆ์„ ๊ฒƒ์ด๋‹ค.\n์ด ์€ํ•˜๊ณ„๋ฅผ ํƒˆ์ถœํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ๋ณด์„์„ ๊ผญ ๊ธฐ์–ตํ•ด!";
                clickCount++; // 1
            }

            else if (!getGem && clickCount == 1) // ๋ณด์„ ๋‚˜ํƒ€๋‚จ
            {
                talkPanel.SetActive(false);
                GameObject.Find("Gem").transform.Find("Diamond").gameObject.SetActive(true);
                clickCount++; // 2
            }

            else if (lastClick && clickCount == 2) // ๋งˆ์ง€๋ง‰ ๋งํ’์„  ๋น„ํ™œ์„ฑํ™”
            { 
                talkPanel.SetActive(false);
            }

            Debug.Log(getGem);
            Debug.Log(clickCount);
        }

    }

 

Input.GetMouseButton(0) & (ํ…์ŠคํŠธ).text & SetActive์™€ ํ•จ๊ป˜๋ผ๋ฉด ์–ด๋””๋“ ์ง€ ๊ฐˆ ์ˆ˜ ์žˆ์–ด

public GameObject๋ž‘ public Text์— ๊ผญ UI Object ํ• ๋‹นํ•ด์ฃผ๊ธฐ

 

 

์‚ฌ์‹ค ์—ฌ๊ธฐ๊นŒ์ง€๋งŒ ํ•ด๋„ ๋งํ’์„  ๊ตฌํ˜„์€ ๋!

 

์„ธ ๋ฒˆ์งธ ์กฐ๊ฑด์€ ๋‹ค์Œ ๊ธ€์—์„œ ์•„์ดํ…œ Get ๊ตฌํ˜„๊ณผ ํ•จ๊ป˜ ์ถฉ์กฑ์‹œํ‚ฌ ์˜ˆ์ •

 

๐Ÿ‘‡ ์ถ”๊ฐ€ ์™„๋ฃŒ 

[Unity] ์•„์ดํ…œ ๊ตฌํ˜„ํ•˜๊ธฐ

 

 

 

 


๋งํ’์„  UI์˜ ์ถœ์ฒ˜๋Š” ์•„๋ž˜ ์—์…‹ ์Šคํ† ์–ด! 

 

Top-Down 2D RPG Assets Pack | 2D ์บ๋ฆญํ„ฐ | Unity Asset Store

Elevate your workflow with the Top-Down 2D RPG Assets Pack asset from Goldmetal. Find this & more ์บ๋ฆญํ„ฐ on the Unity Asset Store.

assetstore.unity.com