Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

M5stack-Avatorで顔出してみる その2:感情を切り替える

shuzo-kino.hateblo.jpの続き

何もしなくても瞬きっぽい感じで若干賑やかになりますが、
それに加えて表情の変更もできます。

実際のところ

参考もと

#include <M5Unified.h>
#include <Avatar.h>

using namespace m5avatar;

Avatar avatar;
const Expression expressions[] = {Expression::Angry, Expression::Sleepy,
                                  Expression::Happy, Expression::Sad,
                                  Expression::Doubt, Expression::Neutral};

int idx = 0;
int num_expressions = sizeof(expressions) / sizeof(Expression);

void setup()
{
  M5.begin();
  avatar.init(); // 描画を開始します。
}

void loop()
{
    M5.update();

    if (M5.BtnA.wasPressed()) {
        avatar.setExpression(expressions[idx]);
        idx = (idx + 1) % num_expressions;
    }
}

ボタンA(左端)を押すと表情が変わっていきます




感情の種類は6種類

ソースによると、感情の種類は今回使用した6種で全部のようです

enum class Expression { Happy, Angry, Sad, Doubt, Sleepy, Neutral };

m5stack-avatar/src/Expression.h at 7a90083edd9bbdc1a52ea13afe4d5c3b7fc7bfa8 · meganetaaan/m5stack-avatar · GitHub