精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>電子資料>Arduino的恐龍游戲

Arduino的恐龍游戲

2022-11-11 | zip | 0.11 MB | 次下載 | 2積分

資料介紹

描述

恐龍游戲 Arduino

介紹

我一直喜歡可穿戴電子產品,幾個月前我有一個便宜的 TFT 顯示器可以玩,最終目標是熟悉所有電子產品,以便我可以嘗試縮小所有東西并制作一個(希望是便攜的) ) 智能手表。

我偶然發現了mrt-prodz為 arduino 開發的 flappy bird 游戲,當時我正在尋找一些帶有 TFT 顯示屏的好項目,在玩了幾次游戲之后,我決定用 chromium 構建我自己的經典“恐龍游戲”版本.

該項目的所有代碼文件和資產都可以在以下存儲庫中找到:

示意圖

我得到的 TFT 顯示器基于 ST7735 驅動 IC,同時它還有一個 SD 卡插槽,由于我手頭沒有 SD 卡,我最終將所有需要的數據保存在閃存中。TFT 的接線有點痛苦,但多虧了Tweaking4all的幫助,我終于讓它運行起來了。

蜂鳴器和按鈕的其他連接非常簡單,無需解釋。我確實注意到,flappy bird 游戲實際上并沒有使用基于中斷的觸發器,而是具有正常的 digitalRead 功能。我決定使用內部拉動和外部中斷觸發的 ISR 通過數字引腳 2 為用戶輸入提供服務。

?

poYBAGNtnBmAWDauAADTU7TFgQ4092.png
?

?

顯示器使用 SPI 通信,所以我最終使用 ardunio uno 的 SPI 硬件引腳與顯示器通信。Tinkercad 沒有 TFT 顯示器的模型,所以我只是標記了連接并將它們放到面包板上。

我的最終設置是將所有東西都塞進了一個小面包板,因為我沒有比這更大的東西了。

pYYBAGNtnByAfyVGAAFy3D-8OH0646.png
?

我的 TFT 顯示器的另一個視圖供任何人參考

軟件

軟件堆棧可以分解為以下子任務

做一個會跳的盒子

這一步應該相當簡單,人們實際上使用歐拉積分方法給物體一些力(加速度),然后使用非常小的 dt 數值計算速度和位移。

加速度 = 力 / 質量Delta_{位置} = 速度 * dt Delta_{速度} = 加速度 * dt

由于某種原因,我最終使用了彈丸在恒定加速度下的運動方程。

y = ut + (1/2)at^2

每次按下按鈕時,盒子的初始速度都是 $30 m/s$,我使用重力加速度值和初始速度來獲得正確的跳躍響應。

事情最終看起來像這樣(PS:不要介意背景中移動的仙人掌)
?

畫仙人掌,讓它四處走動

我使用了一些基本的形狀(圓角矩形)來制作一個仙人掌狀的物體,并在 -ve x 方向上給它一個恒定的速度,讓它看起來像恐龍在向前移動。

我使用了mrt-prodz帖子中討論過的畫筆方法來制作動畫,這基本上意味著我通過在舊像素上繪制背景顏色來擦除它們,然后在新像素上繪制所需的顏色,因此我不得不更改一些每幀中的選定像素,而不是整個 128x160 像素。

用恐龍替換盒子

接下來我嘗試用恐龍(位圖)替換盒子,看起來恐龍在地板上滑行,而且非常人工。

?

我決定讓恐龍行走,就像原來的游戲一樣,在從精靈表中剪下兩個行走的幀之后,我嘗試了一個簡單的代碼,在這些幀之間切換,讓它看起來像恐龍在行走。

步行與滑冰恐龍

上述方法取得了部分成功,因為由于更新速度,整個恐龍圖像現在有一個奇怪的閃爍,我意識到我正在更新整個恐龍位圖,但大部分身體是靜止的,只有腿應該移動。

?

我最終通過將 2 個恐龍框架分成 2 個部分(總共 4 個)來解決這個問題,其中每個框架的頂部是身體,底部是腿,幸運的是動畫的設置方式是恐龍的身體實際上在兩幀之間從未改變,只有腿的位置發生了變化,所以我固定了身體,只更新了恐龍的腿部,這消除了大部分或全部的閃爍,最后我得到了一個非常流暢的動畫。

?

添加云、聲音、樂譜和其他小細節

我現在添加了其他小細節,如聲音、介紹和游戲幀。我還添加了分數顯示和其他功能。我想為游戲提供一個像原版一樣多云的背景,因為它不僅有助于美感,而且還可以顯示恐龍一直相對于背景移動。

我厭倦了使用位圖中的云,但是云中的閃爍有點太多,而且它們的功能太小以至于我幾乎不關心,所以我最終用常規的圓角矩形替換了位圖,這大大提高了游戲性能。

?

結果

在修復了幾個錯誤之后,我終于有了一個可以工作的恐龍游戲

?

未來升級

雖然我沒有立即的改進計劃,但我確實有一些我想實現的功能。

  • 添加生命
  • 迪諾有力量(噴火)
  • 新障礙(鳥類?)
  • 消除由于跳躍引起的閃爍

本文由作者根據CC BY 4.0許可


評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數據手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費