ዝርዝር ሁኔታ:
- አቅርቦቶች
- ደረጃ 1 - ዙሪያውን ይዝለሉ
- ደረጃ 2 ንጣፎችን ማገናኘት
- ደረጃ 3 - የብርሃን ድንቅ ድንቅ ጉዞ
- ደረጃ 4 - ወደ ኮድ መጀመር
- ደረጃ 5: ጨዋታውን ማመቻቸት
- ደረጃ 6 - የተጫዋች መዝለሉን ኮድ መለወጥ
- ደረጃ 7 ውጤቱን መለወጥ
- ደረጃ 8: ይሠራል
- ደረጃ 9 - ክፍሉን ማዘጋጀት
- ደረጃ 10: ተጠናቋል
ቪዲዮ: የአካል ጨዋታ መቆጣጠሪያን መፍጠር 10 ደረጃዎች (ከስዕሎች ጋር)
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:31
ኔንቲዶ ዊው ሲጀመር ተጫዋቾች በምርጫቸው ጨዋታ ላይ ነጥቦችን ለማግኘት ሶፋውን ትተው መዝለል ፣ መደነስ እና ማሾፍ እንዲችሉ ተበረታተዋል። ለዊው ግንባታ ቁልቁል የመማሪያ ኩርባ ሲኖር ፣ በተገቢው ጊዜ በግፊት መጫኛዎች ላይ በመዝለል ጨዋታን ለመቆጣጠር የሚያስችል ብጁ መሣሪያን መገንባት ቀላል ነው።
ይህ አስተማሪ ጨዋታውን ‹Space Bounce› (በቀጥታ በ https://marquisdegeek.com/spacebounce/ በ https://github.com/MarquisdeGeek/SpaceBounce) ላይ በቀጥታ የሚጫወት) አካላዊ መቆጣጠሪያን እንዴት እንደላመድኩ ያሳያል።
አቅርቦቶች
- አርዱinoኖ
- ሁለት የግፊት ምንጣፎች (የእኔ ከ Maplin ነበር
- ሁለት ተቃዋሚዎች ፣ ለግፊት ምንጣፍ (100 ኬ ፣ ግን አብዛኛዎቹ ጥሩ ናቸው)
- ሁለት ኤልኢዲዎች (አማራጭ)
- ለ LED (ሁለት ኬ ፣ ግን አብዛኛዎቹ ጥሩ ናቸው። እንዲሁም አማራጭ) ሁለት ተቃዋሚዎች
- ላፕቶፕ
ደረጃ 1 - ዙሪያውን ይዝለሉ
የመዝለል በይነገጽን በመንደፍ ጀመርኩ እና በጨዋታው ግምገማ ላይ ሁለት ምንጣፎች መኖራቸው ዋና ሀሳቡን በተሻለ እንደሚገልፅ ተገነዘብኩ። ያም ማለት በግራ ግድግዳው ላይ የመያዝ ስሜትን ለማስመሰል በግራ ምንጣፉ ላይ ይቆማሉ እና በተገቢው ቅጽበት ወደ ቀኝ ምንጣፉ ይዝለሉ ፣ እና የማያ ገጽ ላይ ገጸ-ባህሪዎ እንዲሁ ያደርጋል።
ደረጃ 2 ንጣፎችን ማገናኘት
ስለዚህ ሁለት ምንጣፎችን ገዝቼ ወደ ሥራ ገባሁ። እዚህ የሚታየው የግፊት ምንጣፎች ቀላሉ (እና በጣም ርካሹ!) ያገኘሁት እያንዳንዳቸው በ 10 ፓውንድ ነው። እነሱ አራት ሽቦዎች አሏቸው ፣ ሁለቱ እንደ ቀላል መቀየሪያ ሆነው ይሠራሉ - ምንጣፉ ላይ ሲቆሙ ግንኙነት ተፈጥሯል ፣ እና ሲዘሉ ይሰበራል። ይህንን መሠረታዊ ወረዳ ባለው ይህንን ወደ አርዱዲኖ ውስጥ አገባሁት።
ደረጃ 3 - የብርሃን ድንቅ ድንቅ ጉዞ
ሠርቷል ፣ ግን በጣም አነቃቂ አልነበረም። ስለዚህ ፣ የእያንዳንዱን ግፊት ምንጣፍ ሁኔታ ለማመልከት አንዳንድ ኤልኢዲዎችን አክዬ ነበር።
ኤልዲዎቹ ጨዋታውን እንዲጫወቱ አይገደዱም ፣ ግን ወደ ወረዳው በማከል ወረዳው የአሁኑ ሁኔታ ምን እንደ ሆነ በቀላሉ ማየት ችያለሁ። ስለዚህ ፣ ጨዋታው በትክክል ምላሽ ካልሰጠ ፣ ችግሩ ከወረዳው ፣ ከአርዱዲኖ ሶፍትዌር ወይም ከጨዋታው አመክንዮ ጋር ከሆነ ልሠራ እችላለሁ።
ደረጃ 4 - ወደ ኮድ መጀመር
የመጀመሪያው ጨዋታ በጃቫስክሪፕት ውስጥ ስለነበረ ፣ በግፊት ምንጣፍ ሁኔታ ውስጥ ለውጦችን የሚያዳምጥ እና በድረ -ገጾች በኩል ውሂቡን ለጨዋታው ደንበኛ የሚልክ የ NodeJS ፕሮግራም ለመጻፍ ወሰንኩ።
በመጀመሪያ ፣ በፒሲው ላይ የመስቀለኛ መንገድ አገልጋይ ማሄድ እና የጆኒ አምስት ቤተመፃሕፍትን በመጠቀም ከአርዱዲኖ የመንግሥት ለውጦችን ለማዳመጥ መደበኛውን ጽኑ አቋም በአርዱኖዎ ላይ ይጫኑ። ከዚያ የጨዋታውን ይዘት ለማገልገል Express ን ያክሉ።
ጠቅላላው የአገልጋይ ኮድ እንደዚህ ይመስላል
const express = ይጠይቁ ('express');
const app = express (); const http = ይጠይቁ ('http'); const አገልጋይ = http.createServer (መተግበሪያ); const io = ይጠይቁ ('socket.io')። ያዳምጡ (አገልጋይ); const arduino = ይጠይቃል ('አርዱinoኖ-ተቆጣጣሪ'); server.listen (3000 ፣ ተግባር () {console.log ('Express አገልጋይ ማዳመጥ…'))}}) app.use ('/', express.static ('app')); const አምስት = ያስፈልጋል ("ጆኒ-አምስት"); const board = new five. Board ({repl: false}); ሰሌዳ።.ፒን (3); err, val) => {ከሆነ (val) {green.on () ፤} ሌላ {green.off ();} ከሆነ (val! == lastLeft) {lastLeft = val; state = {side: 'left', ግዛት: ቫል? 'ወደታች': 'ላይ'} socket.emit ('arduino:: state', JSON.stringify (state) ፣ {for: 'everyone'});}}) five. Pin.read (right, (ስህተት ፣ ቫል) => {ከሆነ (val) {red.on () ፤} ሌላ {red.off ();} // if (val! == lastRight) {lastRight = val; state = {side: 'ትክክል' ፣ ሁኔታ ቫል? 'ታች': 'ወደላይ'} socket.emit ('arduino:: state', JSON.stringify (state) ፣ {for: 'everyone'});}})}); });
እና በሚከተለው ይሮጣል
node server.js
ደረጃ 5: ጨዋታውን ማመቻቸት
የመጀመሪያው ችግር በይነገጽ ነበር; ማድረግ የሚችሉት ሁሉ መዝለል በሚችልበት ጊዜ በጨዋታ ቁልፍ ላይ እንዴት ‹ጠቅ› ያድርጉ? ሌሎቹን አዝራሮች በሙሉ በማስወገድ ይህንን ፈታሁት! ለሁለቱም 'ወደላይ' ክስተት በማዳመጥ ተጫዋቹ በሚዘልበት ጊዜ ቀሪውን ቁልፍ ማስነሳት እችላለሁ።
ሶኬት = io (); socket.on ('arduino:: state', function (msg) {let data = JSON.parse (msg); ከሆነ (data.state === 'up') {// እየዘለልን ነው!}});
ከዚህ ወደ ጨዋታው ውስጥ መግባት ችዬ ነበር ፣ እና የበለጠ አስደሳች ለሆነ ነገር - ጨዋታው ራሱ።
ደረጃ 6 - የተጫዋች መዝለሉን ኮድ መለወጥ
በዚህ ጊዜ እያንዳንዱን ሰሌዳ በተናጠል ማስተናገድ እና የተጫዋቹ እግር ከፓድ በወጣ ቁጥር ገጸ -ባህሪው መዝለል እንዲጀምር ማድረግ ነበረብኝ። በማያ ገጹ ላይ ያለው ገጸ-ባህሪ የማዕድን ዘንግን የሚያልፍበት ጊዜ ተጫዋቹ ከአንዱ ጎን ወደ ጎን ከሚዘልበት ጊዜ የበለጠ ነው። ተጫዋቹ ሚዛኑን እንዲመልስ ፣ እግሮቻቸውን እንዲፈትሽ እና ተጫዋቹ በማያ ገጹ ላይ መዝለሉን ሲያጠናቅቅ ይህ ጥሩ ነገር ነው። ይህ ባይሆን ኖሮ ተጫዋቹን ባዘገየው ነበር።
ሶኬት = io ();
socket.on ('arduino:: state', function (msg) {
ውሂብ = JSON.parse (msg) ይፍቀዱ; ከሆነ (data.side === 'ግራ' && data.state === 'ወደላይ') {// ከግራ ጎን እየዘለልን ነው}});
ደረጃ 7 ውጤቱን መለወጥ
የግብዓት አሠራሩ እየሠራ ፣ በውጤቱ ላይ መሥራት ነበረብኝ። ጨዋታው በጡባዊ ወይም በስልክ ላይ በደንብ ይጫወታል ፣ ምክንያቱም ማያ ገጹን ይሞላል። ግን ፣ በሚዘሉበት ጊዜ ፣ ለማየት በጣም ትንሽ ነው ፣ ስለዚህ በማያ ገጹ ላይ ያለው የመጫወቻ ቦታ ማስፋት አለበት። ብዙ!
እንደ አለመታደል ሆኖ ሁሉንም የግራፊክ እሴቶችን ማስፋፋት በጣም ጊዜ የሚወስድ ተግባር ነው። ስለዚህ ፣ አጭበርበርኩ! ጨዋታው የመዳፊት ጠቅታ ፣ ወይም የመንካት ሁነታን X ፣ Y አቀማመጥን ስለማያስፈልግ ፣ መላውን ሸራ እንደገና መለካት እችላለሁ!
ይህ በኤችቲኤምኤል እና በጃቫስክሪፕት ላይ ጠለፋ ያካተተ በመሆኑ የኤችቲኤምኤል 5 ሸራ ነገር ሙሉ ማያ ገጽ እንዲሠራ።
ከዚህም በላይ ጨዋታው በቁም ምስል ሁኔታ የሚጫወት ሲሆን ይህም ሸራውን በ 90 ዲግሪ ለማሽከርከር የሚያስፈልገንን የማያ ገጽ ሪል እስቴት ከፍተኛውን መጠቀምን ያመለክታል።
#ኤስ ኤስ ኤክስ ካንቫስ {
አቀማመጥ: ፍጹም; z-index: 0; ቀይር: አሽከርክር (-90 ዲግሪ); የለውጥ-አመጣጥ-ከላይ ቀኝ; ስፋት: ራስ -ሰር; }
ደረጃ 8: ይሠራል
ለመጀመሪያ ጨዋታዬ ላፕቶ laptopን ከጎኑ አዘንብዬ ፣ እና እንደዚህ ተጫውቻለሁ።
ደረጃ 9 - ክፍሉን ማዘጋጀት
አካላዊ ተቆጣጣሪ መገንባት የጉዞው መጀመሪያ ብቻ ነው ፣ መጨረሻው አይደለም። የተቀረው አካላዊ ቦታ ግምት ውስጥ መግባት አለበት።
በመጀመሪያ ፣ በእነሱ ላይ ሲያርፉ የግፊት ምንጣፎች ወለሉ ላይ ተንቀሳቅሰዋል። ይህ በአንዳንድ ባለ ሁለት ጎን ተለጣፊ ፓዳዎች በቀላሉ ተስተካክሏል። እነሱ በደንብ ይሰራሉ ፣ ግን ምናልባት ብዙ የመልበስ እና የመበስበስን አይይዙም።
በመቀጠልም ላፕቶ laptop ትንሽ ሞኝ ይመስላል ፣ ይህም ከጨዋታው ራሱ ያዘናጋዎታል። ስለዚህ ቴሌቪዥኑ ከአዳራሹ “ተበድሮ” እና በአካባቢው ወዳለው MakerSpace ተወስዶ በግድግዳው ላይ ተስተካክሎ ተገናኝቷል።
ወደፊት ተጫዋቹን ለመምራት በግፊት ምንጣፎች (ምናልባትም የኒል አርምስትሮንግ የመጀመሪያ ጨረቃ ህትመት ላይ) ዱካዎችን ማከል ጥሩ ይሆናል። እንዲሁም ለቴሌቪዥኑ የተሻለ መያዣ እና አከባቢ ስሜትን ይጨምራል። ምናልባት ብዙ ጊዜ እና ቦታ ያላችሁ ከእኔ የማዕድን ጉድጓድ ውስጥ የመውደቅ ክላስትሮፊቢክ ስሜትን ለመምሰል ፣ ምንጣፎቹን በሁለቱም ጎኖች የተቀመጠ የወረቀት ሜክ ሮክ ፊት ሊያደርጉ ይችላሉ!
ደረጃ 10: ተጠናቋል
እና እዚያ አለዎት። የመጀመሪያውን ጨዋታ የሚያሻሽል እና በሚጫወቱበት ጊዜ እርስዎን የሚስማማ ቀላል የቀን ፕሮጀክት!
አንዳንዶቹን ይህንን ሥራ ለመቀነስ በዋናው ጨዋታ ውስጥ ጥቅም ላይ የዋሉትን ቁልፍ ማተሚያዎችን በቀጥታ የሚያስመስለውን Makey Makey ን መጠቀም ይችላሉ። ግን ያ ለአንባቢ እንደ ልምምድ ሆኖ ይቀራል:)
ሁሉም ኮዱ በ Space Bounce repo ውስጥ በልዩ ቅርንጫፍ ውስጥ ነው
የሚመከር:
የአካል ክፍል ሞካሪ UNO ጋሻ: 5 ደረጃዎች (ከስዕሎች ጋር)
የአካል ክፍል ሞካሪ UNO ጋሻ: ሆላ ፎልክስ !! ባለፈው የእኔ ክፍል ሞካሪ ፕሮጄክቶች ውስጥ - የቁልፍ ፈታሽ በቁልፍ ሰንሰለት እና በዩኤስቢ አካል ሞካሪ ውስጥ የአርዱዲኖ ተኳሃኝ የሆነውን የአካል ክፍል ሞካሪ ስሪት የሚጠይቁ ብዙ አስተያየቶችን እና መልዕክቶችን ተቀብያለሁ። መጠባበቂያው አልቋል !!! C ን በማቅረብ ላይ
Makey-Makey እና ውሃን በመጠቀም አማራጭ የ MIDI መቆጣጠሪያን መፍጠር-6 ደረጃዎች
Makey-Makey እና ውሃን በመጠቀም አማራጭ የ MIDI መቆጣጠሪያን መፍጠር-ብጁ እና የፈጠራ ግብዓቶችን ለመፍጠር Makey-Makey ን መጠቀም በማይታመን ሁኔታ ቀላል ነው! ሃርዴዌሩን የሚጠቀሙ ብዙ ሰዎች ድምፆችን ወይም ማስታወሻዎችን ለማነሳሳት በ Makey-Makey ላይ ግብዓቶችን በመጠቀም የራሳቸውን መሣሪያ ሲፈጥሩ ፣ እኛ የበለጠ ማድረግ እንደምንችል ወስነናል።
በ NodeMCU ሁለንተናዊ የርቀት መቆጣጠሪያን መፍጠር - 7 ደረጃዎች
ከኖድኤምሲዩ ጋር ሁለንተናዊ የርቀት መቆጣጠሪያን መፍጠር በዚህ ፕሮጀክት ውስጥ የኢንፍራሬድ ምልክቶችን መደበቅ እና መላክ የሚችል ሁለንተናዊ የርቀት መቆጣጠሪያ እንሠራለን። ይህንን ሁሉ ሂደት ለመቆጣጠር የድር በይነገጽ ጥቅም ላይ ይውላል። NodeMCU ከኢንፍራሬድ የፎቶግራፍ አስተባባሪ ጋር በመተባበር የ
የአካል ብቃት እንቅስቃሴ ማሽን የዩኤስቢ ጨዋታ መቆጣጠሪያ 8 ደረጃዎች (ከስዕሎች ጋር)
የአካል ብቃት እንቅስቃሴ ማሽን የዩኤስቢ ጨዋታ መቆጣጠሪያ - በራስ እና በቤተሰብ ውስጥ የአካል ብቃት እንቅስቃሴን ለማበረታታት ፣ መደበኛ የዩኤስቢ ጨዋታ መቆጣጠሪያ አስማሚ የሚመስል አስማሚ ሠራሁ ፣ ነገር ግን በኤሊፕቲክ ማሽን ወይም የአካል ብቃት እንቅስቃሴ ብስክሌት ላይ በመርገጥ የጨዋታ እንቅስቃሴን ፍጥነት ይቆጣጠራል። በተለይ ለእሽቅድምድም ጨዋታዎች ጥሩ ነው። ያው ነው
የአርዱዲኖ የኪስ ጨዋታ ኮንሶል + ኤ -ማዝ - የማዝ ጨዋታ - 6 ደረጃዎች (ከስዕሎች ጋር)
የአርዱዲኖ የኪስ ጨዋታ ኮንሶል + ኤ -ማዜ - የማዝ ጨዋታ - ወደ መጀመሪያው አስተማሪዬ እንኳን በደህና መጡ! ዛሬ ላካፍላችሁ የምፈልገው ፕሮጀክት እንደ አርዱቦይ እና መሰል አርዱinoኖን መሠረት ያደረጉ የኪስ ኮንሶል የሆነው የ Arduino maze ጨዋታ ነው። ለኤክስፖ ምስጋና ይግባው በእኔ (ወይም በእርስዎ) የወደፊት ጨዋታዎች ሊበራ ይችላል