maximaler winkel

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

monkfurts

Betreff: maximaler winkel

BeitragMi, Jan 18, 2012 17:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Wie kann ich verhindern das sich meine Cam in meinem egoshooter überschlagen kann
also das sie nicht auf den Kopf steht wenn ich die Maus zu weit bewege.
Ich binn sicher es giebt da einen einfachen weg aber ich habe nichts in der Hilfe gefunden.

Außerdem brauchte ich einen weg um die Richtung eines Object in der Welt auszugeben.
In der Hilfe finde ich nur einen weg um den winkel zwischen zwei Object auszugeben.
Gibt es da so etwas wie Entity() nur für winkel?
win 7 ultimate 64-bit | core i7 2600k 4x3,4 ghz | nvidia gtx 560-ti oc | 6gb ram

Xeres

Moderator

BeitragMi, Jan 18, 2012 17:36
Antworten mit Zitat
Benutzer-Profile anzeigen
Arrow EntityPitch, EntityYaw, EntityRoll
Nimm den Winkel, einen Maximum und einen Minimum Wert und reduziere den Winkel auf diesen Bereich.
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)

monkfurts

BeitragMi, Jan 18, 2012 18:13
Antworten mit Zitat
Benutzer-Profile anzeigen
Ok das funktioniert jetzt so halb.

Ich habe folgenden

If EntityPitch(cam) <= 85 And EntityPitch(cam) >= -88
TurnEntity cam,MouseYSpeed()*0.2555,0,0
EndIf

aber natürlich bleibt er stecken weil er etwas über 85 grad geht und dann kann er ja nicht mehr bewegen .
wie lässt sich das am besten ändern ??
win 7 ultimate 64-bit | core i7 2600k 4x3,4 ghz | nvidia gtx 560-ti oc | 6gb ram

Xeres

Moderator

BeitragMi, Jan 18, 2012 18:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Die Bewegung muss unabhängig vom Limitieren ablaufen.
1. Bewegen
2. Winkel lesen
3. Winkel begrenzen
4. Winkel setzen
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)
 

feider

ehemals "Decelion"

BeitragMi, Jan 18, 2012 18:54
Antworten mit Zitat
Benutzer-Profile anzeigen
Du könntest auch den MouseSpeed() in einer Variablen speichern und bei dieser überprüfen, ob sie positiv oder negativ ist. Dann geht er je nach dem in die eine oder in die andere If-Konstruktion.

EDIT: Aaah, ich habe if-Schleife gesagt. Wann gewöhne ich mir das endlich ab?

monkfurts

BeitragMi, Jan 18, 2012 19:07
Antworten mit Zitat
Benutzer-Profile anzeigen
wie kann ich den einen Winkel setzen Question
ich Kenn da nur turnentity und der dreht ja blos aber setzt keinen festen winkel
win 7 ultimate 64-bit | core i7 2600k 4x3,4 ghz | nvidia gtx 560-ti oc | 6gb ram

Xeres

Moderator

BeitragMi, Jan 18, 2012 19:10
Antworten mit Zitat
Benutzer-Profile anzeigen
Arrow RotateEntity
Könnte nicht schaden, wenn du die Online Hilfe tatsächlich benutzt - gibt Kategorien und Links bei jeder Funktion. Rolling Eyes
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)

Blitzcraft

BeitragMi, Jan 18, 2012 19:12
Antworten mit Zitat
Benutzer-Profile anzeigen
Versuchs mal so:
Code: [AUSKLAPPEN]
If EntityPitch(cam) <= 85 And EntityPitch(cam) >= -88
TurnEntity cam,MouseYSpeed()*0.2555,0,0
ElseIf EntityPitch(cam) > 85
RotateEntity cam,85,EntityYaw(cam),0 ; oder: EntityRoll(cam)
Else
RotateEntity cam,-85,EntityYaw(cam),0 ; oder: EntityRoll(cam)
EndIf
Screenshot aus meinem ersten Projekt

monkfurts

BeitragMi, Jan 18, 2012 20:39
Antworten mit Zitat
Benutzer-Profile anzeigen
omg danke
Kaum programmiere ich 2 Wochen nicht
vergesse ich die einfachsten befehle. Embarassed
win 7 ultimate 64-bit | core i7 2600k 4x3,4 ghz | nvidia gtx 560-ti oc | 6gb ram

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group