Mouse script de rotație în BGE

În această lecție veți învăța cum să pună în aplicare mișcarea în genul FPS (first-person shooter) motor de joc în Blender.

Utilizând scriptul

Acest script este foarte ușor de utilizat și include limitări ale unghiului de vizionare al camerei. Acești limitatori sunt necesari pentru ca camera să se oprească atunci când priviți în sus sau în jos. Acest interval poate fi ajustat cu ușurință prin modificarea numai a două variabile.

Puteți să importați pur și simplu obiecte în scena dvs. sau să vă creați totul în același timp (în același timp și imaginându-vă). Când creați propria scenă, a crea un nou document text într-o fereastră Text Editor, inserați codul de script-ul și numele acestuia, de exemplu, „mouselook.py“. Aici, de fapt, scenariul în sine:

din BGE import face ca cont r import math = bge.logic.getCurrentController () propriu = cont.owner șoarece = cont.sensors [ "mouse"] = viteza părinte #set own.parent pentru sensibilitatea mișcării camerei = 0,05 #set rotație camera limitele high_limit = 180 low_limit = 0 h = r.getWindowHeight () // 2 w = r.getWindowWidth () // 2 x = (h - mouse.position [0]) * sensibilitate y = (w - mouse.position [ 1]) * sensibilitate în cazul în care propriile [ "de pornire"]: r.setMousePosition (h, w) propriu [ "startup"] = false altceva: putregai = own.localOrientation.to_euler () pas = ABS (math.degrees (rot [ 0])) dacă high_limit> (pitch + y)> low_limit: pitch + = y elif (pitch + y) high_limit: smoală = high_limit rot [0] = math.radians (smoală) own.localOrientation = rot.to_matrix () parentRot = parent.localOrientation.to_euler () girare = math.degrees (parentRot [2]) + x parentRot [2 ] = math.radians (girație) parent.localOrientation = parentRot.to_matrix () r.setMousePosition (h, w)

Rularea scenariului

Trebuie să legați scriptul de camera, care la rândul său este legat de caracterul jocului (în acest exemplu, cubul). De asemenea, pentru camera, trebuie să creați o proprietate logică de pornire setată la TRUE. Scenariul rotește camera, dar deoarece este atașat la obiect (cub), se rotește și ea. Pentru cubul însuși, se atribuie controlul standard al mișcării (W, A, S, D).

Mouse script de rotație în BGE

Asigurați-vă că axa Z a caracterului dvs. (cub) este orientată în sus. În imaginea de mai jos veți vedea doi senzori conectați la scriptul de fișiere. Senzor modul puls Întotdeauna este setat la TRUE:
Mouse script de rotație în BGE

da, sunt de acord că este gratuită și kakayato apel magic și un astfel de potențial este imens (salut codoare Python), dar, pe de altă parte, a simțit impactul Linux - o astfel de incompletitudine, vesch simplu atât de înfășurat puse în aplicare.

Mouse script de rotație în BGE

În plus față de lecțiile de pe Blender, puteți găsi modele 3D și arhive de înaltă calitate a texturilor. Site-ul este actualizat periodic cu conținut nou și monitorizează dezvoltarea Blender-ului.