LinePick hasst mich...

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

Megamag

Betreff: LinePick hasst mich...

BeitragSa, Jul 18, 2009 14:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Mein Player kann jetzt inzwischen springen.
Um herauszufinden, ob der Player den Boden berührt, habe ich gedacht, mache ich einfach einen Linepick nach unten. War aber nix, denn LinePick funktionierte mal wieder nicht. Nach einer Stunde ausprobieren mit 10 Parametern und umschreiben frage ich jetzt euch. Hier ist der Pick-Code (wenn ihr mehr Code braucht, dann sagt es bitte):
Code: [AUSKLAPPEN]
p\onfloor=LinePick (EntityX(p\player,1),EntityY(p\player,1),EntityZ(p\player,1),EntityX(p\player,1),EntityY(p\player,1)-0.1,EntityZ(p\player,1))

Aber egal, wie hoch der Player ist, egal wie ich den LinePick konfiguriere, immer findet der LinePick den Boden. Selbst, wenn die Zielkoordinaten dieselben sind, wie die Startkoordinaten findet der LinePick etwas. Das geht doch technisch gesehen überhaupt nicht? Was mache ich falsch?

Holzchopf

Meisterpacker

BeitragSa, Jul 18, 2009 14:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Schau doch einfach mit PickedY ob die KollisionsKoordinate beim Spieler ist, oder noch viel zu weit unten. Also Vielleicht
BlitzBasic: [AUSKLAPPEN]
If PickedY() <= EntityY(p\player,1) -0.1


mfG
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm

Megamag

BeitragSa, Jul 18, 2009 14:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich habe es jetzt nochmal so probiert:
BlitzBasic: [AUSKLAPPEN]
	p\onfloor=LinePick (EntityX(p\player,1),EntityY(p\player,1),EntityZ(p\player,1),EntityX(\player,1),EntityY(p\player,1),EntityZ(p\player,1))
If PickedEntity()<>0 Then
debug4=EntityName(p\onfloor)
EndIf

debug1=EntityY(p\player)
debug2=PickedY()
debug3=p\onfloor

Im Prinzip dürfte dieses Linepick überhaupt nich funktinieren, da zwischen den beiden Punkten eigentlich nichts liegen dürfte. Und totzdem zeigt "debug4" (name des gepickten Objekts) immer "Scene" an. Und das PickedY() ist ganz komisch. Auf dem Boden selbst ist es gröpßer als der Player, wenn ich hochspringe wird es plötzlich kleiner, und springt dann komisch hin und her. Ich habe keine Ahnung mehr. Liegt es vielleicht daran, dass ich schon einmal im Code LinePick benutzt habe? Muss man da vielleicht irgendwas vorher aus dem Speicher löschen oder so?

The_Nici

BeitragSa, Jul 18, 2009 14:56
Antworten mit Zitat
Benutzer-Profile anzeigen
Ist EntityPickMode des Objekts auch richtig gesetzt?

Megamag

BeitragSa, Jul 18, 2009 15:03
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja.
Der erste LinePick von der Kamera zu den Wänden
(siehe den Beitrag: https://www.blitzforum.de/foru...324#337324)
funtioniert einwandfrei. Und da ging es ja auch um das "Szene-Objekt".

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group