初二學生,現在在自學python好入門編程,看的書是《Python編程 從入門到實踐》。聽說python不適合做遊戲,打算學完這本書學其他語言,但是不知道哪種語言好。個人時間不多,又要忙於學習,不想走彎路,希望接下來學的語言能做出不太大的獨立單機遊戲,主攻2和2.5d,如果可以3d也好。(其實就是想做個東方的同人遊戲,或者那種只有幾十個多邊形的3d遊戲)

ps:因為是要一個人製作,如果您有所接觸,希望能給點美術和音樂方面自學的建議,沒有也罷,感謝。


我在想我最近幹了啥…怎麼總有回答邀請

那麼,不才就斗膽獻醜了

先說結論:現階段斷了這念頭,最多學學C語言,但是千萬不要去做遊戲。好好學習,考個好高中,用C語言功底去拿個NOIP國家二等獎,然後走C9自招進去,再規劃遊戲。

python不適合做遊戲我覺得是真的,因為效率實在是低,不用第三方庫基本上寫個矩陣運算就能哭出聲,而偏偏遊戲又有很強的時效性…python做galgame還是堪堪一用的,做其他的感覺就跟用膠水粘庫一樣

遊戲當然首推C++,但是這東西的一大作用就是提高程序員的門檻,言外之意不多說。想從底層開始做遊戲,恕我直言,去全心全意打兩三年基礎再回來還差不多。所以你應該把問題改成「做遊戲用什麼引擎最合適」,然後針對性的學習。

2D引擎我推薦cocos2d,unity稍微有點重但也不是不行。《戰艦少女》初版是unity實現的,還有人記得卡成什麼樣嗎?任何情況下你都要記住,對機器越友好的東西對人就越不友好,學習成本也越大。換句話來說,如果這是誰都能一學就會的東西,就沒有人會來知乎問了。

下面扯點一般人不愛聽的,關於遊戲和數學的關係。

計算機圖形學跟線性代數的關係巨大,不過關的話你甚至無法在屏幕上畫一個三角形(當然,用輪子就另當別論)。單單把模型顯示在屏幕上就已經是一門學問了,更何況讓它動起來。

不過這麼說挺抽象的,談點具體的吧(雖然這個例子有點作弊)。境符「波與粒的境界」的函數會寫嗎?要怎麼安排時間與彈幕的關係才能做出那種圖案?櫻符「西行櫻吹雪」的弧線型彈幕又是怎麼旋轉的?這種問題應該朝著什麼方向去思考,這個概念是要有的,所以還是好好讀書吧。

解決上面問題用的參數方程應該在高中能接觸到。

等你歷經千辛萬苦啃完了數學,人生閱歷也足夠了,你會發現能掙錢的手游都是美工堆出來的,程序員在這個體系中的地位簡直可憐。然後你就會轉向技術或者美術了。

我沒有半點貶低諸位遊戲行業前輩的意思,計算機圖形學的先驅一個個都是數學巨佬,只能仰望。但是在天朝這是個邊緣化了的學科,熱度比人工智慧低太多了。


學這個 Unity?

unity3d.com圖標 , 跟著官網教程練幾個,然後自己改著玩,跟幾個改幾個手熟了就可以自己做了


初、初二…你們現在的孩子…

好打擊人(〃?ω?)。

我也推薦先學c#,然後學Unity3d。


C#或Python


初二我覺得可以做著玩玩可以,但不要太上心,因為很耗時間。

首先做遊戲考慮的是遊戲引擎而不是純編程語言,為什麼?因為大部分人不會從零開始製作3D遊戲,自己用opengl寫。

目前遊戲引擎主流是Unity虛幻,截止目前,兩者可以不需要代碼:Unity有Bolt和Playmaker;虛幻自帶藍圖

如果你要做遊戲寫代碼的話,不要純學基礎,最好同時在鼓搗引擎,因為你需要弄清楚引擎的API是做什麼。語言只是工具你需要理解如何構建遊戲的思想,要學習的話網上有一大把的資源。(選擇Unity用的是C#,虛幻用的是C++)

另外說點相關的題外話。

網上我看到了很「學了Unity三天做出了遊戲」、「一周做虛幻3A大作」、「初中生五天做出來的FPS遊戲」等等。大部分都是將模板沒有靈魂的拼湊,然後拿出來「展示」的,也就是沒有多少是自己下功夫做的,請務必不要被虛榮的風氣所影響,但是少數年齡小但是真的有東西的,在少數。

而且,遊戲製作要善用「素材」,不管是模板還是素材,都要有自己的思想,不能為了炫耀而去炫耀。遊戲的素材自己製作很消耗時間,我也在學著做。美術跟音樂我是從零開始,感覺這樣會很消耗時間,所以我想找個取巧的方式繼續學,目前還沒想到。


推薦閱讀:
相关文章