גלגל בסטייל עם מתכת D20 האלקטרונית הזו DIY

גלגל בסטייל עם מתכת D20 האלקטרונית הזו DIY

רוצה משהו קצת ייחודי למשחק התפקידים הבא שלך על השולחן? מה דעתך על D20 אלקטרוני עם גרפיקה מותאמת אישית ללהיטים ופיספוסים קריטיים? היום אראה לך כיצד לבנות משלך עם ארדואינו וכמה חלקים פשוטים.





אל תדאג אם מעולם לא השתמשת בארדואינו, יש לנו מדריך מתחילים .





בנה תוכנית

זהו פרויקט פשוט. Arduino יניע תצוגת OLED, וכפתור יגלגל את הקובייה. גרפיקה מותאמת אישית תוצג עבור פגיעות קריטיות או לחמניות קריטיות. אתה יכול בקלות לשנות את הקוד כך שהוא D8, D10 או D12.





מה אתה צריך

  • 1 x ארדואינו
  • 1 x 0.96 ' תצוגת OLED I2C
  • 1 x לחצן לחיצה
  • 1 x 10k? נַגָד
  • 1 x לוח לחם
  • חוטי חיבור שונים
  • קוד מלא כאן, אם אינך רוצה לעקוב לאורך כל ההוראות הכתובות.

אלה הם חלקי הליבה שאתה צריך כדי לבנות D20 משלך. ייתכן שתרצה להתקין אותו במארז (להלן נדון) ולהלחם את המעגל למצב קבוע יותר. להלן החלקים הנוספים שתצטרך לעשות זאת:

  • 4 x ברגים M2 x 10 מ'מ (0.4 אינץ ')
  • 4 x אגוזים M2
  • 4 x 7 מ'מ (0.28 אינץ ') מכונות כביסה
  • הצמדת סוללה 9V (או חלופה מתאימה)
  • צינורות כיווץ חום שונים

מסכי OLED אלה מגניבים מאוד. בדרך כלל ניתן לרכוש אותם בלבן, כחול, צהוב, או תערובת של השלושה. רכשתי אחד בכחול, שיתאים למארז שלי. וודא שאתה מקבל I2C דגם במקום SPI .



כמעט כל ארדואינו יתאים. בחרתי בנאנו, מכיוון שהם קטנים מספיק כדי להתאים למארז. עיין במדריך הקנייה שלנו למידע נוסף על דגמי ארדואינו.

המעגל

להלן המעגל הדרוש לך:





לְחַבֵּר VCC ו GND בתצוגת OLED ל- Arduino +5V ו קרקע, אדמה . לְחַבֵּר אנלוגי 4 על הארדואינו לסיכה המסומנת SDA . לְחַבֵּר אנלוגי 5 אל ה SCL פִּין. סיכות אלה מכילות את המעגלים הדרושים להנעת התצוגה באמצעות אוטובוס I2C. הפינים המדויקים ישתנו לפי דגם, אך משתמשים ב- A4 ו- A5 ב- Nano ו- Uno. בדוק את ה תיעוד ספריית חוטים לדגם שלך אם אינך משתמש ב- Uno או Nano.

חבר את הסוללה לקרקע ואת יַיִן פִּין. זה מייצג מתח פנימה ומקבל מגוון מתח DC שונה - אך בדוק תחילה את הדגם הספציפי שלך, ולעתים הוא יכול להשתנות מעט.





חבר את הכפתור ל- סיכה דיגיטלית 2 . שימו לב איך 10k? הנגד מחובר לאדמה. זה חשוב מאוד! זה ידוע כנגד משיכה למטה, וזה מונע מהארדואינו לזהות נתונים מזויפים או הפרעות בלחיצת כפתור. הוא משמש גם להגנה על הלוח. אם הנגד לא היה בשימוש, +5V היה נכנס ישר לאדמה. זה ידוע בשם א מת קצר וזו דרך קלה להרוג ארדואינו.

אם אתה הלחמה מעגל זה, הגן על החיבורים שלך עם צינורות כיווץ חום:

