kategoria: Blitz
[#1] [blitz] jak przekazać tablice do funkcji
Cześć,
Wiem że mogę zadeklarowac tablice na 'poziomie głównym' programu a potem ją tylko SHARE wewnątrz funkcji gdy potrzebuje ale to nie to.
Jest przynajmniej jedna wada takiego rozwiązania :
- tablicy zadeklarowanej w programie głównym nie mogę 'redim-ować" wewnątrz funkcji (muszę to zrobić tylko spod programu głównego) co niestety paskudzi całość i chciałbym tego uniknąć.

Dzięki
[#2] Re: [blitz] jak przekazać tablice do funkcji

@peceha, post #1

Wiem że w sumie to daję bardzo głupią "radę" i powinienem się przymknać z takimi "radami" - bo sie totalnie na BB nie znam i generalnie nie wiem o co Ci chodzi z tym "redimowaniem" (zmiana rozmiaru tablicy ?) ale... jak się zna adres tablicy to z każdego miejsca można po niej "jeździć na dziko"

A druga sprawa która mi się jakoś rzuciła w oczy w zwiazku z Twoim problemem sprite+mysz+zmiana kolorów. Patrząc na ten krótki film nie widać aż tak dużo elementów ruchomych, więc może lepiej użyć tutaj BOBa niż sprite?

Ostatnia aktualizacja: 25.06.2020 12:18:06 przez pisklak
[#3] Re: [blitz] jak przekazać tablice do funkcji

@pisklak, post #2

Hmmm...
Nie dotykałem Amigi przez prawie 7 miesięcy więc wstyd się przyznać ale chyba zapomniałem o co tu biega, hehe. No tak właśnie kombinowałem i mając adres 1szego elementu nie mogłem odczytać pozostałych.

Co do sprajta to na video akurat nie ma dużo a może być i 100 tyle że wtedy mruganie straszne. A muszę używać bblita bo oktany do FOV liczę na bieżąco z ruchem bohatera (co klatka) więc nie mogę użyć double bufferingu tak czy siak. Co prawda ten jeden bob w te czy we wte różnicy nie da... Co by nie było kolory ogarnąłem szeroki uśmiech
[#4] Re: [blitz] jak przekazać tablice do funkcji

@peceha, post #3

A jak odczytywales elementy tablicy? Nie mam pojecia czy w definicji tablicy definiuje sie wielkosc danych, oraz czy Blitz nie dodaje czegos od siebie. Podejrzewam ze tabica to domyslnie zbior liczb typu Long (32bity). Jesli tak jest odczytywanie pamieci rowniez musi byc 'w longach'. Jak nie to w 16 albo w 8 bitach. Wiec jesli masz tablice X,Y to odczytujesz np.Long( adrtablicy+(y*szerx*4)+(x*4)). No chyba ze cos poknocilem.... mam chwilke czasu i siedze w nagrzanym samochodzie.

PS. Przepraszam za brak polskich znakow, virtualna klawiatura ssie ...

Ostatnia aktualizacja: 25.06.2020 19:29:18 przez pisklak
[#5] Re: [blitz] jak przekazać tablice do funkcji

@pisklak, post #4

Jest!!
Hehe, to są uroki blitza
Gdy przypisałem adres pierwszego elementu tablicy do zmiennej (long) i ten adres zwracałem z funkcji to wynik był zupełnie inny niż adres tego samego elementu wewnątrz funkcji.
Problem się rozwiązał gdy sama funkcje zadeklarowałem jako long (że zwróci na pewno longa) i wtedy jzadzialalo.

Dzięki za naprowadzanie
Na stronie www.PPA.pl, podobnie jak na wielu innych stronach internetowych, wykorzystywane są tzw. cookies (ciasteczka). Służą ona m.in. do tego, aby zalogować się na swoje konto, czy brać udział w ankietach. Ze względu na nowe regulacje prawne jesteśmy zobowiązani do poinformowania Cię o tym w wyraźniejszy niż dotychczas sposób. Dalsze korzystanie z naszej strony bez zmiany ustawień przeglądarki internetowej będzie oznaczać, że zgadzasz się na ich wykorzystywanie.
OK, rozumiem