Diskuze: Změna tiles na objekt/y
V předchozím kvízu, Online test znalostí GameMakeru, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 8 zpráv z 8.
V předchozím kvízu, Online test znalostí GameMakeru, jsme si ověřili nabyté zkušenosti z kurzu.
GMS2 sice nepoužívám ( vlastním licenci na GMS1 a nemám důvod ke změně ), ale vypadá to podle online helpu, že by to mělo fungovat celkem jednoduše:
Pomocí tilemap_get_at_pixel(map_id, x y) bys našel tile data podle polohy v roomu, pak vytvořil prázdný objekt, který by vykresloval tatáž data pomocí draw_tile. Celé by to šlo nacpat do jednoho skriptu, který by jako argumenty měl konkrétní xy polohu.
Ale asi se ti to výrazně zpomalí, když převedeš tiles na objekty...
Moc nerozumím tomu objektu, který by vykresloval data pomocí draw_tile.. Myslíš to tak, že bych místo spritu vykreslil daný tile na souřadnice toho objektu? Potřebuji nahradit tiles objekty, protože těm objektům chci dát gravitaci a další podmínky.. Myslím, že u tiles by to bylo velice náročné... Navíc by měnili polohu podle toho co hráč dělá, takže bych musel dělat i pixel kolizi.. Kvůli optimalizaci bych jen hlídal, aby nebylo v roomu příliš těch objektů..
Aha, tydlevidle. Ne, že by to nešlo i tak řešit kolizní maskou na průhledném sprite, ale je to "pravou rukou zleva za hlavou" a celkem mizí výhodnost práce s tiles. Napsal bych si jednoduchý level editor a na tiles se vykašlal. Tiles jsou dobré právě jen na to, aby vykreslovaly pasivní grafiku. Vlastní systém level designu ti umožní dělat lepší věci bez komplikací. Napíšeš si právě ty features, které potřebuješ a žádné jiné.
To chápu, ale já se tomu věnuji jen ve volném čase. Mám to jako zábavu
a než bych udělal slušný editor a tak, tak bych nějakou tu hru kterou
plánuji ani nedokončil.. Všichni víme že čím víc se něco protahuje tím
klesá šance na dokončení
Proto mi přijde jako nejlepší řešení jen přepsat tiles již v
existujícím editoru GMS2 za objekty.. V podstatě by ta samotná změna
problěhla jen při startu levelu, takže jediné co by žralo výkon je hromada
objektů.. Určitě by to šlo nějak naprogramovat, že by se jednotlivé
tilesy chovali dle gravitace s kolizí a tak.. ale zaprvé jsem spíš
pokročilý začátečník a za druhé by to zase zabralo ten čas
Tady píšu hlavně proto, že
potřebuji radu jak na to
Klidně i nějakým pseudo kódem
Rozumím tomu, že chceš jít snadnou cestou. Ale jsem přesvědčen, že
tahle snadná není. Hádám, že je tak jedna ku stu šance, že dosáhneš
uspokojivého výsledku. Pokud se ti to povede zprovoznit, tak to tu určitě
postni. Slibuju, že dám like.
U čehokoli, co má být jiné ( chování, kolize, vzhled ) tě definice těch odlišností stejně nemine. Objekty můžeš lépe třídit, nechat dědit vlastnosti a tím jich ve skutečnosti může být jen několik. Editor může být jen pár řádků na vložení objektu ( typ nastavíš třeba kolečkem myši ) a pak save do texťáku. Level máš hotový. Klidně zkopíruješ celé části jako text a dáš jim jiný vzhled pomocí find&replace atd. Jo, přijde mi to jednodušší. Ale k ničemu tě nenutím. Klidně jdi svou vlastní cestou.
Zobrazeno 8 zpráv z 8.