遊戲開發前學習筆記|Unity C#| day 1 學習基礎[1]

更新於 2023/06/19閱讀時間約 8 分鐘

前言

這是紀錄本人學習Unity C#時的筆記,希望讓自己能夠整理思緒,方便記憶。
因為是新手自學的關係,也很有可能有誤解或錯誤的地方,請見諒…

變數

宣告變數不能使用數字開頭,或是除了_之外的符號。
int hp = 10;
int A2 = 10;
int _A = 10;

·整數 int

·浮點數 float、double

float 精度低、佔的資源較少,double則反之;
目前暫時理解為在處理浮點數時,這兩種能用float就盡量用float。
然後使用float宣告變數時,數字後方要加f
float f = 0.1f;
不然會出現"Cannot convert from 'double' to 'float'"的錯誤訊息。

·字串 string

·布林 bool

存放true與false兩種狀態。

布林運算

and 使用符號 &&
or 使用符號 || (Shift + \)
not 使用符號 !

C# 的 i++ 和 ++i


邏輯判斷式

·if ︱else ifelse

        int hp = 60;
        if (hp >= 70 && hp <= 100)
        {
            Debug.Log("70~100");
        }
        else if (hp >= 40 && hp <= 69)
        {
            Debug.Log("40~69");
        }
        else if (hp >= 1 && hp <= 39)
        {
            Debug.Log("1~39");
        }
        else
        {
            Debug.Log("不在範圍內");
        }
這段程式碼如果把大括號拿掉還是可以work,但是如果內容有兩行以上的代碼就會報錯,所以不管怎樣大括號就是給他加下去就對了!

迴圈

·for迴圈

	for (int i = 0; i <= 10; i++)
	{
		Debug.Log("跑了" + i + "圈");
	}
關於for迴圈的大括號,如果我們把大括號拿掉的話,跟if不太一樣的是…就算for裡面有兩行語句也不會報錯,但是他就只會執行第一行的代碼,所以還是不管怎樣大括號就是給他加下去就對了!

·while迴圈

	int i = Random.Range(1, 101);
	int count = 0;
	while (i > 0)
	{
		count++;
		Debug.Log("總共計數:" + count);
		i--;
	}
i--忘記加,然後就——

Random.Range

上面while迴圈裡使用到的Random.Range,使用int跟float時範圍囊括的區間是不太一樣的;
Random.Range(0, 3); //範圍為0~2
Random.Range(0.0f, 3.0f); //範圍為0.0~3.0
整數隨機時最大值不包含在範圍;
浮點數隨機時最大值包含在範圍內。

一維陣列

只印出"名稱2"↓
        string[] names = new string[3] { "名稱", "名稱1", "名稱2" };
        Debug.Log(names[2]);
使用for迴圈,印出每個名稱↓
        string[] names = new string[3];
        names[0] = "名稱";
        names[1] = "名稱1";
        names[2] = "名稱2";
        for (int i = 0; i < names.Length; i++)
        {
            Debug.Log(names[i]);
        }
使用foreach,印出每個名稱↓
        string[] names = new string[3] { "名稱", "名稱1", "名稱2" };
        foreach (string value in names)
        {
            Debug.Log(value);
        }

方法method

    void methodName()
  {
  }
↑最基本的方法結構,
void 等於沒有回傳值(改成float或是其他的則是有回傳值,看想要回傳甚麼);
methodName 方法名稱;
()小括號裡面沒東西代表沒傳入參數。
private float _hp = 100;
    float getHp()
    {
        return _hp;
    //將最上方_hp的數值回傳在此getHp(),
    所以只要呼叫這個getHp()方法,就可以得到目前的_hp的值。
    //return之後不要放東西,因為到return之後就不會繼續執行。
    }
    void setHp(float hp)
    {
        _hp = hp;
    //將下方取得的65丟回到最上方的_hp裡。
    }
    void Start()
    {
        setHp(65); 
    //將setHp方法裡的參數float hp設成65。
        float myHp = getHp(); 
    //創建了一個叫myHp的變數,為了下一行顯示getHp()裡的值。
        Debug.Log("MyHp:" + myHp);
    }

Call By Value

    void Start()
    {
        int a = 10;
        setA(a);
        Debug.Log(a);
    }
    void setA(int a)
    {
        a = 20;
    }
印出的參數為10而非20,因為Call By Value只是將變數的參數填入,而非填入變數的地址。(我還要再理解一下…)

Call By Reference

  • ref類型
    void Start()
    {
        int a = 10;
        setA(ref a);
        Debug.Log(a);
    }
    void setA(ref int a)
    {
        a = 20;
    }
此時印出的參數就是20了,概念上比較像是本來是填入a的參數,但是現在因為有加ref所以要傳"ref類型"的參數。
  • out類型
    void Start()
    {
        int a;
        setA(out a);
        Debug.Log(a);
    }
    void setA(out int a)
    {
        a = 20;
    }
