JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=99bcb46fe2e27929f4117a66ae64c8ebMedaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

3D Objekt Fehler

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Grafik und Sound
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Robin
Junior JLI'ler


Alter: 30
Anmeldedatum: 29.10.2008
Beiträge: 73
Wohnort: Inneringen
Medaillen: Keine

BeitragVerfasst am: 28.08.2011, 16:51    Titel: 3D Objekt Fehler Antworten mit Zitat

Hi Leute,
ich weiß nich ob ich ne antwort bekomm, hier is ja nicht mehr so viel los...
zum Problem:

Game: Ego-Ansicht, bewege mich mit WASD und Maus

Wenn ich in mein Game viele 3d Objekte einbinde kann ich mich mit meiner Maus nicht mehr drehen oder sonstiges.
Jedoch kann ich mich mit den Tasten noch ohne Probleme bewegen und die Framerate ist konstant auf 60.

Dieses Problem tritt aber nicht nur auf wenn ich viele Objekte einbinde, sondern es reicht auch ein Objekt mit vielen Vertices einbinde.

Achja, damit das ganze mit dem drehen auch funktioniert stelle ich die MausPosition immer auf SCREEN_X / 2 , also die mitte. Wenn ich dies nicht mache muss ich zwar die Maus sehr still halten, aber das drehen funktioniert ohne Probleme egal wieviel Objekte da sind.

(Wenn ihr Code braucht bitte melden, aber vielleicht kennt ihr das Problem ja)

GRuß Robin
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Otscho
Super JLI'ler


Alter: 36
Anmeldedatum: 31.08.2006
Beiträge: 338
Wohnort: Gummibären-Gasse
Medaillen: Keine

BeitragVerfasst am: 28.08.2011, 21:01    Titel: Antworten mit Zitat

Brauche Code...

Läuft das alles bei dir in etwa in dieser Reihenfolge ab :


- Erfrage Mausposition
- Rendere Zeugs
- setze Maus in die Mitte


?



Gruß Matthias.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Robin
Junior JLI'ler


Alter: 30
Anmeldedatum: 29.10.2008
Beiträge: 73
Wohnort: Inneringen
Medaillen: Keine

BeitragVerfasst am: 28.08.2011, 23:10    Titel: Antworten mit Zitat

Jop ganz genau so.

main
CPP:
...
ShowCursor(FALSE);

POINT MousePos;

while(msg.message != WM_QUIT)
{
   if(PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
        {
            TranslateMessage(&msg);
            DispatchMessage(&msg);
        }
        else
        {

GetCursorPos(&MousePos);

Engine.StarteEngine(); //hier wird die Framerate aktualisiert und beginScene

Engine.ladeMatrix(); //befindet sich in einer extra schleife damit nur einmal geladen wird, lädt grafiken und meshes und Terrain

Engine.RenderMatrix(); // Rendert alles

float RotationY = static_cast<float>((SCR_WIDTH  / 2  - MousePos.x)) / Engine.GetFramerate() * 8; // *8
float RotationX = static_cast<float>((SCR_HEIGHT / 2  - MousePos.y)) / Engine.GetFramerate() * 8;

Engine.MoveCamera(RotationX, RotationY);

//sobald ich diese zeile auskommentiere und ich die maus nur minimal von der mitte entferne funktioniert alles ohne probleme
//das kann ich aber nicht weg lassen, da sich sonst alles dreht
SetCursorPos(SCR_WIDTH  / 2, SCR_HEIGHT / 2);

Engine.BeendeEngine();

}


Haha ist mir jetzt voll Peinlich, beim Menu und sonstigem Herauskürzen ist mir der Fehler aufgefallen.

Ich muss das Mit der maus machen bevor ich BeginScene mache, dann geht es.

(Habe den Beitrag da lassen, falls es anderen auch mal Passiert)

GRuß Robin
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Otscho
Super JLI'ler


Alter: 36
Anmeldedatum: 31.08.2006
Beiträge: 338
Wohnort: Gummibären-Gasse
Medaillen: Keine

BeitragVerfasst am: 29.08.2011, 17:01    Titel: Antworten mit Zitat

Dacht ich mir.

Setze mal

CPP:
SetCursorPos(SCR_WIDTH  / 2, SCR_HEIGHT / 2);


direkt hinter

CPP:
GetCursorPos(&MousePos);


und versuchs dann.

Also:

- Erfrage Mausposition
- Setze Maus in die Mitte
- Rendere Zeugs
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Grafik und Sound Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum