作者feather623 (小羽毛)
看板GameDesign
標題Re: [程式] 關於學程式的疑慮
時間Sat Aug 12 13:26:28 2017
※ 引述《parsons12342 (拜媽祖有保庇)》之銘言:
: 各位大大好,
: 小弟目前剛學沒多久,
: 最近入手unity遊戲設計的書,
: 裡面程式的語法都是照著打的,
: 想請問各位大大要怎麼知道自己到底會不會這個語法啊?
: 還是說 以後做出相似功能,只要看書打,想辦法做出來就可以呢?
: 這是小弟學習疑惑的地方,
: 新手上路請多指教><
小弟資工系三年級 自學Unity一年多了
原文底下的推文有說到「一般C#」和「Unity的C#」的問題
我認為這不應該視為兩種語言來看待
只是因為在Unity裡繼承了Monobehavior這個架構
當然會有許多Unity專屬的語法
(例如GameObject, OnCollisionEnter()...)
就像C++可以印Hello World、建3D模型、也可以寫遊戲
差別只在於引用了哪些函式庫
而宣告變數、寫迴圈、開陣列這些基礎都是一樣的
這些都是基本中的基本
比會運用那些特殊語法還重要
至於Monobehavior裡的東西
剛開始難免覺得陌生
但多練習就會熟練了 不需要硬背
自己沒事寫個2D射擊遊戲、抓洛克人的素材下來寫人物操作
都非常有幫助
當然也可以邊學邊做筆記
像這樣
http://i.imgur.com/dqjfGb4.jpg
只要堅持下去
你遲早能反射性地實作出正確的程式邏輯
加油!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 42.72.103.63
※ 文章網址: https://webptt.com/m.aspx?n=bbs/GameDesign/M.1502515590.A.554.html
※ 編輯: feather623 (42.72.103.63), 08/12/2017 13:33:01
1F:推 cjcat2266: 是呀,沒有"Unity的C#"這種東西,是C#加上Unity函式庫08/12 16:42
2F:→ cjcat2266: 語言本身語法和Unity提供的遊戲引擎架構是兩個概念08/12 16:44
3F:→ cjcat2266: 要學懂語言就學正統C#,要搞懂Unity遊戲引擎架構的概念08/12 16:45
4F:→ cjcat2266: 就找"組件式遊戲引擎(component-based game engine"的08/12 16:45
5F:→ cjcat2266: 資料來學,同時學學物件導向程式的設計模式,就可以比08/12 16:46
6F:→ cjcat2266: 較了解為什麼Unity會用這種方式實作組件式架構08/12 16:47
7F:→ cjcat2266: 在沒有把這兩者的概念分別釐清之前,直接複製貼上把兩08/12 16:48
8F:→ cjcat2266: 個概念混在一起的教學範例,恐怕會有反效果08/12 16:48
9F:→ cjcat2266: 像之前有推文提到的一樣,陷入一直複製貼上卻又無法08/12 16:49
10F:→ cjcat2266: 理解並自我活用的陷阱中08/12 16:49
11F:推 cjcat2266: 另外,要有"組件式架構只是遊戲系統架構的一種"這認知08/12 16:52
12F:→ cjcat2266: 常常被拿來對比,被認為是早期較差的繼承式架構08/12 16:53
13F:→ cjcat2266: 不全是缺點,兩者可以混著用(像我們公司就是這樣)08/12 16:54
14F:→ cjcat2266: 執意要實作極純的組件式架構,有時候是一種包袱08/12 16:54
15F:→ cjcat2266: 有些邏輯用繼承式架構可以解得精簡,該架構不全是缺點08/12 16:56
16F:→ cjcat2266: 不過要思考到這層面的概念是比較後面的學習階段了08/12 16:56
17F:→ cjcat2266: Unity的官方引擎架構是蠻純的組件式架構,而且經過時間08/12 16:57
18F:→ cjcat2266: 與大量使用者的考驗,所以是個不錯的出發點08/12 16:58
19F:推 cjcat2266: 呃...不知不覺就囉嗦起來了,應該回一篇文的 :/08/12 17:00
謝謝你的分享! :D
20F:→ dreamnook: it's fine :D 08/12 17:02
※ 編輯: feather623 (223.140.195.191), 08/12/2017 18:51:42
21F:→ MADAOTW: 敝人執著於 組件架構與物件導向搞到兩頭空的… 08/16 00:51
22F:推 wix3000: 我覺得組件導向跟物件導向並不是相衝的 08/16 18:39
23F:推 cjcat2266: 物件導向是實作組件式架構的手段之一,我猜樓樓上是要 08/17 06:43
24F:→ cjcat2266: 說組件式架構v.s.繼承式架構? 08/17 06:44
25F:→ cjcat2266: 這兩個架構是不相衝沒錯,我在工作上就是混用 08/17 06:45
26F:→ cjcat2266: 到頭來還是要看每個遊戲的獨特需求,沒有完美通用解 08/17 06:46