3.Person view
Übersicht

MarekBetreff: 3.Person view |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich habe ein Problem: Ich will ein kleines Game proggen, hänge aber an der Kameraführung fest^^ Ich erkläre mal:
Man soll den Spieler mit den Pfeiltasten bewegen können. Mit der "gradeaus"-Pfeil-Taste soll sich die Figur dabei immer ind die Richtung bewegen, in die man grade schaut. In welche Rischtung man schaut soll wiederum von der Maus abhängen. Auserdem soll die Kamera, wenn man die Sichtrichtung ändert um die Spielfigur rotieren. Hoffentlich konnte man das verstehen^^ Bitte um Hilfe! Wär net schlecht wenn mir jemand den Quellcode davür geben könnte, dann find ich schon raus wie des funtzt. Danke schon im voraus! ![]() |
||
![]() |
StepTiger |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich gebe dir keinen quellcode.
Ich sag mal so viel: Du musst die Mathemathik dafür haben, da eine starre Kameraführung echt hässlich ist. Dafür eignet sich: Sinus, Cosinus Prozentualrechnung Mausabfragen benötigst du auch noch. |
||
Noch gestern standen wir am Abgrund, doch heute sind wir schon einen Schritt weiter.
Computer: AMD Sempron 3000+; ATI Radeon 9800 Pro; 512 MB DDR RAM 400Mhz; Asus E7N8X-E Deluxe; Samsung 200GB HD 5.4ns acces t Gewinner: BP Code Compo #2 Π=3.141592653589793238...<--- und das aus dem kopf ![]() Seit der Earthlings-Diskussion überzeugter Fleisch(fr)esser. |
Marek |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
naja, das weiß ich auch^^
das beherrsch ich auch schon mitlerweile, wär aber trotzdem ganz net wenn mir jemand dabei helfen würde^^ |
||
![]() |
Mr.Keks |
![]() Antworten mit Zitat ![]() |
---|---|---|
sagen wir es mal so:
in b3d muss man sich nicht mit sin und cos rumschlagen, wenn man nicht unbedingt will! dafür gibt es so feine befehle wie: ql:tformpoint, ql:deltayaw, ql:deltapitch, ql:vectoryaw, ql:turnentity, ql:aligntovector, ql:entityyaw vielleicht ist da ja auch einer für dich dabei! ![]() |
||
MrKeks.net |
Marek |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Cool, danke! ![]() jetz klappt schon so 90% von dem, was ich erreichen wollte xD Nur noch das eine:wie bleibt die Kamera immer in einem bestimmten Abstant zum Spieler??? Hab schon ein bisschen was probiert, doch ich komm noch net drauf wie das geht^^ pls help again! |
||
![]() |
Black Spider |
![]() Antworten mit Zitat ![]() |
---|---|---|
hmm, ich denke du meinst so eine Steuerung wie bei Splinter Cell, das man die Kamera um den Player rotieren kann, aber sie nicht hinter einer Wand verschwindet.
Evtl. noch so, dass sie sich mitdreht und nach einiger zeit wieder in die Ausgangsposition stellt. Das, dass die Kamera leicht nachzieht, dafür war im Driver sample ein schicker code drinne, auch wenn dieser etwas umständlich ist. Ich denke mal du bekommst das schon hin, doch am schwierigsten wird es, es hinzubekommen, dass man den Player immer sieht und nichts zwischen Cam und player ist. Dafür empfehle ich dir LinePick oder CameraPick, wenn das erste objekt, was zurückgegeben wird, der Player ist, dann Kamera ein stückchen zurück, bis in die Ausgangsposition bewegen, ansonsten: Nach vorne bewegen, so weit bis sie ganz nah am player ist. Anschliessend würde die Kamera wieder versuchen zurück zu gehen, musst du halt probieren, dass es net ruckelt. |
||
Coming soon:
http://img132.imageshack.us/im...im2ab6.gif |
![]() |
FireballFlame |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich würde an die Stelle des Spielers ein Pivot setzen, und die Kamera zu dessen Child machen (aber in gewünschtem Abstand und so dass sie auf den Pivot schaut).
Den Pivot würde ich am Spielstart an die Spielerposition setzen und von da an (in der Hauptschleife) immer "weich" zur Spielerposition bewegen lassen. Also für den Pivot x-, y- und zspeed-Variablen sowie eine pitch-, eine yaw- und eine roll-Variable. Das ist der Ansatz. Dass müsstest du "nur" noch entsprechend programmieren, dass sich der Pivot immer "weich" zum Spieler hinbewegt und sich ebenso "weich" der Spielerrotation anpasst. Allerdings wird das noch schwieriger, wenn du Wände hast, in die die Kanera reinfliegen, oder die die Sicht versperren könnten... ![]() |
||
PC: Intel Core i7 @ 4x2.93GHz | 6 GB RAM | Nvidia GeForce GT 440 | Desktop 2x1280x1024px | Windows 7 Professional 64bit
Laptop: Intel Core i7 @ 4x2.00GHz | 8 GB RAM | Nvidia GeForce GT 540M | Desktop 1366x768px | Windows 7 Home Premium 64bit |
Marek |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Thx for that xD
Ihr wart ne tolle Hilfe! Das Spiel soll eher so ne Art Rollenspiel werden, was in "freier Wildbahn" spielt( sowas wie Metin 2, nur nich im Internet xD ), daher wird das mit Wänden weniger ein Problem sein ![]() ____________________________________________________________ ok, ich bearbeite hir mal meinen Eintrag: Neuster Stand der Dinge: hab eine Kugel die sich über eine Height-map bewegt. Die Steuerung is jetz fast perfekt, nur noch das eine: die Kamera schwenkt nicht der rotierenden Kugel nach^^ |
||
![]() |
Black Spider |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] target=CreatePivot( player )
PositionEntity target,0,5,-12 camera=CreateCamera() ;... If speed>=0 dx#=EntityX( target,True )-EntityX( camera ) dy#=EntityY( target,True )-EntityY( camera ) dz#=EntityZ( target,True )-EntityZ( camera ) TranslateEntity camera,dx*.3,dy*.3,dz*.3 EndIf PointEntity camera,player so wurds im Driver Sample gemacht; die Kamera schwenkt weich nach-das ganze hat soweit ich das beurteilen kann was mit Vektoren zu tun; schau´s dir einfach mal genau an. |
||
Coming soon:
http://img132.imageshack.us/im...im2ab6.gif |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group