AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Umschauen mit der maus?
Thema durchsuchen
Ansicht
Themen-Optionen

Umschauen mit der maus?

Ein Thema von SiCkN3sS · begonnen am 10. Okt 2004 · letzter Beitrag vom 10. Okt 2004
Antwort Antwort
SiCkN3sS

Registriert seit: 6. Okt 2004
3 Beiträge
 
Delphi 7 Professional
 
#1

Umschauen mit der maus?

  Alt 10. Okt 2004, 19:24
Hallo,

ich fange gerade erst an mit OpenGl und habe in ner unit names movement vorerst nur eine Procedure die es ermöglichen soll sich mit der Maus umzuschauen. Fehler beim Compilieren erhalte ich nicht. Allerdings passiert auch nichts wenn man die Maus bewegt.

Evtl. könnt ihr mir ja weiterhelfen. Hier ist ersteinmal der code der movement.pas:

Delphi-Quellcode:
unit movement;

interface

uses openGl,windows,glaux;

function mytilt():glFloat;
function myhead():glFloat;

implementation

 var
  mpos : TPoint;
  MouseSpeed : Integer = 7;
  Tilt : glFloat;
  Heading : glFLoat;

Procedure look_around;
BEGIN
   GetCursorPos(mpos);
   SetCursorPos(400,300);
   Heading := Heading + (mpos.x - 400) / 100 * MouseSpeed;
   Tilt := Tilt-(300-mpos.y)/100 * MouseSpeed;
   if Tilt > 60 then Tilt :=60;
   if Tilt < -60 then Tilt :=-60;
END;

function mytilt():glFloat; BEGIN look_around; Result := tilt; END;
function myhead():glFloat; BEGIN look_around; Result := Heading; END;


end.
Die beiden Funktionen rufe ich dann folgender maßen in einer anderen datei auf (movement ist via uses eingebunden):

Delphi-Quellcode:
procedure TForm1.Draw;
begin
   glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
   glShadeModel(GL_SMOOTH);
   glCullFace(GL_BACK);
   glENABLE(GL_Normalize);
   glLoadIdentity;
   glRotatef(mytilt,1,0,0);
   glRotatef(myhead,0,1,0);
   glCallList(SkyBox);
   SwapBuffers(wglGetCurrentDC);
end;
Leider weiß ich nicht was ich falsch mache.

Gruß Sick
  Mit Zitat antworten Zitat
Benutzerbild von flomei
flomei

Registriert seit: 17. Jan 2003
Ort: Schieder-Schwalenberg
2.094 Beiträge
 
Delphi 2005 Personal
 
#2

Re: Umschauen mit der maus?

  Alt 10. Okt 2004, 19:27
Entweder denke ich gerade falsch oder ich sehe wirklich nicht wo "look_around" aufgerufen wird...

MFG Florian
Florian Meier
... ist raus.
Vielen Dank für die Zeit mit euch!
http://www.flomei.de -- http://www.md5hash.de
  Mit Zitat antworten Zitat
SiCkN3sS

Registriert seit: 6. Okt 2004
3 Beiträge
 
Delphi 7 Professional
 
#3

Re: Umschauen mit der maus?

  Alt 10. Okt 2004, 19:32
look_around wird in den functionen innerhalb der movement.pas aufgerufen. Diese übergeben die Variablen tilt bzw head.

könnte es daran liegen das ich das programm nicht im Fullscreen laufen lasse??
  Mit Zitat antworten Zitat
Fubar

Registriert seit: 8. Sep 2004
Ort: bei Stuttgart
30 Beiträge
 
Delphi 7 Professional
 
#4

Re: Umschauen mit der maus?

  Alt 10. Okt 2004, 19:48
> procedure TForm1.Draw;

Ist das die "OnDraw" Methode? Wenn ja, versuch mal am Ende ein "Invalidate" einzubauen.
  Mit Zitat antworten Zitat
SiCkN3sS

Registriert seit: 6. Okt 2004
3 Beiträge
 
Delphi 7 Professional
 
#5

Re: Umschauen mit der maus?

  Alt 10. Okt 2004, 19:52
Invalidate bringt leider keine Lösung des Problems. Jetzt flimmert die Form grau und in den Texturen der Skybox.

Trotzdem danke.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:04 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz