GLBasic forum

Other languages => GLBasic - de => Topic started by: WPShadow on 2013-Nov-29

Title: Sprite Obergrenze
Post by: WPShadow on 2013-Nov-29
Hi,

hat jemand von euch Erfahrung mit vielen 2D Tiles die gleichzeitig am Bildschirm sind?

Ab wann sollte man sich ca. Sorgen machen? Ich arbeite an einem kleinen 2D Spielchen mit Zoomstufe und habe etwas experimentiert und herum gerechnet und auf höchster Zoomstufe kratze ich gut und gerne an ca. 50k Tiles, wenn alle Layer gesetzt sind (was aber nur ein theoretischer Wert ist, da unsichtbare Elemente ja nicht gezeichnet werden).

Ich zeichne übrigens nur den Fensterausschnitt und nicht das vollständige Gebiet, daher kommt die hohe Anzahl also nicht.  =D

Kann das soweit zu Problemen führen oder brauche ich mir da keine Sorgen machen?

LG

W.
Title: Re: Sprite Obergrenze
Post by: kanonet on 2013-Nov-29
Besser wäre es natürlich es gleich so zu programmieren, dass es auf möglichst vielen Rechnern läuft, also nicht zu sehr übertreiben und schauen, wo etwas gespart werden kann. Außerdem empfiehlt es sich, möglichst viele Sprites in einem Texture Atlas zusammen zu packen und das ganze dann per POLYVECTOR zu zeichnen. Ob/wie gut das ganze dann läuft, bekommst du am Schluss natürlich nur durch Versuch raus.
Title: Re: Sprite Obergrenze
Post by: Schranz0r on 2013-Nov-29
Tiles auf Bildschirm ?
Da du ja Zoom benutzt würde ich sagen Max. Fensterhöhe * Fensterbreite
Also wenn du so zoomst das aus einen Sprite ein Pixel wird :D
Title: Re: Sprite Obergrenze
Post by: WPShadow on 2013-Dec-02
Nun, die Umsetzung mit Polyvector erscheint mir am sinnvollsten im Augenblick.

Das Belichtungssystem wird eher spannend, da ich das ebenfalls mit Polyvektor und Alpha lösen möchte. Mal sehen, was ich da alles basteln muss, damit es flüssig läuft.
Title: Re: Sprite Obergrenze
Post by: Schranz0r on 2013-Dec-02
GL & HF ! :D
Title: Re: Sprite Obergrenze
Post by: WPShadow on 2013-Dec-09
So, es steht wieder eine Frage an und da ich nicht jedes Mal eine neue Anfrage stellen möchte, frage ich hier einfach weiter:

Ein Schleifendurchlauf dauert seine Zeit. Wenn wir annehmen, dass ich alle Daten in ein Array tue und dieses mit einer FOREACH - Schleife durchlaufen lasse und nur die Sprite - Bereiche zeichne, die gezeichnet werden sollen (Bildausschnitt) und die restliche Schleife immer wieder durch läuft --> ist das auf Dauer verkraftbar, wenn die Anwendung in Echtzeit läuft?

Ist es vor allem verkraftbar, wenn man 3 - 4 Layer übereinander Laufen hat oder ist es besser das Ganze einfach mit FOR grenze_1 TO grenze_2 zu lösen?

LG

W.
Title: Re: Sprite Obergrenze
Post by: Marmor on 2013-Dec-10
Letzendlich hilft dir nur ein test .
Auf alle Faelle sollte die zeichenroutine
60 fps haben , dann ist fuer die logik
Des spiels noch genug platz.
Wenn du mit layern arbeitest musst du ja
Auch die layer kopieren (dran denken).
Der flaschenhals ist meist die Fuellrate der
Grafikkarte.
Ob alles in einer loop abgefertigt werden kann
Solltest du auch testen.
Es hilft nix du kommst um ein paar test nicht drumrum.
Irgendwo im forum ist ein spritetest , der hilft dir
Gerade bei mobilen geraeten weiter.
Mfg