Autor Wątek: [Allegro] Okrągła bitmapa  (Przeczytany 3558 razy)

Offline C'mons

  • Użytkownik

# Lipiec 17, 2009, 13:52:33
O to przepraszam. Ale myślę, że ja przedstawiłem to w lżejszej formie - wszak nie mnie to oceniać. Myślę, że oba przepisy mu się przydadzą.
« Ostatnia zmiana: Lipiec 17, 2009, 16:11:36 wysłana przez C'mons »

Offline Mr. Spam

  • Miłośnik przetworów mięsnych

Offline Krzysiek K.

  • Moderator
    • DevKK.net

# Lipiec 17, 2009, 13:54:45
Oti: punkt 6. zamuli.
C'mons: punkt 4 zamuli, chociaż trochę mniej.


Moja propozycja:
1. Przygotowujesz bitmapę z radarem, poza kołem mogą być dowolne śmieci, o to dbać na razie nie musisz.
2. Na bitmapie z radarem rysujesz na różowo odwrotność koła uzywając funkcji hline.
3. Maskedblitujesz wynik na ekran.

W punkcie 2. dla każdej współrzędnej X rysujesz dwie poziome linie - od brzegu do koła i od koła do drugiego brzegu. Gdzie zaczyna i kończy się koło możesz wyznaczyć ze wzoru na okręg (prosta funkcja kwadratowa, która upraszcza się w tym przypadku do banalnej postaci). :)

Offline Rares

  • Użytkownik
    • Moja strona

# Lipiec 17, 2009, 23:09:57
Staram się to zrobić, ale mi nie wychodzi, więc jednak chyba pozostanę przy kwadratowej mapie. Mam więc krótkie pytanie. Jak można wykorzystać taką mapę? Dać jakieś elementy GUI czy zostawić?

wine

  • Gość
# Lipiec 18, 2009, 00:20:31
Dać jakieś elementy GUI czy zostawić?
nie zostawiaj! dodaj cos tam, gui itd. np. pasek zycia, aktualna bron itd.  :)

Offline Krzysiek K.

  • Moderator
    • DevKK.net

# Lipiec 18, 2009, 01:45:16
Staram się to zrobić, ale mi nie wychodzi, więc jednak chyba pozostanę przy kwadratowej mapie.
Kiepski powód rezygnacji. Jak nie wychodzi, trzeba zrobić tak, żeby wyszło, szczególnie że w tym przypadku rzecz jest banalna. :)

Offline Rares

  • Użytkownik
    • Moja strona

# Lipiec 18, 2009, 11:25:17
Próbowałem robić to tak:

//Sposób pierwszy:

1. Tworzę bitmapę mapa o wymiarach 140x140.
2. Rysuję na niej minimapę.
3. Na tym rysuję kwadrat (funkcją rectfill) o wym. 140x140 o kolorze czarnym (0,0,0).
4. Na środku robię koło (RGB - (255,0,255)).
5. Masked_blituję na bufor.

Wychodzi coś takiego:



//Sposób drugi:

1. Tworzę bitmapę mapa o wymiarach 140x140.
2. Rysuję na niej minimapę.
3. Na tym rysuję kwadrat (funkcją rectfill) o wym. 140x140 o kolorze czarnym (0,0,0).
4. Na środku robię koło (RGB - (255,0,255)).
5. Pętlą zamieniam każdy punkt czarny na różowy.
6. Masked_blituję na bufor.

Wychodzi coś takiego:



//Sposób trzeci:

1. Tworzę bitmapę mapa o wymiarach 140x140.
2. Rysuję na niej minimapę.
3. Na tym rysuję kwadrat (funkcją rectfill) o wym. 140x140 o kolorze różowym (255,0,255).
4. Na środku robię czarne koło (RGB - (0,0,0)).
5. Masked_blituję na bufor.

Wychodzi coś takiego:



//Sposób czwarty:

1. Tworzę bitmapę mapa o wymiarach 140x140.
2. Rysuję na niej minimapę.
3. Na tym rysuję kwadrat (funkcją rectfill) o wym. 140x140 o kolorze różowym (255,0,255).
4. Na środku robię czarne koło (RGB - (0,0,0)).
5. Pętlą zamieniam każdy punkt czarny na różowy.
6. Masked_blituję na bufor.

Wychodzi coś takiego jak w sposobie drugim.

Najbliżej jest w przykładzie trzecim, tylko, że gdy pokryję to różowym i masked_blituje na bufor, to i tak zobaczę czarne koło, bo różowy jest pomijany.

PS Ta biała kropka na minimapce to punkt położenia gracza na mapie.
« Ostatnia zmiana: Lipiec 18, 2009, 11:27:06 wysłana przez Rares »

Offline C'mons

  • Użytkownik

# Lipiec 18, 2009, 12:33:38
Maskę musisz przygotować na osobnej bitmapie. Dopiero później gotową maskę nakładasz na bitmapę z mini mapą. Mówiąc maskę mam na myśli bitmapę z czarnym tłem i różowym kołem.

Offline Rares

  • Użytkownik
    • Moja strona

# Lipiec 18, 2009, 14:05:47
Dzięki Komons. Teraz działa. Spójrzcie:



Wybaczcie za rozpychanie forum.

Serdecznie dziękuje wszystkim tym, którzy udzielali się w tym temacie :).

Offline K'Aviash

  • Użytkownik

# Lipiec 18, 2009, 14:07:45
Dzięki Komons. Teraz działa. Spójrzcie:



Wybaczcie za rozpychanie forum.

Serdecznie dziękuje wszystkim tym, którzy udzielali się w tym temacie :).

no jeszcze ramka i będzie OK

Offline Oti

  • Użytkownik

# Lipiec 18, 2009, 14:20:25
No, dośc wsiowo wygląda, daj ramkę i półprzezroczystośc.

Offline Dab

  • Redaktor
    • blog

# Lipiec 18, 2009, 14:29:51
Imo zmniejsz skalę na minimapie, bo jaki sens ma minimapa na której widać tyle samo co na ekranie? :)

Offline Rares

  • Użytkownik
    • Moja strona

# Lipiec 18, 2009, 14:32:02
Dobrze, zmniejszę skalę. Spójrzcie na stronę główną. Wrzuciłem nowego screena z nową minimapką i jej obramowaniem. Powiedzcie jak wam się podoba.