iT邦幫忙

2022 iThome 鐵人賽

DAY 15
0
自我挑戰組

老菜雞挑戰30天學爆Unity&C#會成功嗎?...系列 第 15

【Day15】老菜雞學下樓梯遊戲之轉向問題-Unity SpriteRenderer Flip

  • 分享至 

  • xImage
  •  

前言

我們為了要使物件能夠轉向它去的方向,從而讓遊戲更符合現實,所以需要透過SpriteRenderer Flip去達到效果。


SpriteRenderer Flip

  • 什麼是Flip?
    Flip可以讓物件在X軸Y軸上做翻轉,且只有該物件render(稱為算繪、渲染)受影響。
    https://ithelp.ithome.com.tw/upload/images/20220927/20152411oDGBVexpsI.jpg
    如此代表我們可以輕鬆地藉由程式碼去控制Flip,達到物件的水平或垂直翻轉。
  • 大家有發現一個小細節嗎?目前不管Player往哪邊走永遠都是向右看。為了能讓它向左走的時候往左看,我們必須調整Player物件Sprite Renderer裡的Flip,Ex.向左走時,只要把Flip的X打勾↓
    https://ithelp.ithome.com.tw/upload/images/20220927/20152411vYw1JTrLVn.jpg
    故我們要寫個程式碼讓Player往右走時,把Flip的X取消打勾;當Player往左走時,把Flip的X打勾。
  • 在Player.cs的Update function裡加個GetComponent<SpriteRenderer>().flipX,往右走為false,往左走為true。
void Update()
    {
        if(Input.GetKey(KeyCode.D)) {
            transform.Translate(speed*Time.deltaTime,0,0);
            GetComponent<SpriteRenderer>().flipX = false;
        }
        else if(Input.GetKey(KeyCode.A)) {
            transform.Translate(-speed*Time.deltaTime,0,0);
            GetComponent<SpriteRenderer>().flipX = true;
        }
        UpdateScore();
    }

試玩~~


心得

開發遊戲不僅僅只是要把功能做出來,還要注意遊戲上的視覺效果,檢查某些細節是否有跟現實生活中吻合,才能讓遊戲畫面更精緻。

  • 參考網址:https://www.youtube.com/watch?v=nPW6tKeapsM&ab_channel=GrandmaCan-%E6%88%91%E9%98%BF%E5%AC%A4%E9%83%BD%E6%9C%83

  • 音效、圖片 : 遊戲素材
    (素材由安德斯提供,感謝大大/images/emoticon/emoticon41.gif)


上一篇
【Day14】老菜雞學下樓梯遊戲之新增分數UI(Unity UI的應用)
下一篇
【Day16】老菜雞學下樓梯遊戲之Unity Animation+Animator Controller
系列文
老菜雞挑戰30天學爆Unity&C#會成功嗎?...30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言