Fortbewegung auf hügeligem Terrain
Übersicht

MuckBetreff: Fortbewegung auf hügeligem Terrain |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo,
warum bleibt die Spielfigur hier im Hügel des Terrains hängen und wie kriege ich es hin, dass sie stattdessen drüber läuft? Code: [AUSKLAPPEN] Graphics3D 800, 600, 32, 2
SetBuffer BackBuffer() light = CreateLight() RotateEntity light, 90, 0, 0 terrain = CreateTerrain(16) grass_tex = LoadTexture("blitztexture.bmp") EntityTexture terrain, grass_tex ModifyTerrain terrain, 8, 8, 0.05 ModifyTerrain terrain, 8, 9, 0.05 ModifyTerrain terrain, 8, 10, 0.05 ScaleEntity terrain, 1, 10, 1 PositionEntity terrain,0,0,0 Global man=LoadMD2( "gargoyle.md2") ScaleEntity man, 0.01, 0.01, 0.01 PositionEntity man,0,0,0 Global camera = CreateCamera() PositionEntity camera,0,1,-1.5 EntityType man, 1 EntityType terrain, 2 Collisions 1,2,2,2 ; Kollisionstypen, Prüfungsart, Reaktion While Not KeyHit(1) If KeyDown(203) = 1 Then ; nach links TurnEntity man, 0, 1, 0 TurnEntity camera, 0, 1, 0 MoveEntity camera, +0.03, 0, 0 ElseIf KeyDown(205) = 1 Then ; nach rechts TurnEntity man, 0, -1, 0 TurnEntity camera, 0, -1, 0 MoveEntity camera, -0.03, 0, 0 ElseIf KeyDown(200) = 1 Then ; nach oben MoveEntity man, 0, 0, 0.1 MoveEntity camera, 0, 0, 0.1 EndIf UpdateWorld RenderWorld Flip Wend End |
||
Omenaton_2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich weiß nicht, aber du solltest die Figur nicht auf Höhe Null erschaffen, sondern etwas darüber.
Bei einer 3D Landschaft bei der man nicht exakt weiß in welcher Höhe der Boden an welcher beliebieger Stelle gerade hat, läßt man die Figuren von weit oben beim Erschaffen (noch bevor es für den Spieler sichtbar gezeichnet wird) per Gravitationsvariable (einfach immer kontinueirlich versuchen die Figur minimal nach unten zu schieben) herunterfallen. Diese ElseIF Kontstruktionen sehen nicht so hübsch aus. Da könntest du einfach getrennte If Then / EndIf nehmen und es sollte lieber "nach Vorne" und nicht "nach Oben" heißen. |
||
![]() |
ZaP |
![]() Antworten mit Zitat ![]() |
---|---|---|
Evtl. wäre es hierbei auch sinnig, ganz auf Kollisionen zu verzichten, und stattdessen lieber TerrainY![]() ![]() |
||
Starfare: Worklog, Website (download) |
Muck |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ok, ich habe folgendes eingebaut:
Code: [AUSKLAPPEN] PositionEntity man, EntityX#(man), TerrainY# (Terrain, EntityX#(man), EntityY#(man), EntityZ#(man)), EntityZ#(man)
Nun klettert er zwar auf den Hügel, aber wenn man ihn dort dreht, steckt das eine Bein im Boden fest... Auch nicht so schön. |
||
Omenaton_2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das mit dem in den Boden reinstecken ist durchaus normal und haben andere Spiele auch. Das zu verhindern wäre sehr aufwendig, dazu müßten die Füße als extra Objekte wie echte Füße sich drehen lassen um sich an den Winkel anpassen zu können. | ||
Pablo Borsellino |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das mit den Füßen ist bei vielen Spielen, selbst in allen Grand theft Auto reihen ist es vorhanden. Vermeiden dieses Problemes würde dich viel zu viel Zeit kosten, lohnt sich nicht wirklich da es nur ein Optikfehler ist. Falls du diese Zeit aber in Kauf nehmen möchtest, musst du die füße (+ evtl. Beine) als einzenlnde Objekte machen damit sie sich der Steigung des Hügels/Berges anpassen können und es realistischer aussieht. | ||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group