A display choice for a game

Hello there. I have been looking for a piece of advice on what display it is better to use for creating a game. For example, I tried 32 x 8 MAX7219 with SPI and coordinate axis X and Y which is very convenient for a matrix control, but I am not sure it has been a totally correct choice.

Here is a link where I can demonstrate a player movement with joystick throughout a game field with an approach described above: Forum_CarMatrixGame - Wokwi ESP32, STM32, Arduino Simulator

Please, let me know if there is another popular choice among those who is fond of games with Arduino as I am a complete novice about this topic.

There is a wide variety of displays that can be used with Arduino.

What do you need for the games you want to program?

Resolution?

Colour?

Update speed?

It all depends on what type of games you want to program.

PaulRB, hello. For now I have a 32 x 8 field, but actually the module consists of four 8 x 8 matrices, so I need to update indices for each 8 x 8 matrix when I do a transition from one matrix to another (forward or backward) which is a bit of a problem, of course. So I need something similar with coordinate axis, but without such transitions. Colors are important, but not crucial. I just need a simple way of managing the LEDS with coordinates x and y. As it is going to be a car game update speed is important too.

Monochrome:
https://www.amazon.com/GeeekPi-MAX7219-Display-Arduino-Raspberry/dp/B088LJZ8LK

http://www.planetarduino.org/?cat=328

Color:

If you want to continue using the LED matrices then you can use my MD_MaxPanel library (install from the IDE Library Manager). I wrote a blog about it here some time ago.

xfpd, hello. The point is that I have been looking for a 32 x 8 display in which there are no any transitions between any two matrices. I mean there should be no any unique matrix index for which I can set an x and y coord in 1 - 8 range for each matrix. I need a range exactly between 1 - 32 to avoid that lack in the terms of writing my programming code. Does the matrix which you described above have such a problem? It's not crucial, but would simplify my efforts in a great way.

marco_c, hello. Thank you for your offer. I will keep that in mind and let you know if I need your help.

You are describing MD_MaxPanel :slight_smile:

marco_c, oh, thank you so much for your help. I am very glad that such library exists. I will definitely try it in action.

marco_c, thank you so much. Finally, I was able to use your library. Here is a working code snippet if anybody wants to see it in action:

#include <MD_MAXPanel.h>

const int LOAD_PIN = 10;
const int CLK_PIN = 11;
const int DATA_PIN = 9;

const MD_MAX72XX::moduleType_t HARDWARE_TYPE = MD_MAX72XX::FC16_HW;
const uint8_t X_DEVICES = 4;
const uint8_t Y_DEVICES = 1;

// MD_MAXPanel mp = MD_MAXPanel(HARDWARE_TYPE, LOAD_PIN, X_DEVICES, Y_DEVICES);
MD_MAXPanel mx = MD_MAXPanel(HARDWARE_TYPE, DATA_PIN, CLK_PIN, LOAD_PIN, X_DEVICES, Y_DEVICES);

void setup() {

    mx.begin();

}

void loop() {

    mx.clear();
    mx.setPoint(20, 0, true); //No matrix index is needed for the 20-th position on the 3-d module

}

Good to see it works for you.

FYI you only need one of mx or mp declared. I would suggest commenting out the mp declaration as it is using up memory and you are not utilizing the object.

Yes, thank you. I just was lazy enough to comment it out yesterday. Now it is done in the post on the forum as well.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.