Created
May 14, 2020 03:52
-
-
Save mongonta0716/ee59eb3e163a90bb1e166774beb09b36 to your computer and use it in GitHub Desktop.
スプライトの最大数を調査するためのサンプル(Investigate the maximum number of sprites.)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// スプライトの最大数調査用サンプル | |
// 使い方 | |
// 下記の変数を変えることにより、使用可能なSpriteの最大数を調べることができます。 | |
// ・MAX_SPRITE 表示したいスプライトの数 | |
// ・sprite_w スプライトの幅 | |
// ・sprite_h スプライトの高さ | |
// ・color_depth スプライトのカラー深度 | |
// ●PSRAMを使う場合 | |
// ・use_psramをtrueにしてください。 | |
// 表示できた数字が最大の枚数です。 | |
#include <LovyanGFX.hpp> | |
static LGFX lcd; | |
#define MAX_SPRITE 32 | |
uint16_t sprite_w = 320; | |
uint16_t sprite_h = 240; | |
uint16_t color_depth = 16; | |
bool use_psram = true; | |
static LGFX_Sprite sprite[MAX_SPRITE](&lcd); | |
static uint16_t colors[16] = { | |
0x0000, 0x000F, 0x03e0, 0x03ef, | |
0x7800, 0x780f, 0x7be0, 0xd69a, | |
0x7bef, 0x001f, 0x07e0, 0x07ff, | |
0xf8ff, 0xf81f, 0xffe0, 0xffff, | |
}; | |
void setup() { | |
lcd.init(); | |
for (int i=0; i<MAX_SPRITE; i++) { | |
sprite[i].setSwapBytes(true); | |
sprite[i].setPsram(use_psram); | |
sprite[i].setColorDepth(color_depth); | |
sprite[i].createSprite(sprite_w, sprite_h); | |
uint16_t x = 20*(i%16); | |
uint16_t y = (20*(i/16)) % 240; | |
uint16_t color = colors[i%16]; | |
sprite[i].fillSprite(color); | |
sprite[i].setTextSize(1); | |
sprite[i].printf("%d", i); | |
sprite[i].pushSprite(x, y); | |
} | |
} | |
void loop() { | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment