Liste von Objekten in bestimmter Reichweite

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

Ana

Betreff: Liste von Objekten in bestimmter Reichweite

BeitragSo, Jul 10, 2011 18:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Also erstmal ich verwende Minib3d also sind listen nun so gar kein Thema.
Ich möchte eine Liste mit Objektenanlegen, welche einen bestimmten Abstand nicht überschreiten, aber ich frag mich gerade, ob es eine schönere Möglichkeit gibt, als alle in fragekommenden Objekte durch zu gehen und den Abstand mit Entitydistance zu bestimmen.

Hat jemand eine bessere Idee?
Don't only practice your art,
but force your way into its secrets,
for it and knowledge
can raise human to divine

BladeRunner

Moderator

BeitragSo, Jul 10, 2011 18:47
Antworten mit Zitat
Benutzer-Profile anzeigen
~VERSCHOBEN~
Dieser Thread passte nicht in das Forum, in dem er ursprünglich gepostet wurde.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Ana

BeitragSo, Jul 10, 2011 18:49
Antworten mit Zitat
Benutzer-Profile anzeigen
Hmm sorry Blade, dachte eigentlich es passt besser in B3d weil es hier ja schließlich um die Blitz3D Befehle geht :/
Don't only practice your art,
but force your way into its secrets,
for it and knowledge
can raise human to divine

Xeres

Moderator

BeitragSo, Jul 10, 2011 21:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Schöner? Schneller oder Selektiver ginge es vielleicht, wenn die Objekte in Sektoren (3D Array) vor sortiert wären oder du nicht alle Abstände auf ein mal berechnest, sondern alle X Millisekunden Y Objekte verarbeitest / aktualisierst. Ob das schönere Varianten sind, liegt im Auge des Betrachters.
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)

Ana

BeitragSo, Jul 10, 2011 21:32
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja, so hatte ich das schon gemacht, aber letztlich ist dass das selbe Problem in kleinerem Rahmen, was natürlich schneller ist, aber nicht schöner Wink
Don't only practice your art,
but force your way into its secrets,
for it and knowledge
can raise human to divine
 

Hangman

BeitragSo, Jul 10, 2011 23:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Diese Variante könnte man vielleicht noch etwas erweitern.
Wenn du weißt, dass sich bestimmte Objekte nur mit einer gewissen Geschwindigkeit bewegen, dann bräuchtest du die ganz weit entfernten Objekte ja auch vielleicht nur alle 10sek, die mittleren alle 2sek, und die näheren alle 1sek.
nur mal so als Beispiel, die Abstände kannst ja beliebig anpassen...
So gäbe es dann 3 oder je nachdem auch beliebig viele solcher Listen je nachdem wie weit du das stufen möchtest, aber spart vielleicht Rechnerzeit, wenns denn genug Objekte sind.

Edit: Falls du(Xeres) genau das meintest dann sry, habs net so ganz rauslesen können aus deinem Post Wink
Ich habe Berthold gebrochen.

Hummelpups

BeitragMo, Jul 11, 2011 0:17
Antworten mit Zitat
Benutzer-Profile anzeigen
Erstelle einen Array der dein "Spielfeld" rastert. Jeh nach Position des
Objektes wird es in die Liste in diesem Array eingeordnet.

Hast du ein Spielfeld von 0-300x und 0-300y erstellst du beispielsweise ein
Array[3,3] jedes Element in diesem Array ist eine Liste mit den im Rahmen
befindlichen Objekten

beispielsweise sind alle Objekte mit x>0 und x<100 und y>0 und y<100 im array[0,0]

anhand deiner eigenen Position kannst du den Ausgangspunkt errechnen und
das eigene sowie - jeh nach Rastergröße - die umliegenden Rasterlisten durchiterieren.

Nen Kollege hat dies so bei seinem MMORPG umgesetzt und funktioniert wunderbar.
Wichtig ist nur, beim Rasterwechsel die Liste zu aktualisieren.

Der nachteil dieser Methode ist bei dir erstmal, das dein komplettes Verwaltungssystem
für diese kleine aufgabe angepasst werden muss
blucode - webdesign - Ressource - NetzwerkSim
BlitzBasic 2D - BlitzMax - MaxGUI - Monkey - BlitzPlus

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group