C# Kamera elkészítése

C# Kamera elkészítése
2011-10-02T11:36:17+02:00
2011-10-03T10:52:00+02:00
2022-11-23T06:00:38+01:00
TaM E E
Sziasztok!
(C# WinForms)
Csináltam egy programot (rendkívül hasonlít a Mariohoz, és nem csak a nevében :)) még koránt sincs kész, de sajnos a kamerát egyszerűen nem tudom elkészíteni(értem ez alatt azt, hogy ha a player a képernyő széléhez merészkedik akkor a form tartalma arrébb csússzon így kamera hatást keltve).

Fogalmam nincs, hogy kezdjek hozzá, ebben szeretném a segítségetek kérni. Ti mit javasoltok, hogy oldjam meg,
a segítséget előre is köszönöm.
Mutasd a teljes hozzászólást!
Jó lett volna ha egy picit írsz a programod felépítéséről. Gondolom a player egy picturebox, amit a keydown eseményben mozgatsz, attól függően, hogy melyik billentyű lett lenyomva. Ha ez így van, akkor próbáld meg úgy megoldani, hogy a formodon legyen egy panel, és minden egyéb konrtol ezen a panelen legyen. Ez csak azért fog kelleni, mert így elég lesz csak a paneled mozgatni, és minden egyéb kontrol mozogni fog vele együtt, mivel minden a panelen lesz. Ez persze csak a kameramozgás lesz, ha a player mozog, akkor őt ugyanúgy mozgatod a panelen, ahogy eddig a formodon. Ez igaz az egyéb játékban megtalálható dolgokra is.

A mozgatás lényegében annyi, hogy ha a player a formod (nem a panel) bizonyos részéhez ért, akkor elkezded mozgatni a paneled is (Position.Left tulajdonság állításával). Azt pedig, hogy az emberkéd jelenleg hol helyezkedik el a képernyőn, az ember (picturebox) helyzete a panelen, és ehhez hozzáadod a panel Left pozícióját is.

Valamint nézz utána ezeknek a metódusoknak, hasznosan amikor egy kontrol helyzetét szeretnéd kiszámolni egy másikhoz képest:
Control.PointToScreen
Control.PointToClient
Mutasd a teljes hozzászólást!

Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd