矩陣,可以說是本課程中的第一塊硬骨頭。雖然說,我們不需要對矩陣有非常深入的理解,但是,這並不代表著我們可以不學矩陣。這麼說吧,如果你對矩陣一無所知,那麼,整個3D遊戲編程你是學不懂的。你可以靠著強大的記憶力把本課程的代碼記住,並且也能通過自己的摸索寫出類似的3D遊戲來,但是,你對其中的原理是不理解的,將來想要寫功能更強大的3D遊戲,就純粹是天方夜譚了。
但是,擺在我面前的難題是:一個成年人想要學習矩陣都有點困難,如何讓小孩子也明白矩陣的一些道理呢?
面對這個難題,我足足思考了幾個月的時間,依舊沒有什麼特別有效的方法。再後來我想明白了:我們不需要讓孩子完全明白矩陣是什麼,我們只需要讓他們知道矩陣中的幾個關鍵知識點就行了,讓他們明白,為什麼3D遊戲編程需要矩陣。
有了這樣的想法之後,我就豁然開朗了。
由於本節內容比較難,所以,我會儘可能地用通俗的語言講明白。接下來,請你跟著我的思路來學習矩陣。
「學」的部分
在這裡,我先假定你有初中數學的水平。在「習」的部分中,我會給出建議,如果你的孩子只有小學水平,你應該把哪些知識教給他。
一、矩陣是什麼樣子的?
從表面上看,矩陣是一個由多個數字組合起來的方陣,比如說下面這個樣子:
從這裡我們看出矩陣的基本特徵:
1.「矩」的意思是矩形,由數字組成的矩形;
2.「陣」的意思是整齊,這些數字排列起來是非常整齊的,並不會歪歪扭扭;
3.矩陣中,橫向的數字是行,豎向的數字是列,行和列都是整數,可以是1或者是n(n是整數);
4.矩陣中,通過「第幾行、第幾列」這種簡便的方式來確定某個數字的具體位置。
以上面這個矩陣為例。它是一個3行×3列的矩陣,數字「1」在第1行第1列,數字「9」在第2行第2列,數字「8」在第3行第2列。
知道矩陣長什麼樣子後,你可能就會有一個疑問:把數字弄成這個樣子,有什麼作用?