[Delphi][GlScene] Jak wygenerować teren? (Na podstawie txt)

[Delphi][GlScene] Jak wygenerować teren? (Na podstawie txt)
TL
  • Rejestracja: dni
  • Ostatnio: dni
0

Witam.
Bawiłem się ostatnio komponentem GLScene i w pewnym momencie wpadłem na pomysł generowania terenu na podstawie danych z pliku tekstowego. Dane te to np. wysokość terenu w różnych miejscach (podane jest X i Y oraz wysokość). Ma ktoś pomysł jak to rozwiązać? Próbowałem wykorzystać jakiś przykład, ale mi się nie udało.
Z góry dziękuje za odpowiedź i pozdrawiam
tlaguz.

WIktorDelphi
  • Rejestracja: dni
  • Ostatnio: dni
0

Jest tam komponent do generowania terenu z bitmapy. Jesli nie chcesz go uzywac, to uzyj HeightField. Mozesz jeszcze uzyc tego "czegos" (zapomnialem juz nazwy) do tworzenia dowolnych ksztaltow z trojkatow (reczna metoda) i zrobic za jego pomoca teren.

TL
  • Rejestracja: dni
  • Ostatnio: dni
0

Dzięki za odpowiedź. nie pamiętasz może jak nazywa się to coś do trójkątów? Nie wiesz może, czy jest to gdzieś w demach?
Z góry dziękuje za odpowiedź i pozdrawiam
tlaguz.

MacMarian
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 21
0

Bawiłem się ostatnio komponentem GLScene i w pewnym momencie wpadłem na pomysł generowania terenu na podstawie danych z pliku tekstowego. Dane te to np. wysokość terenu w różnych miejscach (podane jest X i Y oraz wysokość). Ma ktoś pomysł jak to rozwiązać? Próbowałem wykorzystać jakiś przykład, ale mi się nie udało.

Plik zawierające wysokości w danych miejscach płaszczyzny zwie się właśnie heightmapą.
Ja to robie tak:

Dajmy na to mamy:

Kopiuj
var Map : array[-127...127, -127..127] of byte;

Za pomocą zdarzenia OnGetHeight gdzie mamy:

Kopiuj
GetHeight(const x, y: Single; var z: Single;var color: TVector4f; var texPoint: TTexPoint);

zapodaje taki kod:

Kopiuj
z:=Map[Round(X), Round(Y)];

Oczywiście w XSamplingScale i Y Sampling Scale ustawiam:
Min: -127
Max: 127
Step: 1
by [0,0] było środkiem mapy (lepiej sie obraca wzgledem srodka) -,-

Odświerzanie powierzchni wywołujesz procką StructureChanged;

El voila! RAW w GLScene -.-
user image

TL
  • Rejestracja: dni
  • Ostatnio: dni
0

Dzięki wielkie :-D Jednak jak ktoś pamięta ten od trójkątów, to proszę, żeby napisał ;-P
Z góry dziękuje za odpowiedź i pozdrawiam
tlaguz.

WIktorDelphi
  • Rejestracja: dni
  • Ostatnio: dni
0

TGLMesh

TL
  • Rejestracja: dni
  • Ostatnio: dni
0

Wielkie Dzięki wszystkim :-D

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.