הקפד לא לחמם אותו יותר מדי, ועשה זאת רק ברגע שאתה בטוח שהמעגל פועל. ייתכן שתרצה גם לסובב את הכבלים שלך לזוגות. זה שומר עליהם מסודרים ומסייע להגן עליהם מפני מתח מיותר:

מבחן כפתורים

כעת לאחר שבנית את המעגל, העלה את קוד הבדיקה הזה (הקפד לבחור את הלוח והיציאה הנכונים מתוך כלים> לוח ו כלים> יציאה תפריטים):

const int buttonPin = 2; // the number of the button pin
void setup() {
pinMode(buttonPin, INPUT); // setup button
Serial.begin(9600); // setup serial
}
void loop(){
if(digitalRead(buttonPin) == HIGH) {
Serial.print('It Works');
delay(250);
}
}

לאחר ההעלאה, שמור על ה- Arduino מחובר באמצעות USB ופתח את הצג הטורי ( למעלה מימין> צג סידורי ). אתה אמור לראות את המילים זה עובד מופיעים בכל פעם שאתה לוחץ על הכפתור.

אם לא קורה כלום, לך ובדוק שוב את המעגל שלך.

הגדרת OLED

עליך להתקין שתי ספריות כדי להניע את התצוגה. הורד את Adafruit_SSD1306 וספריות Adafruit-GFX [לא זמין יותר] מ- Github ושמרו אותן בתיקיית הספרייה שלכם. אם אינך בטוח היכן אתה נמצא תיקיות הספרייה שלך, עבור אל מדריך המשחקים הרטרו שלי, שם אני מגדיר את אותה תצוגה בפירוט רב יותר.

הפעל מחדש את IDE Arduino שלך והעלה סקיצה לבדיקה מתוך קובץ> דוגמאות תַפרִיט. בחר Adafruit SSD1306 ואז ssd1306_128x64_i2c . העלה קוד זה (ייקח זמן), ותראה הרבה צורות ודוגמאות בתצוגה:

אם לא קורה כלום, בדוק שוב את החיבורים שלך. אם לאחר בדיקה זה עדיין לא יעבוד, יהיה עליך לשנות את הקוד לדוגמה.

חלונות 10 שנה סמלי תפריט התחלה

שנה את השורה הזו (בתחילת ה- להכין פוּנקצִיָה):

display.begin(SSD1306_SWITCHCAPVCC, 0x3D);

לזה:

display.begin(SSD1306_SWITCHCAPVCC, 0x3C);

זה מספר לספרייה פרטים ספציפיים על התצוגה שבה אתה משתמש. כעת אתה אמור להיות מוכן להמשך בניה.

המקרה

אם אתה בונה את זה על קרש לחם, או שאתה לא רוצה לאסוף אותו, תוכל לדלג על שלב זה.

עיצבתי והדפסתי את הקופסה הזו בתלת מימד. תעלה את הקבצים יקום . אל תדאג אם אין לך מדפסת תלת מימד - שירותים מקוונים רכזות תלת מימד ו Shapeways לספק שירותי הדפסה מקוונים.

אתה יכול בקלות להכין את הקופסה הזו מעץ, או על ידי רכישת פלסטיק תיבת פרויקט .

המכסה הוא עיצוב פשוט להתאמה לדחיפה, ומכיל כמה גזרות לחומרה:

הקוד

עכשיו כשהכל מוכן, הגיע הזמן לקוד. הנה איך זה יעבוד פסאודוקוד :

if button is pressed
generate random number
if random number is 20
show graphic
else if random number is 1
show graphic
else
show number

כדי שזה יעבוד כמו שצריך, צריך ליצור מספר אקראי - זו גלילת הקובייה. ל- Arduino יש מחולל מספרים אקראיים בשם אַקרַאִי , אבל לא צריך להשתמש בו. הוא אמנם מספיק טוב למשימות אקראיות בסיסיות, אך הוא אינו מספיק אקראי למות אלקטרוני. הסיבות מדוע מעט מסובכות, אך תוכל לקרוא עוד אם אתה מעוניין בכך boallen.com .

