Seltsames Phänomen bei "Kollision" die 2. GELÖST

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

Hakkai

Betreff: Seltsames Phänomen bei "Kollision" die 2. GELÖST

BeitragSa, Apr 17, 2010 15:26
Antworten mit Zitat
Benutzer-Profile anzeigen
Habe auch ein Kollisionsproblem und zwar habe ich ein Luftschiff, das von oben einfach in -Y nach unten schießt...

user posted image

jetzt passiert es aber, das wenn es in einem bestimmten Bereich schießt, die Schüsse ganz wo anders rauskommen.

user posted image
user posted image

Das Problem tritt nicht auf wenn ich:
EntityType nschuss\vis, schuss nicht setze, oder
Collisions schuss, berg, 2, 1 nicht setze.

... Mit anderen Worten wenn keine Kollision stattfindet.

Habe versucht das Problem im Debugger zu verfolgen, dabei konnte ich aber keine Fehler feststellen.
Es funktioniert nur in einer bestimmten Region der Karte nicht, ansonsten klappt es.

Es wäre ziemlich unübersichtlich Code zu posten, deshalb frage ich bewusst erst einmal ohne.
  • Zuletzt bearbeitet von Hakkai am Sa, Apr 17, 2010 15:44, insgesamt 2-mal bearbeitet

Xeres

Moderator

BeitragSa, Apr 17, 2010 15:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Wie Positionierst du die Schüsse ist die Frage.
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)

Megamag

BeitragSa, Apr 17, 2010 15:30
Antworten mit Zitat
Benutzer-Profile anzeigen
Vielleicht hilft ja ResetEntity
Mein DeviantArt Profil
Gewinner des BAC #136

Hakkai

BeitragSa, Apr 17, 2010 15:34
Antworten mit Zitat
Benutzer-Profile anzeigen
beim Create:

Code: [AUSKLAPPEN]
Function system_create_schuss(xs#, ys#, zs#, xn#, yn#, zn#, rad#, speed#)

   nschuss.tschuss = New tschuss
      
      nschuss\rad = rad
      nschuss\speed = speed
      
      nschuss\xs = xs
      nschuss\ys = ys
      nschuss\zs = zs

      nschuss\x = nschuss\xs
      nschuss\y = nschuss\ys
      nschuss\z = nschuss\zs
      
      nschuss\xn = xn
      nschuss\yn = yn
      nschuss\zn = zn

      nschuss\vis = CreateSphere(4): EntityColor nschuss\vis,10,100,50: ScaleEntity nschuss\vis, nschuss\rad, nschuss\rad, nschuss\rad
      
      EntityRadius nschuss\vis, nschuss\rad
      EntityType nschuss\vis, schuss

      PositionEntity nschuss\vis, nschuss\x, nschuss\y, nschuss\z, 1

End Function


Das klappt auf jeden fall wie es soll.

beim Update:

Code: [AUSKLAPPEN]

Local schussspeed = 10

      For i = 0 To schussspeed

         nschuss\x = nschuss\x+nschuss\xn*nschuss\speed
         nschuss\y = nschuss\y+nschuss\yn*nschuss\speed
         nschuss\z = nschuss\z+nschuss\zn*nschuss\speed
         
         PositionEntity nschuss\vis, nschuss\x, nschuss\y, nschuss\z, 1

...

Xeres

Moderator

BeitragSa, Apr 17, 2010 15:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Versuche es nach PositionEntity in der Create-Funktion mit ResetEntity.
Alle Objekte werden auf den Koordinaten 0,0,0 erstellt und von dort aus verschoben. Wenn zwischen 0,0,0 und der Soll-Position ein Berg ist, klatscht das Objekt dagegen.
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)

Hakkai

BeitragSa, Apr 17, 2010 15:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Scheint als wäre ResetEntity die Lösung, danke. Muss mir gleich mal anschauen warum das damit funktioniert.

Edit: man ihr seid schnell, und schon hab ich auch die Beschreibung des Befehles. Smile Smile

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group