![]() |
Die Welt zugast in Duisdorf
Moin Leute! ich bin (fast) fertig Mit meinem Kunstprojekt.
Das Thema war "Duisdorf und Europa" Ich hab mir überlegt eine Art virtualle stadt zu proggen. Mit GLScene Mir fehlen nur noch zwei sachen. 1. Ich hab immernoch keine Maussteuerung einbauen können, stehe nach wie vor auf dem schlauch. Es wäre nett wenn ihr mir mir mit ein paar Tipps (oder auch ein paar zeilen Code) helfen könntet. (über google finde ich nichts) 2. Man läuft dauernd durch Wände hindurch :-( Wie kann man das verhindern? Ich hab hier mal den Source und die .exe ![]() ![]() Wäre echt nett, wenn ihr mir noch helfen oder Tipps geben könntet. Der abgabe Termin ist leider schon am Mittwoch :( MfG euer J.P. PS: es kann sein das das laden je nach Rechner ein wenig dauert. (10 - 40sec.). |
Re: Die Welt zugast in Duisdorf
Wie wär's wenn sich das ganze bewegt, solange man einen Button drückt und nicht nur bei im OnClick/OnMouseDown?
|
Re: Die Welt zugast in Duisdorf
Könntest du bitte bei den Direktlinks die Dateigröße angeben?
|
DP-Maintenance
Dieses Thema wurde von "SirThornberry" von "Sonstige Fragen zu Delphi" nach "Multimedia" verschoben.
|
Re: Die Welt zugast in Duisdorf
der source ist 2,83mb groß (als rar Datei, entpackt 20,4 mb)
die .exe 1,22mb (auch als rar, entpackt ca. 4,5mb) @flash11: Gute idee... aber wenn ich das mit der Maussteuerung realisieren kann, kommen die buttons eh weg. |
Re: Die Welt zugast in Duisdorf
wie genau hast du dir die Maussteuerung vorgestellt? Das man sich bewegt wenn man die Maus bewegt oder nur das man sich bewegt wenn die Maustaste gedrückt ist und man die Maus bewegt?
Du musst ja eine gewisse Vorstellung haben was du wie steuern willst. Wie das ganze dann in Quelltext aussieht ist eine andere Sache aber du solltest schon wissen was du vor hast zu programmieren. |
Re: Die Welt zugast in Duisdorf
also eine triviale Cursortastensteuerung ist aber auch nich tzu verachten... Grüße // Martin
|
Re: Die Welt zugast in Duisdorf
Also, am besten wäre es wirklich wenn die linke maustaste nach vorne, die rechte nach hinten und die x und y achse der maus für die sicht wären.
Dummerweise weiß ich aber nicht wie ich mich um meine achse drehen kann. ich muss immer das ganze Zimmer drehen und dass heißt, dass wenn man weiter außen steht, sich die welt in einem Bogen um mich herum dreht und nicht um den einen Punkt wo man gerade steht. Das ist irgendwie schwer zu erklären. schaut euch es einfach an. |
Re: Die Welt zugast in Duisdorf
Hallo J.P.
imho bewegt man sich in in einer 3d-Welt indem man die Welt um die Kamera ( :!: ) verschiebt/dreht (Bewegung ist relativ). So wie ich das verstehe drehst du das Level um sich selbst.
Delphi-Quellcode:
MfG,
procedure TForm1.Button6Click(Sender: TObject);
begin tisch.rollangle:= tisch.rollangle+1 // ist "tisch" das Level? {hier müsste noch Code hin, der den "tisch" um die Kamera dreht} end; Bug |
Re: Die Welt zugast in Duisdorf
Die Maussteuerung kannst du mit dem GLUserInterface in Verbindung mit dem GLNavigator realisieren. DummyCube, als Child die Cam und den Dummy als MovingObject einstellen.
|
Re: Die Welt zugast in Duisdorf
Im grunde ist Tisch der Parent von allem.
Also das ganze level, ja. Ich habe jetzt die Cursortasten belegt mit: cursorup=nach vorne laufen cursordown=nach hinten laufen curserleft=nach links cursorright=nach rechts. Wenn ich das mit der Maussteuerung wie vonhmbg beschrieben hinkrieg, ist es perfekt :) Danke leute :) Wenn es klappt stelle ich die endgültige version hier hin ;) |
Re: Die Welt zugast in Duisdorf
@hmbg:
Könntest du vll da ein bischen genauer erklären? ich hab jetzt ein DummyCube erstellt, und ihm die Camera als child gegeben. Den cube hab ich dann als Moving objekt. Wie geht es jetzt weiter? Wenn ich kompiliere ist alles genau so wie vorher. MfG J.p. |
Re: Die Welt zugast in Duisdorf
Wär' noch gut, wenn man nicht durch die Mauern gehen kann :)
|
Re: Die Welt zugast in Duisdorf
:lol: stimmt :)
da gibt es eine Komponente: Kollisiontester (oder so ähnlich) Weiß jemand wie man die benutzen kann? |
Re: Die Welt zugast in Duisdorf
Warum bewegst du den ganzen Tisch? Wäre es nicht einfacher/logischer die Kamera, also den Batrachter zu bewegen?
Was du meinst ist der CollisionManager, der erkennt, ob einen Kollision vorliegt. Du müsstest dazu den manager hinzufügen und in die OnCollision wird die Prozedur geschrieben, die das durchschreiten verhindert! Dann musst du deinen ganzen Wänden noch das Behavior "Collision" zuweisen und den Manger zuweisen (wichtig, sonst klappts nicht :!: ). Aber ich wüde die für die Steuerung ehrlich gesagt auch eine tastensteuerung empfehlen, statt der Maus. Nimm das Numpad: 4,8,6,2 - ganz normal und dann 7 und 9 als drehen... vllt. noch 1 und 3 als hoch und runter... :thumb: Soweit erstmal von mir... :zwinker: OT-Frage: Wie is denn die Aufgabestellung bei euch? Macht irgendwas zu diesem Thema? Ich mein Euer Lehrer kann ja schlecht davon ausgehen, das ihr alles Dlephi beherrscht, oder generell mit dem Computer umgehen könnt. |
Re: Die Welt zugast in Duisdorf
Wir durften uns aussuchen was wir machen. Ich wollte kein Bild machen (oder ähnliches)
daher hab ich mich dazu entschieden ein Virtuelles Duisdorf mit ein paar Wahrezeichen z proggen. Ist jetzt auch ganz fertig (mit Hauptmenü etc.) Bis auf die genauere stuerung (maus) und die Collision. Abgabe termin ist Mittwoch (noch 2tage :-| ) Ich gucke mir den Collisionsmanager mal näher an. |
Re: Die Welt zugast in Duisdorf
Hier ist jetzt die neue Version mit Startbildschirm, menü und Maussteuerung :)
Wenn ihr noch Vorschläge habt, postet diese bitte. ![]() PS: Könntet ihr vll noch eure CPU und Grafikkarten daten hier mitposten? Damit ich weiß welche mindestanforderungen benötigt werden. MfG J.P. |
Re: Die Welt zugast in Duisdorf
Wenn ich mich um 90° drehe und nach vorne will geht er seitwärts.
Vermutlich, weil du die bewegungen absolut hast und nicht relativ oder? Wäre schön, wenn in jedem winkel "vorne" auch "nach vorne" bedeuten würde... |
Re: Die Welt zugast in Duisdorf
das problem kenn ich, der navigator (falls du den benutzt) verdreht sich manchmal irgendwie komisch. Ich hab das dann mit ner sinus/cosinusfunktion gelöst.
|
Re: Die Welt zugast in Duisdorf
Wenn mir einer eben schnell das mit cosinus und sinus erklären kann, und ichs verstehe kann ich das ja noch einbauen...
Abgabe ist nämlich morgen... |
Re: Die Welt zugast in Duisdorf
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:25 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz