JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

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

Kamera

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> DirectX, OpenGL
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Chewie
Super JLI'ler



Anmeldedatum: 17.07.2003
Beiträge: 382

Medaillen: Keine

BeitragVerfasst am: 07.12.2003, 13:05    Titel: Kamera Antworten mit Zitat

Kann mir wer sagen, wieso das nicht geht? Das sind die kameraeinstellungen für ein orthogonales editorfenster (draufsicht). Die bewegung entlang x/z funkt, nur beim zoomen auf y passiert kurz nichts, dann ist das objekt auf einmal weg...
Code:

            // wenn linker u. mittlerer mb -> zoomen
            if (dims.rgbButtons[0] & 0x80)
            {
               m_CamView1.vPos.y += (float)dims.lX * 20.0f * m_fTimeRate;
            }
            // nur mittlerer mb -> bewegen
            else
            {
               m_CamView1.vPos.x -= (float)dims.lX * 20.0f * m_fTimeRate;
               m_CamView1.vPos.z += (float)dims.lY * 20.0f * m_fTimeRate;
            }

   m_CamView1.vLookAt.x = m_CamView1.vPos.x;
   m_CamView1.vLookAt.z = m_CamView1.vPos.z;
   m_CamView1.vLookAt.y = m_CamView1.vPos.y - 1.0f;
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
AFE-GmdG
JLI MVP
JLI MVP


Alter: 45
Anmeldedatum: 19.07.2002
Beiträge: 1374
Wohnort: Irgendwo im Universum...
Medaillen: Keine

BeitragVerfasst am: 07.12.2003, 13:31    Titel: Antworten mit Zitat

Bei Ortogonalen Kameraansichten verschwindet die Tiefe. Dass, was du als Zoomen bezeichnest, ist kein Zoomen, sondern nur ein verändern der Kameraposition in die Tiefe. Weg ist das Objekt deshalb, weil es sich plötzlich hinter der Kamera befindet...
_________________
CPP:
float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Chewie
Super JLI'ler



Anmeldedatum: 17.07.2003
Beiträge: 382

Medaillen: Keine

BeitragVerfasst am: 07.12.2003, 13:41    Titel: Antworten mit Zitat

ja gut, das ist mir auch klar, aber 'die position der kamera auf der y- achse' sollte ja eigentlich flüssig verändert werden...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 07.12.2003, 13:46    Titel: Antworten mit Zitat

Kann man da nicht den Bildausschnitt der gerendert werden soll in der Kamera angeben. Ich glaub bei der orthogonalen POerspektive war das möglich.

Hat nicht mit der Bildschirmgrösse zu tun.
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Chewie
Super JLI'ler



Anmeldedatum: 17.07.2003
Beiträge: 382

Medaillen: Keine

BeitragVerfasst am: 07.12.2003, 14:06    Titel: Antworten mit Zitat

hmm, weiß nicht genau was du meinst...die projektionsmatrix erstelle ich so:
Code:

void CScene::SetOrthProjection(HWND hWnd)
{
   RECT rect;
   GetClientRect(hWnd, &rect);

   float width = (float)(rect.right / 100.0f);
   float height = (float)(rect.bottom / 100.0f);

   D3DXMatrixOrthoLH(&m_mProjOrth, width, height, 0.1f, 100.0f);
}

// dann halt...
m_lpDevice->SetTransform(D3DTS_PROJECTION, &m_mProjOrth);
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 07.12.2003, 16:11    Titel: Antworten mit Zitat

Das width & height müsstest du gleichmäßig vergrössern oder verkleinern um dein zoom hinzubekommen.
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Chewie
Super JLI'ler



Anmeldedatum: 17.07.2003
Beiträge: 382

Medaillen: Keine

BeitragVerfasst am: 07.12.2003, 17:16    Titel: Antworten mit Zitat

ahh, keine schlechte idee, so müßte es gehen...aber warum mein code nicht funkt würd mich trotzdem interessieren... ich wollt eigentlich die projektionsmatrix gleich für 3 fenster nehmen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 07.12.2003, 19:18    Titel: Antworten mit Zitat

Ja, das könnte daran liegen weil es in der ortho. Perspektive keine Perspektiven korrektur gibt.

Aber was genau möchtest du machen ? Unterschiedliche Bliuckwinkel/Positionen ?

Bei dieser Perspektive bringt das vor und zurückbewegen auf der Tiefenachse nichts.
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Chewie
Super JLI'ler



Anmeldedatum: 17.07.2003
Beiträge: 382

Medaillen: Keine

BeitragVerfasst am: 08.12.2003, 20:02    Titel: Antworten mit Zitat

wie gesagt, das wird ein editorfenster(draufsicht) in dem man die kamera auf x/z bewegen und auf y reinzoomen kann. ein ganz normales editorfenster eben.

dass sich bei einer orth. perspektive die tiefenachse anders verhält, wußte ich nicht, hab grad ein bißchen rumexperimentiert:
würfel a=2 steht auf 0,0,0
orth. perspektive
kamera:
z=0.0 -> würfel n. sichtbar
z=1.0 -> immer noch nicht
z=1.1 -> sichtbar
z=100 -> sichtbar, selbe größe

sobald die kamera außerhalb des würfels ist, sieht man ihn (klar). ab dann ist die kameraposition aber irrelevant, ich sehe den würfel immer in derselben größe, egal ob z=100 oder z=2, solange ich die perspektiveneinstellungen nicht ändere. how strange is that? wie geht man damit jetzt um? immer dafür sorgen dass die kamera höher positioniert ist (bei draufsicht) als der höchste punkt der ganzen geometrie und über die perpektive zoomen?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 08.12.2003, 21:21    Titel: Antworten mit Zitat

Ja klar kannst du machen. Einfach ne Schleife durchlaufen lassen welches deiner Objekte am nähchsten zu der Kamera ist.
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Chewie
Super JLI'ler



Anmeldedatum: 17.07.2003
Beiträge: 382

Medaillen: Keine

BeitragVerfasst am: 08.12.2003, 21:30    Titel: Antworten mit Zitat

das ist ja voll bescheuert....die hätten das gleich so machen sollen, dass man irgendeine positive Zahl (1) für z.B die z position angeben muß um dann halt hinter allen objekten zu stehen und gleich die perspektiveneinstellungen verwenden zu können...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Fallen
JLI MVP
JLI MVP


Alter: 40
Anmeldedatum: 08.03.2003
Beiträge: 2860
Wohnort: Münster
Medaillen: 1 (mehr...)

BeitragVerfasst am: 08.12.2003, 22:19    Titel: Antworten mit Zitat

Ist nicht unbedingt bescheuert. Kann ja sein das du mitten im Programm die perspektive wechseln möchtest. Ausserdem kann das ja nicht immer erwünscht sein das alle Objekte vor dir sind.
_________________
"I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse."
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Chewie
Super JLI'ler



Anmeldedatum: 17.07.2003
Beiträge: 382

Medaillen: Keine

BeitragVerfasst am: 08.12.2003, 22:25    Titel: Antworten mit Zitat

naja, danke jedenfalls, ich hab das jetzt so umgebaut und es funktioniert super.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> DirectX, OpenGL 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