Springen
Übersicht

MalteW.Betreff: Springen |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo
Ich wollte mal fragen, wie der code fürs springen geht. Ich bekomm das nicht hin. Ich fände es nett, wenn ihr antworten würdet. |
||
![]() |
Triton |
![]() Antworten mit Zitat ![]() |
---|---|---|
"den Code fürs Springen" gibt es nicht.
Das Prinzip ist relativ einfach. Da ich aber meist nur mit bb2d arbeite, hier auch nur ein Bsp darin: Code: [AUSKLAPPEN] ;** kleines rumgespringe ;** 9.5.2005 by Triton Graphics 800,600,32,2 SetBuffer BackBuffer() x=0 y=500 maxh=200 ;sprunghöhe v=3 ;wie schnell verläuft der sprung While Not KeyDown (1) If jump=0 And KeyDown(57) Then jump=1 If jump=1 Then a=a+v If a>180 Then jump=0:a=0 If KeyDown(203) Then x=x-3 If KeyDown(205) Then x=x+3 y2=Sin(-a)*maxh Rect x,y2+y,100,100 Text 10,10,jump Flip Cls Wend End Das Prinzip lässt sich aber wie gesagt leicht auf 3d übertragen. |
||
Coding: silizium-net.de | Portfolio: Triton.ch.vu |
ToGross |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Der Code ist nicht schlecht!
Nur leider benötige ich das ganze für ein 3D spiel (bin noch ganz am anfang) und nicht jeder weiß, wie man das auf 3D übertragen kann! Also ich habe es schon versucht auf 3D zu übertragen aber alles was passiert ist war dass es mein männchen durch die ganze map gejagt hat^^ Habe es so versucht: In der Hauptschleife BlitzBasic: [AUSKLAPPEN]
function sprung() BlitzBasic: [AUSKLAPPEN]
Bin noch schüler und kenn mich mit dem Sin() Cos() und Tan() zeug noch nicht so aus ![]() Mein Code ist wahrscheinlich komplett falsch ![]() Ich hätte es gern so, dass mein männchen nicht einfach nur nach oben springen kann, sondern auch noch nach hinten und nach vorne! (variable z) Dankeschön im Vorraus |
||
f L i PBetreff: alternative lösung |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
wenn du den player während eines sprunges auf der z-achse bewegst springt er, wie dus ausdrückt, auch auf der z-achse
solange du sin und cos nicht verstehst (kannst zwar nix dafür) solltest du auch nicht damit arbeiten, nimm 3 variablen(kommen vor die hauptschleife): sprungspeed_start#=3 sprungspeed_aktuell#=sprungspeed_start sprungspeed_verringern=#.1 und in der hauptschleife, wo die bewegungen realisiert werden, musst du nun dein player_y dementsprechend anpassen MfG fLiP |
||
mir egal wer dein Vater ist- solange ich hier am angeln bin wird nicht über's wasser gelaufen! |
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hier nochmal ein einfaches Beispiel in 3D. Willst du das hüpfen nicht haben, so ersetze yg=-yg/2 durch yg=0 in der If-Anweisung...
Code: [AUSKLAPPEN] Graphics3D 640,480,32,2
SetBuffer BackBuffer() xp#=0 yp#=10 zp#=20 xg#=0 yg#=0 zg#=0 cam=CreateCamera() lig=CreateLight() cub=CreateCube() TurnEntity lig,70,0,0 PositionEntity cam,0,8,0 PositionEntity cub,x,y,z While Not KeyHit(1) If KeyDown(203) Then xg=xg-0.02 If KeyDown(205) Then xg=xg+0.02 If KeyDown(200) Then zg=zg+0.02 If KeyDown(208) Then zg=zg-0.02 If KeyDown(57) And yp=0 Then yg=.5 xg=xg/1.02 yg=yg/1.02 zg=zg/1.02 yg=yg-0.01 xp=xp+xg yp=yp+yg zp=zp+zg If yp<0 Then yp=0:yg=-yg/2 PositionEntity cub,xp,yp,zp RenderWorld Flip Wend End |
||
BIG BUG |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Jop, Sprünge mittels Sinuskurve sind nicht nur wesentlich schwieriger einzusetzen, sondern auch physikalisch falsch.
Wenn Dein Spieler nicht den Boden berührt, dann wird die Fallgeschwindigkeit einfach um einen bestimmten Betrag erhöht. So kannst Du dann auch viel leichter auf z.B. Kollisionen reagieren. |
||
B3D-Exporter für Cinema4D!(V1.4)
MD2-Exporter für Cinema4D!(final) |
ToGross |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Danke für das Beispiel!
Doch schon hab ich ein weiteres Problem. Da es auf dem Terrain auch höhenunterschiede habe, brauche ich noch etwas wie eine Kraft, die mein Männchen zurück auf den Boden hohlt, wenn er das Terrain nicht berürht und nicht am Springen ist. Das habe ich so lösen wollen: BlitzBasic: [AUSKLAPPEN]
Das ganze geht, nur ruckelt alles und teilweiße kommt mein 800 Mhz PC ins stocken! Habe schon in einigen Tutorials geschaut, ob man das Problem besser lösen kann, aber nichts gefunden ![]() |
||
![]() |
otta |
![]() Antworten mit Zitat ![]() |
---|---|---|
also ich persönlich mache es wie folgt
TranslateEntity ball,0,-0.80,0 ganz simpel aber mein figur wird halt dannn die ganze zeit auf den boden gezogen sobald man springt, klappt einwandfrei..bei meinem sprungscript jedenfalls^^" sollte aber eigendlcih auch bei dir kein größeres prob darstellen. naja aber das mit dem springen ist sowieso immer sone komplizierte sache(finde ich...) ... |
||
AthlonXP 2800+, Radeon 9600XT,160GBHDD,512 MB DDR Ram (neuer Rechner neues Glück;))
Aktuelles Projekt: momentan Projektlos |
ToGross |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Du machst das mit TranslateEntity ??? Ich habe es mit MoveEntity jetzt geschaft!
BlitzBasic: [AUSKLAPPEN]
Also habe jetzt einfach noch UpdateWorld mit eingebaut und es gibt kein Ruckeln und kein hängen mehr ![]() |
||
![]() |
Black Spider |
![]() Antworten mit Zitat ![]() |
---|---|---|
würds net auch so gehn´ !?
BlitzBasic: [AUSKLAPPEN]
|
||
Coming soon:
http://img132.imageshack.us/im...im2ab6.gif |
![]() |
otta |
![]() Antworten mit Zitat ![]() |
---|---|---|
translate ode move...kA funzt beides weiß aber nicht 100%ig wo der unterschied ist | ||
AthlonXP 2800+, Radeon 9600XT,160GBHDD,512 MB DDR Ram (neuer Rechner neues Glück;))
Aktuelles Projekt: momentan Projektlos |
![]() |
Black Spider |
![]() Antworten mit Zitat ![]() |
---|---|---|
bei "Move" wird die Rotation des Objekts berücksichtigt,
und bei "Translate" nicht. |
||
Coming soon:
http://img132.imageshack.us/im...im2ab6.gif |
Robin |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
ah gut, ich wusste das auch nicht, danke für die kleine nebeninfo ![]() |
||
www.purezone.de.vu |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group