初學者教學——從零開始學做射擊遊戲(二)
哦對了,還是要廢話幾句!
自己推敲了幾次以後還是不滿意,於是又把寫好的重新做了一遍,看來還是我學的不夠紮實233333。
最後就是,因為是面向的對象里還有完全不會代碼的同學們,所以我會寫一些比較小白的話,順便一開始不會嚴格按照代碼規範寫一些示範,請大家牢記。
最後就是,因為是面向的對象里還有完全不會代碼的同學們,所以我會寫一些比較小白的話,順便一開始不會嚴格按照代碼規範寫一些示範,請大家牢記。
最後就是,因為是面向的對象里還有完全不會代碼的同學們,所以我會寫一些比較小白的話,順便一開始不會嚴格按照代碼規範寫一些示範,請大家牢記。
謝謝!
------------------------------正文-----------------------------------
同學們好,上回我們講到了西門慶熱結十弟兄,武二郎冷遇親哥嫂……
不對……走錯片場了……
上回我們講到了部署環境,這次我們來愉快的敲幾行代碼吧!
(剛上車且不會代碼的同學請參見前一篇初學者教學——從零開始學做射擊遊戲(一))
//對了,有的同學說微軟的VS給的30天的試用,不過我沒有出現這個,是不是和我有微軟的賬號有關呢?下面進入正題
繼續上回的界面,注意一下紅箭頭,我們要在確認這兩個以後敲代碼。
上圖就是我們這次要敲進去的,大家先敲完,然後聽我解釋。(1)首先要確認是在game.cpp下進行敲代碼的工作。
(2)注意代碼中的大小寫,因為大小寫在計算機語言中所代表的二進位數字完全不同,所以輸錯大小寫是一個比較嚴重的問題。
(3)有些語句結尾要記得加「;」這個符號,它代表著這個語句結束(最起碼目前是這樣)。
(4)如果語句結束的時候沒有加「;」的話,VS會自動監測有沒有錯誤,這時畫面中出現了(5)中的紅色波浪線,大家記得自己敲的時候把(4)中的「;」敲上。
另外需要注意的是
這些空白的地方不是空格鍵,而是TAB鍵,請知悉。下面講解一下(a.因為是自己理解翻譯的,如果和國內的教學有出入,請大神幫忙指正。b.如果有實在不懂的,直接複製代碼百度即可。c.我沒加註釋的原因是因為我下一課才要專門講規範。)
每個程序都要有一個骨架,包括我們要做的東西畫面是多大,或者有沒有現成的函數庫可以調用,再或是這段程序的結束條件。所以剛才的代碼的作用就是先做一個這樣的骨架。
#include"DxLib.h" 是包含頭文件DxLib.h,我們可以理解為我們在對DxLib.h說「苟……下面拜託了」
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR IpCmdLine, int nCmdShow)而這個是要確定框架的關鍵。
WINAPI的這句是創作一個可視化視窗,大家可以理解為,你要開車,需要它作為底盤,承載你車上的一切。
SetWindowText("Shooting Game");冒號里的字是在程序運行的時候出現在程序左上角的字。
tSetGraphMode(640, 480, 16);這裡640和480分別是寬和高。
下面一些略過,直接說while (ProcessMessage() == 0 && CheckHitKey(KEY_INPUT_ESCAPE) == 0)
這個是在程序運行是按下ESC退出,具體原因以後的課會講到,現在只求記住就好,如果一次塞太多的東西,怕消磨掉大家的熱情。
當我們敲好全部代碼以後,可以試著運行一下。
下面按一下ESC看看是不是退出了~
接下來請大家下載一下本課需要的素材:
------》----第二課素材 度盤傳送門----《----密碼為noe0
然後我們需要將素材里的player.png放在這個路徑下(如果你上次按照我的部署步驟做了的話)。
然後敲下以下代碼
VS中,在上一次執行過程序以後,新敲的代碼都會有標記(左側小紅框的黃色)。PS我在紅框中的三段代碼有一個出錯了,你知道是哪句嗎?不知道的話把上面的課再複習一下。
int playerImage;是你要定義出一個叫playerImage的東西
playerImage = LoadGraph("player.png");是要讀取player.png這個圖片
DrawGraph(0, 0, playerImage, true);是要在X軸的0號坐標,Y的0號坐標顯示程序中被我們叫做playerImage但實際上是player.png的圖片。
0,0可以在替換成X(0~640)Y(0~480)任意的數字,從而達到在畫面不同位置顯示的目的。
運行一下試試吧。
顯示成功!
PS我改了之前的的代碼,有沒有從畫面上發現的同學?
好了,大家一定發現素材中有好多圖片,那麼我們就留作業了。
大家盡量多的把那些圖片擺在自己的畫面里吧,可以適當的擺拍,然後裝作自己做了一個了不得的遊戲的樣子。
比如這樣。
-------------------------下期預告------------------------
中州老司機的文章已經快200贊了,不出意外應該就是《霓虹性都》的中篇,也就是小廣告篇了。
然後就是遊戲美術與遊戲設計這兩課還一課沒有講……
我好像欠了好多東西……23333333
對了,你們要的採訪霓虹小姐姐的事情我已經在做了,不過究竟要問些什麼比較好呢~
有想問的同學記得點贊留言啊!
好了,今天就到這裡。
大家晚安。
我們明天賤!
不對,我們下次見!
通靈術!
晚安!
推薦閱讀:
※網易手游《大話西遊》客戶端的建築遮擋人物半透技術是怎麼實現的?
※關於下半年的預防針
※Skeletal Animation 理論與實踐
※從零開始手敲次世代遊戲引擎(一)
※「千萬別學我!」之遊戲開發者的囧事(上)