הורד את TrueRandom ספרייה מאת סירק ב- Github. הוסף זאת לתיקיית הספרייה שלך והפעל מחדש את IDE.

כעת צור קובץ חדש והגדר את הקוד הראשוני שלך (או פשוט קח את הקוד המוגמר מ- GitHub):

#include
#include
#include
#include
#include
Adafruit_SSD1306 display(4);
void setup() {
display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // setup the OLED
pinMode(buttonPin, INPUT); // setup button
}
void loop() {

}

קוד זה מגדיר את ה- OLED, וכולל את כל הספריות הדרושות לך כדי לתקשר איתו, יחד עם ספריית המספרים האקראיים החדשה שלך. כעת הוסף זאת ללולאה הראשית:

if(digitalRead(buttonPin) == HIGH) {
delay(15);
if(digitalRead(buttonPin) == HIGH) {
display.fillScreen(BLACK); // erase the whole display
display.setTextColor(WHITE);
display.setTextSize(2);
display.setCursor(0, 0);
display.println(TrueRandom.random(1, 21)); // print random number
display.display(); // write to display
delay(100);
}
}

זה די בסיסי כרגע, אבל זה D20 עובד. בכל פעם שלוחצים על הכפתור, מספר אקראי בין אחד ל -20 מוצג על המסך:

זה עובד טוב, אבל זה קצת משעמם. בואו נעשה את זה טוב יותר. צור שתי שיטות חדשות, צייר די ו מחק די :

void drawDie() {
display.drawRect(32, 0, 64, 64, WHITE);
}

אלה יציירו קובייה באמצע המסך. אולי תרצה להפוך את זה למסובך יותר, אולי על ידי ציור D20, או D12 וכן הלאה, אבל פשוט יותר לצייר קובייה בסיסית בעלת שישה צדדים. להלן השימוש הבסיסי:

drawDie();

לאחר מכן, שנה את הלולאה הראשית שלך כדי לצייר את המספר האקראי, רק גדול יותר ובאמצע. שנה את גודל הטקסט והסמן לזה:

display.setTextColor(WHITE);
display.setCursor(57, 21);

זה נראה הרבה יותר טוב עכשיו:

הבעיה היחידה היא במספרים גדולים מתשע:

התיקון לכך פשוט. כל מספר פחות מ -10 יגדיר את הסמן למיקום שונה מהמספרים 10 ומעלה. החלף שורה זו:

מה זה אומר לעקוב אחר מישהו בפייסבוק
display.setCursor(57, 21);

עם זה:

int roll = TrueRandom.random(1, 21); // store the random number
if (roll <10) {
// single character number
display.setCursor(57, 21);
}
else {
// dual character number
display.setCursor(47, 21);
}

כך זה נראה כעת:

כל שנותר כעת הוא לתמונות כאשר אתה מגלם להיט קריטי או החמצה. ישנם מספר שלבים, אך זהו תהליך פשוט מספיק.

מצאו תמונה מתאימה בה אתם רוצים להשתמש (ככל שהפשוט יותר טוב יותר מכיוון שהתצוגה היא בצבע יחיד בלבד). להלן התמונות בהן השתמשתי:

קרדיט תמונה: publicdomainvectors.org

כל תמונה שבה תרצה להשתמש תצטרך להמיר למערך HEX. זהו ייצוג של התמונה בצורה של קוד. ישנם כלים רבים זמינים לשם כך, וחלקם נכתבו במיוחד עבור תצוגות OLED. הדרך הקלה ביותר היא להשתמש ב- תמונה C_Hex כלי מקוון. להלן ההגדרות הדרושות:

האם לטלפון שלי יש כתובת IP

העלה את התמונה שלך והגדר את פורמט הקוד HEX: 0x . מַעֲרֶכֶת משמש ל ל שחור/לבן עבור כל פונקציית התמונה לצייר . השאר את כל האפשרויות האחרות כברירות המחדל. אתה יכול לשנות את גודל התמונה כאן אם אתה צריך. ללחוץ קבל מחרוזת C ואתה אמור לראות את נתוני התמונה מופיעים:

תזדקק לנתונים שנוצרו תוך דקה. צור שתי פונקציות שנקראות drawExplosion ו drawSkull (או שם מתאים לגרסה שלך). הנה הקוד:

void drawExplosion() {
// store image in EEPROM
static const unsigned char PROGMEM imExp[] = {
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xfc,0x00,0x00,0x00,0x00,0x00,0x78,0x7f,0xff,0xc0,0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xf0,0x00,0x00,0x00,0x3f,0xff,0xff,0xff,0xfb,0x00,0x00,0x00,0x7f,0xff,0xff,0xff,0xff,0xc0,0x00,0x00,0x7f,0xff,0xff,0xff,0xff,0xff,0x00,0x01,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x03,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x03,0xff,0xff,0xff,0xff,0xff,0xff,0x80,0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xc0,0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xe0,0x07,0xff,0xff,0xff,0xff,0xff,0xff,0xc0,0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xe0,0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xe0,0x1f,0xff,0xff,0xff,0xff,0xff,0xff,0xe0,0x0f,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xf0,0x03,0xff,0xff,0xff,0xff,0xff,0xff,0xe0,0x01,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x0f,0xff,0xff,0xff,0xff,0xfe,0x00,0x00,0x07,0xff,0xff,0xf9,0xff,0xd8,0x00,0x00,0x00,0x3f,0xff,0xf0,0x0f,0x00,0x00,0x00,0x00,0x1f,0x1f,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x0f,0xe0,0x00,0x00,0x00,0x00,0x00,0x00,0x0f,0xe0,0x00,0x00,0x00,0x00,0x00,0x00,0x0f,0xe0,0x00,0x00,0x00,0x00,0x00,0x00,0x0f,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x0f,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x0f,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x3f,0xf8,0x00,0x00,0x00,0x00,0x00,0x00,0x7f,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x7f,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x7f,0xff,0x00,0x00,0x00,0x00,0x00,0x00,0x7f,0xfe,0x00,0x00,0x00,0x00,0x00,0x00,0x7f,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x0f,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xe0,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xe0,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xe0,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x0f,0xf0,0x00,0x00,0x00,0x00,0x00,0x00,0x0f,0xf8,0x00,0x00,0x00,0x00,0x00,0x00,0x0f,0xfc,0x00,0x00,0x00,0x00,0x00,0x00,0x1f,0xff,0x00,0x00,0x00,0x00,0x00,0x0f,0xff,0xff,0xff,0x00,0x00,0x00,0x07,0xff,0xff,0xff,0xff,0xf0,0x00,0x00,0x0f,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x1f,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x1f,0xff,0xff,0xff,0xff,0xfc,0x00,0x00,0x01,0xbf,0xff,0xff,0xff,0x30,0x00,0x00,0x00,0x13,0xf7,0xb8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
display.drawBitmap(0, 0, imExp, 64, 62, 1); // draw mushroom cloud
}
void drawSkull() {
// store image in EEPROM
static const unsigned char PROGMEM imSku[] = {
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xe0,0x00,0x00,0x00,0x00,0x30,0x00,0x00,0xf0,0x00,0x00,0x00,0x00,0x78,0x00,0x07,0xf0,0x00,0x00,0x00,0x00,0xfc,0x00,0x07,0xf8,0x00,0x00,0x00,0x00,0xfe,0x00,0x07,0xf8,0x00,0x00,0x00,0x01,0xfe,0x00,0x07,0xfc,0x00,0x00,0x00,0x01,0xfe,0x00,0x07,0xfe,0x00,0x3f,0xc0,0x03,0xfe,0x00,0x01,0xff,0x81,0xff,0xfc,0x07,0xec,0x00,0x00,0x3f,0xc7,0xff,0xff,0x1f,0xc0,0x00,0x00,0x0f,0xcf,0xff,0xff,0xdf,0x00,0x00,0x00,0x07,0xbf,0xff,0xff,0xee,0x00,0x00,0x00,0x01,0x7f,0xff,0xff,0xf0,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xf8,0x00,0x00,0x00,0x01,0xff,0xff,0xff,0xf8,0x00,0x00,0x00,0x03,0xff,0xff,0xff,0xfc,0x00,0x00,0x00,0x07,0xff,0xff,0xff,0xfe,0x00,0x00,0x00,0x0f,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x0f,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x1f,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x1f,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x1f,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x1f,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x1f,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x1f,0xff,0xff,0xff,0xff,0x80,0x00,0x00,0x1e,0x3f,0xff,0x3f,0xc7,0x80,0x00,0x00,0x1e,0x0c,0x0f,0x00,0x07,0x80,0x00,0x00,0x1e,0x00,0x0f,0x00,0x0f,0x80,0x00,0x00,0x1e,0x00,0x19,0x80,0x0f,0x00,0x00,0x00,0x0f,0x00,0x19,0x80,0x0f,0x00,0x00,0x00,0x0d,0x00,0x30,0xc0,0x1f,0x00,0x00,0x00,0x05,0x80,0x70,0xc0,0x1e,0x00,0x00,0x00,0x05,0xf0,0xe0,0xe0,0x36,0x00,0x00,0x00,0x01,0xff,0xe0,0x7f,0xf0,0x00,0x00,0x00,0x03,0xff,0xc4,0x7f,0xf0,0x00,0x00,0x00,0x03,0xff,0xcc,0x7f,0xf0,0x00,0x00,0x00,0x03,0xff,0xcc,0x7f,0xf0,0x00,0x00,0x00,0x03,0xff,0x9e,0x7f,0xf0,0x00,0x00,0x00,0x00,0xff,0xfe,0x7f,0xc0,0x00,0x00,0x00,0x00,0x01,0xff,0xf8,0x1c,0x00,0x00,0x00,0x03,0xe0,0x3f,0x01,0xbf,0x00,0x00,0x00,0x07,0xa6,0x40,0x09,0x9f,0x80,0x00,0x00,0x1f,0x27,0x5a,0x39,0x9f,0xf8,0x00,0x01,0xff,0x27,0xdb,0x39,0x0f,0xfc,0x00,0x03,0xfe,0x31,0x7f,0x39,0x07,0xfc,0x00,0x03,0xfc,0x10,0x1a,0x02,0x03,0xf8,0x00,0x03,0xf8,0x10,0x00,0x02,0x01,0xf0,0x00,0x01,0xf8,0x10,0x00,0x02,0x01,0xe0,0x00,0x00,0x78,0x10,0x00,0x02,0x00,0xe0,0x00,0x00,0x70,0x30,0x00,0x02,0x00,0x00,0x00,0x00,0x30,0x20,0x00,0x03,0x00,0x00,0x00,0x00,0x00,0x64,0x00,0x1b,0x00,0x00,0x00,0x00,0x00,0x73,0x55,0x63,0x00,0x00,0x00,0x00,0x00,0xf9,0x55,0x4f,0x00,0x00,0x00,0x00,0x00,0x7f,0x14,0x1f,0x00,0x00,0x00,0x00,0x00,0x1f,0xe0,0xfe,0x00,0x00,0x00,0x00,0x00,0x0f,0xff,0xfc,0x00,0x00,0x00,0x00,0x00,0x07,0xff,0xf0,0x00,0x00,0x00,0x00,0x00,0x03,0xff,0xc0,0x00,0x00,0x00,0x00,0x00,0x00,0x38,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};
display.drawBitmap(0, 0, imSku, 60, 64, 1); // draw skull cloud
}

אם ברצונך להשתמש בתמונות שהשתמשתי בהן, המשך והעתק את הקוד. אם ברצונך להשתמש בתמונות משלך שיצרת קודם לכן, העתק את קוד הבייט לתוך imSku ו imExp מערכים כנדרש.

כך נראים התמונות האלה בתצוגה:

החלק החשוב ביותר בקוד זה הוא השורה הזו:

static const unsigned char PROGMEM imSku[]

זה אומר לארדואינו לאחסן את התמונות שלך ב- EEPROM ( מהו EEPROM? ) במקום ה- RAM שלו ( מדריך מהיר ל- RAM ). הסיבה לכך פשוטה; לארדואינו יש זיכרון RAM מוגבל, והשימוש בו כולו לאחסון תמונות עשוי שלא להשאיר כל מה שנותר לקוד שלך לביצוע.

שנה את העיקרי שלך אם הצהרה להראות גרפיקה חדשה זו כאשר אחד או 20 מתגלגלים. שימו לב לשורות הקוד כדי להציג את המספר המגולגל לצד התמונות גם כן:

if(roll == 20) {
drawExplosion();
display.setCursor(80, 21);
display.println('20');
}
else if(roll == 1) {
display.setCursor(24, 21);
display.println('1');
drawSkull();
}
else if (roll <10) {
// single character number
display.setCursor(57, 21);
display.println(roll); // write the roll
drawDie(); // draw the outline
}
else {
// dual character number
display.setCursor(47, 21);
display.println(roll); // write the roll
drawDie(); // draw the outline
}

והנה איך נראים הלחמניות החדשות האלה:

זה הכל בצד הקוד (לך קח את הקוד מ- GitHub אם דילגת על כל זה). תוכל לשנות זאת בקלות ל- D12, D8 וכן הלאה.

הרכבה סופית

עכשיו, כשכל השאר מסתיים, הגיע הזמן לאסוף הכל. הברג את הצג, וודא שלא להדק יתר על המידה את הברגים. זה אולי החלק הקשה ביותר. סדקתי את המסך כך שאולי תרצה להשתמש בכמה מדיחי פלסטיק. חתכתי כמה ריבועים פלסטיקארד :

האחים והברגים הקטנים יכולים להיות מסובכים לחיבור. עֵצָה: השתמש בחתיכה קטנה של Blu-Tack בקצה המברג כדי להושיב את האומים בהתחלה:

הברג את הכפתור, חבר את הסוללה וסגור את המכסה. היזהר שלא ללכוד חוטים כלשהם, או לאגד אותם בחוזקה מדי, ואולי לגרום לקצר. תלוי באורך הלידים הנגררים שלך, ייתכן שיהיה עליך להגן על חיבורים חשופים עם קצת בידוד (קופסה טורית עובדת היטב):

כך זה נראה בפנים:

והנה המוצר המוגמר:

כעת אתה צריך להיות הבעלים הגאה של מכשיר D20 אלקטרוני!

אילו שינויים ביצעת? שינית את התמונות? ספרו לנו בתגובות, נשמח לראות מה עשיתם!

לַחֲלוֹק לַחֲלוֹק צִיוּץ אימייל מדריך למתחילים בדיבור אנימציה

הנפשת דיבור יכולה להיות אתגר. אם אתה מוכן להתחיל להוסיף דיאלוג לפרויקט שלך, נשבור עבורך את התהליך.

קרא הבא
נושאים קשורים
  • עשה זאת בעצמך
  • ארדואינו
  • משחק לוח
  • מכשירי חשמל
על הסופר ג'ו קוברן(136 מאמרים פורסמו)

ג'ו בוגר מדעי המחשב מאוניברסיטת לינקולן שבבריטניה. הוא מפתח תוכנה מקצועי, וכשהוא לא מטיס רחפנים או כותב מוזיקה, לעתים קרובות אפשר למצוא אותו מצלם או מפיק סרטונים.

עוד מאת ג'ו קוברן

הירשם לניוזלטר שלנו

הצטרף לניוזלטר שלנו לקבלת טיפים, סקירות, ספרים אלקטרוניים בחינם ומבצעים בלעדיים!

לחצו כאן להרשמה