qml 培訓課程 - 遊戲製作入門
TRANSCRIPT
歡迎加入Qt@Taiwan 社群https://www.facebook.com/groups/qtdev/
先廣告一下 XD
今天一樣不寫C++
用QML/JS就可以搞定一切
QML 石器時代
如何開發一個遊戲?
石器時代
1. QML 已經提供了不少元件讓你方便做遊戲a. Keysb. Animationc. Imaged. Audioe. Particlef. Timer
2. 其實已經很好了,當年的 DOS 恐龍時代....還要自己讀字型檔跟圖檔....
John Carmack
1. 但不得不提一下,恐龍時代還是出了像 John Carmack 這種人物,就算我們用 QML 也寫不贏他..a. id Software 創辦人之一,在PC恐龍時代做出了跟 任
天堂上的超級瑪莉 一樣順暢的捲軸遊戲。
b. 發明了世界上最神奇的開根號公式,讓3D遊戲效能大
獲提昇
我們也有喝不完的可樂
相信大家在這次黑客松也可以做出嚇鼠倫的作品
講古講完了
讓我們繼續回到QML石器時代
身為熱血青年,又有QML所有東西自己刻也是很合理的
SAMEGAME
●
SAMEGAME
●
SAMEGAME● var column = Math.floor(x/gameCanvas.
blockSize);● var row = Math.floor(y/gameCanvas.
blockSize);● floodFill()
○ recursive●
寫寫簡單的方塊遊戲自幹還勉強可以
但我們畢竟不是John Carmack
要用石頭寫個超級瑪莉
還是很困難的
讓我們進化到工業時代
BOX2D物理引擎界的霸主
BOX2D
● Box2D is an open source C++ engine for simulating rigid bodies in 2D
● Collision detection, friction, restitution, forces/impulses
http://www.iforce2d.net/b2dtut/forceshttp://clouddeep.pixnet.net/blog/post/30573066-%5Bbox2d%5D-%E5%
88%9D%E5%AD%B8%E5%85%A5%E9%96%80
●
BOX2D
老實說,我覺得 API 用起來還是有點麻煩....
而且不是說好今天不講C++嗎....
Quasi-Engine直接讓QML使用BOX2D
Quasi-Engine
● Scene○ gravity: Qt.point(0, -30.0)
● Material○ friction, density, restitution
Quasi-Engine
● Entity (Body)○ Static, Dynamic, Kinematic
Quasi-Engine
● Fixture○ A fixture binds a shape to a body(entity) and adds material properties
such as density, friction, and restitution.
● Joint○ This is a constraint used to hold two or more bodies together. Box2D
supports several joint types: revolute, prismatic, distance, and more. Some joints may have limits and motors.
● applyLinearImpulse()● applyTorque()
NBA90
組成元件
● Static Entity○ 籃架 backboardHandler○ 籃板 backboard○ 籃框 basketHandler○ 地板 ground
● Dynamic Entity○ 籃球 ball
Quasi-Engine
● 投球
Quasi-Engine
● 進球判斷
Quasi-Engine
使用前,記得先編好 BOX2Dunzip Box2D_v2.1.2.zipcd Box2D_v2.1.2/Box2D/Buildcmake ..make
如果你真的堅持用石頭打造瑪莉歐
1. 可以參考一下 ICS 的手把手教學:a. http://developer.nokia.
com/community/wiki/images/4/4c/ICSCasualGamesWithQml.pdf?20110622180857
2. 還有上次QUIT的五子棋a. http://quitcoding.
com/download/Qt_Quick_Game_Programming_1_0.pdf
光有這堆物理模擬,是無法滿足使用者的
出動更高級的武器
讓我們進化到黑暗時代
真正的遊戲平台
V-PLAY
V-PLAY
1. 404 Not Found
啃,因為有bug,我build不出來啊..
敬請期待
倉庫番,魔法氣泡,超級瑪莉,俄羅斯方塊
那你這次想動手打造什麼呢
記得帶上幾罐可樂
衝吧!