Přeskočit na obsah

picogame — co použít na co

Jedna stránka, jeden úkol: víš, co chceš postavit — tenhle rejstřík říká, kterou část použít, a odkazuje na stránku, která ji vysvětluje. (Jsi v enginu nový? Přečti si nejdřív Jak picogame funguje.)

RAM ve zkratce: uchovávaný celoobrazovkový Canvas ≈ 150 KB; StripDraw / Tilemap ≈ 0 — úplné ceny v Kreslicích cestách.

Chci… Použij Detaily
zobrazit pohybující se objekt (hráč, nepřítel, střela) Sprite Reference
nakreslit mapu / velký scrollující svět Tilemap (1 B na buňku) Kreslicí cesty
levně nakreslit animovaný celoobrazovkový efekt (obloha, silnice, gradient) StripDraw (bez uchovávaného pixelového bufferu) Kreslicí cesty
panel, který se mění zřídka (orámovaný box, ukazatel) Canvas (uchovává w*h*2 B) Kreslicí cesty
stavový řádek / HUD / dialog / menu widgety picogame_ui — vyber podle rozhodovací matice Kreslicí cesty · Text a UI
rotovat / škálovat sprite za běhu Sprite.scale / Sprite.angle; pro mnoho stále rotujících objektů připrav snímky předem Sestavování scén
přebarvit / bliknout / zprůhlednit sprite bez bitmap navíc blit efekty flash / tint / dither / shadow (vždy jeden naráz) Reference
ostrá otočka o 90° bez blikotání transpose + flipy (všech 8 orientací) Reference
sledovat hráče kamerou scene.set_view(ox, oy) + HUD vrstvy s fixed=True Herní vzory
otřes obrazovky / přechod / plynulá kamera picogame_fx Efekty a odezva
animovaná voda/láva, cyklování palety picogame_palette Efekty & juice
spousta malých jisker / úlomků Particles Reference
terén / obloha s přirozenou variací šum počítaný v C: value2d / fbm2d Reference
pseudo-3D podlaha nebo first-person stěny Canvas.mode7 (podlaha, přes picogame_mode7) / picogame_ray (stěny) — obojí do StripDraw Pseudo-3D
skutečné flat-shaded polygonové 3D (blocky světy, low-poly) pg.project (dávková projekce, float/fixed podle pg.FPU) + pg.Triangles (C-kompozitovaná dávková vrstva; na canvas cestě Canvas.fill_triangles) Pseudo-3D · Reference
izometrická deska (RPG / taktiky / builder) picogame_iso.IsoView (celočíselná projekce + painter’s klíč + dávka emit_blocks) Pseudo-3D
závodní silnice ve stylu OutRun ve 30 fps pg.road_edges + Canvas.road (per-scanline smyčka v C, do StripDraw) Reference
Chci… Použij Detaily
detekovat zásahy a.overlaps(b) (box), a.near(b, r) (kruh), picogame_tiles (sonda do mřížky) Matematika & kolize
vystřelit hodně střel / vytvářet nepřátele picogame_pool.Pool — často používané sprity znovu využívej Úryvky kódu
animovat sprite (chůze, klid, výbuch) sprite.frame ručně, nebo časový modul picogame_anim Animace
meziscéna / titulní obrázek bez framebufferu picogame_cutscene (čte postupně z flash) Animace
číst tlačítka přes stejné API picogame_input.Buttons Vstup a ovládání
hrát s USB gamepadem nebo klávesnicí (desky s USB hostem, např. Fruit Jam) picogame_usbpad / picogame_usbkbd (připojené automaticky přes Buttons) Vstup a ovládání
dát každému hráči vlastní ovladač (lokální multiplayer) jeden Buttons(sources=[pad]) na hráče + find_pads() Vstup a ovládání
tolerovat skok krátce po opuštění hrany nebo stisk před dopadem picogame_input.Timer Spuštění a herní smyčka · Úryvky kódu
pohyb nezávislý na snímkové frekvenci picogame_clock.Clock (dt) / FixedStep (deterministický) Boot a herní smyčka
opakovatelné náhodné hodnoty a rovnoměrné generování objektů picogame_rand Matematika a kolize
přehrávat zvuky (samply vs. synth vs. MIDI) picogame_audio (WAV) / picogame_synth (synthio) Audio a hudba
hotová sada charakteristických efektů bez ladění not picogame_sfx (Kit nad picogame_synth) Audio a hudba
uložit nejvyšší skóre (pro zobrazení skóre na obrazovce viz Text a UI) picogame_save (NVM) Ukládání & paměť
tvořit mnoho úrovní deklarativní formát scény + editor; malé úrovně napiš ručně Formát scény · Sestavování scén
pauza / menu nad živou scénou picogame_game.overlay() Snippety

Vejít se do zařízení

Sekce “Vejít se do zařízení”
Chci… Použij Detaily
vejít se do RAM rozpočet → měření → optimalizace Vejít se do paměti
udržet stálý frame rate herní smyčka ve funkci, dirty-rect-friendly pohyb, 0-RAM vrstvy Výkon
uložit velkou grafiku / mnoho snímků zmrazená data vs. soubor→RAM vs. postupné čtení (picogame_stream) Vejít se do paměti
zmenšit tileset png2picogame.py --dedup (sloučí otočené a zrcadlené tily) Průvodce enginem
pochopit rychlé DMA a přenositelné vykreslování pg.Display vs. běžný busdisplay Průvodce enginem
běžet v 640×480 přes HDMI (Fruit Jam) CIRCUITPY_DISPLAY_COLOR_DEPTH = 8 (RGB332, řeší setup() automaticky) Spuštění na hardwaru
běžet na desce, kterou sis sám zapojil předpřipravený generický firmware + settings.toml (PICOGAME_BUTTONS, displej, matice, USB klíče) Vlastní deska
nasadit na zařízení / řešit problémy .mpy, lib bundle, sériová konzole Spuštění na hardwaru

Stránka Detaily u každého řádku nese chování, náklady i záludnosti — tahle stránka schválně nic z toho neopakuje.