這樣也是印出20,概念上是int a設為一種輸出的類型,所以最上方int a就不用給予初始值。
avatar-img
2會員
2內容數
想要有能力獨立開發遊戲,所以來寫個學習筆記,方便自己整理思緒。畢竟是Indie Game,所以程式、美術、企劃都要學習(抖。遊戲引擎選定Unity,C#也是從零開始學,任重道遠啊…
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
《百合大學!遊戲社♬》是一個使用RPGMaker製作的練習向百合遊戲。本文介紹了進入研究所前,製作人用10週空閒時間製作的遊戲,並分享了製作過程和團隊開發的情況。遊戲已放在itch.io上供試玩,並有製作人錄製的遊玩過程。文章還提到了專案現況和製作人的個人心路歷程。
紳士遊戲上架囉~ 今年和編劇一起搞的遊戲 上架dislike 詳細的介紹文在這 【心得】曹賊不演了!🥵一本道瑟瑟劇情,趕快來《花被草弄七下》裡,操控天選汁男與三位美女共譜愛情動作戲碼 有興趣的捧有們~可以多多支持 謝謝~
Thumbnail
專案中常被用來分析並改善工作流程的「SIPOC模型法」,我覺得也非常適合於產品設計中,用來作為分析、理解使用者情境(User Scenarios)或 UI 操作流程的工具,拿來用於設計擬真的教育遊戲也適合喔!
Thumbnail
開展新的遊戲 這回是恐怖類型的遊戲 以橫向捲軸+解謎+劇情為主的開發 一樣也是以手機平台為主 然後...Steam已經申請開發者帳號下來囉~ 所以這一款應該也會在Steam上架吧!?
Thumbnail
經過了一些時日,總算是把 安齋露露 的小說改編上架了 一款小品遊戲 也是今年一個里程碑的進展~ 《Fluencer~心動之約》是一款漫畫式風格,別開生面的文字冒險戀愛遊戲,帶您進入一段多彩多姿的戀愛故事中。在這個遊戲中,您將扮演一位男主角與四位迷人女孩的浪漫冒險。每位女孩都擁有獨特的背景和故事,
android遊戲與應用程式開發 HKT 線上教室 Yan Lin unity教學 白米飯 阿空的遊戲部屋 M Studio 陳間時光 羅蘭的Unity教學 - Official Channel UnityTaiwan 小歐老師 虎課電腦教程 Parsue Choi 大叔愛畫畫 Jy unreal
Thumbnail
幼兒近年三大問題:睡眠時間不規律、用餐時間不固定和運動不足,自律神經和腦內荷爾蒙失調,導致學習力及體能下降、情緒不穩定。日本嬰幼兒發展權威,結合大腦發育、生活作息規律、體溫影響等基礎知識,配合孩子各月齡階段的成長發育狀況,研發潛能開發親子遊戲。
Thumbnail
《迷霧國度:傳承》最新實機畫面,地形破壞系統、特殊職業─浪人搶先曝光。還有前導故事最新連載與合作繪本的最新消息,朋友們,大家都進來吧>_</
Thumbnail
《迷霧國度:傳承》地形互動系統實機畫面分享,除了最新的開發進度外;也有系列IP計畫的最新消息,並聊聊為什麼我們要同時開發遊戲和拓展IP。
Thumbnail
《迷霧國度:傳承》開發日誌,除了完成怪物、任務外,也與其他獨立團隊有些交流。聊聊參加獨立開發聚會的心得,同時曬一下我們IP拓展計劃的新圖。
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
《百合大學!遊戲社♬》是一個使用RPGMaker製作的練習向百合遊戲。本文介紹了進入研究所前,製作人用10週空閒時間製作的遊戲,並分享了製作過程和團隊開發的情況。遊戲已放在itch.io上供試玩,並有製作人錄製的遊玩過程。文章還提到了專案現況和製作人的個人心路歷程。
紳士遊戲上架囉~ 今年和編劇一起搞的遊戲 上架dislike 詳細的介紹文在這 【心得】曹賊不演了!🥵一本道瑟瑟劇情,趕快來《花被草弄七下》裡,操控天選汁男與三位美女共譜愛情動作戲碼 有興趣的捧有們~可以多多支持 謝謝~
Thumbnail
專案中常被用來分析並改善工作流程的「SIPOC模型法」,我覺得也非常適合於產品設計中,用來作為分析、理解使用者情境(User Scenarios)或 UI 操作流程的工具,拿來用於設計擬真的教育遊戲也適合喔!
Thumbnail
開展新的遊戲 這回是恐怖類型的遊戲 以橫向捲軸+解謎+劇情為主的開發 一樣也是以手機平台為主 然後...Steam已經申請開發者帳號下來囉~ 所以這一款應該也會在Steam上架吧!?
Thumbnail
經過了一些時日,總算是把 安齋露露 的小說改編上架了 一款小品遊戲 也是今年一個里程碑的進展~ 《Fluencer~心動之約》是一款漫畫式風格,別開生面的文字冒險戀愛遊戲,帶您進入一段多彩多姿的戀愛故事中。在這個遊戲中,您將扮演一位男主角與四位迷人女孩的浪漫冒險。每位女孩都擁有獨特的背景和故事,
android遊戲與應用程式開發 HKT 線上教室 Yan Lin unity教學 白米飯 阿空的遊戲部屋 M Studio 陳間時光 羅蘭的Unity教學 - Official Channel UnityTaiwan 小歐老師 虎課電腦教程 Parsue Choi 大叔愛畫畫 Jy unreal
Thumbnail
幼兒近年三大問題:睡眠時間不規律、用餐時間不固定和運動不足,自律神經和腦內荷爾蒙失調,導致學習力及體能下降、情緒不穩定。日本嬰幼兒發展權威,結合大腦發育、生活作息規律、體溫影響等基礎知識,配合孩子各月齡階段的成長發育狀況,研發潛能開發親子遊戲。
Thumbnail
《迷霧國度:傳承》最新實機畫面,地形破壞系統、特殊職業─浪人搶先曝光。還有前導故事最新連載與合作繪本的最新消息,朋友們,大家都進來吧>_</
Thumbnail
《迷霧國度:傳承》地形互動系統實機畫面分享,除了最新的開發進度外;也有系列IP計畫的最新消息,並聊聊為什麼我們要同時開發遊戲和拓展IP。
Thumbnail
《迷霧國度:傳承》開發日誌,除了完成怪物、任務外,也與其他獨立團隊有些交流。聊聊參加獨立開發聚會的心得,同時曬一下我們IP拓展計劃的新圖。