Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!
Werbeanzeige
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
for(int iCube = 0; iCube < g_iNumCubes; iCube++) { //Verbindungsvektor vCameraCube = g_aCube[iCube].vPosition - g_vCameraPosition; //Addieren zum Bewegungsvektor g_aCube[iCube].vVelocity += (vCameraCube * 0.01f); //Zeit berücksichtigen g_aCube[iCube].vPosition += g_aCube[iCube].vVelocity * fNumSecsPassed; fDistance = tbVector3Length(g_aCube[iCube].vPosition); if(fDistance > 100.0f) g_aCube[iCube].vVelocity *= -1.0f; } |
Zitat
Erweitern Sie das Programm aus Aufgabe1 so, dass die Würfel der Kamera folgen.
Tipp:
Berechnen Sie den Verbindungsvektor von jedem Würfel zur Kamera, und addieren Sie ..... [ wie oben beschrieben]
Zitat von »"snooper"«
//Verbindungsvektor
vCameraCube = g_aCube[iCube].vPosition - g_vCameraPosition;
Zitat von »"snooper"«
//Addieren zum Bewegungsvektor
g_aCube[iCube].vVelocity += (vCameraCube * 0.01f);
Zitat von »"snooper"«
//Zeit berücksichtigen
g_aCube[iCube].vPosition += g_aCube[iCube].vVelocity * fNumSecsPassed;
Zitat von »"snooper"«
fDistance = tbVector3Length(g_aCube[iCube].vPosition);
if(fDistance > 100.0f) g_aCube[iCube].vVelocity *= -1.0f;
C-/C++-Quelltext |
|
1 2 3 4 5 6 7 8 9 10 11 |
for(int iCube = 0; iCube < g_iNumCubes; iCube++) { //Verbindungsvektor vCameraCube = g_vCameraPosition - g_aCube[iCube].vPosition; //Addieren zum Bewegungsvektor g_aCube[iCube].vVelocity = (vCameraCube * 0.01f); //Zeit berücksichtigen g_aCube[iCube].vPosition += g_aCube[iCube].vVelocity * fNumSecsPassed; } |
C-/C++-Quelltext |
|
1 |
if(fDistance > 100.0f) g_aCube[iCube].vVelocity *= -1.0f; |
Zitat von »"snooper"«
Kann dies nicht mit einer einfachen Rotation der Würfel um den veränderten Winkel der Kamerablickrichtung geschehen? Wenn das der falsche Ansatz ist könntest du mir vielleicht einen Tipp geben, wie man so etwas bewerkstelligen kann?
Werbeanzeige