Rotierendes Objekt inkl. blinkender Lichter

Previous topic - Next topic

x-tra

So, mein erster Versuch hier, und mittels viel Hilfe endlich etwas zustande bekommen.

Falls es also jemanden interessiert, bitteschön.

Es werden zwei miteinander rotierende Objekte dargestellt, wobei mittels Alphablending zwei Lichter zum Blinken gebracht werden.

Grafisch nur etwas zusammengeschustert, aber es demonstriert recht anschaulich die Funktionsweise.

Code (glbasic) Select
// --------------------------------- //
// Project: spaceship
// Start: Wednesday, September 12, 2007
// IDE Version: 4.279




// Spaceship zweiteilig laden


X_LOADOBJ "heck.ddd", 1
X_LOADOBJ "lichter.ddd", 2

// 3D Modus, Kamera und Licht hinzufügen
WHILE TRUE

    X_MAKE3D 1, 100, 45    
X_CAMERA 0, 0, 2, 0, 0, 0
X_AMBIENT_LT 0, RGB(209,209,209)

// Zeichnen

INC phi,1
    IF phi > 359 THEN phi = 0  // Rotationswinkel für beide Objekte festlegen

// Objekt 1
X_MOVEMENT 0,0,0    //Objekt 1 positionieren
X_ROTATION phi,0,0,1  // Objekt 1 mit Winkel phi um Achse Z drehen
X_DRAWOBJ 1,0     //  Objekt 1 zeichnen


// Objekt 2
X_MOVEMENT 0,0,0    // Objekt 2 positionieren
ALPHAMODE 0         // Alphamode auf 0 setzen
   IF phi > 90 THEN ALPHAMODE 1   //
   IF phi > 180 THEN ALPHAMODE 0  // Abfragen wann Alphablending aktiv. abhängig
   IF phi > 270 THEN ALPHAMODE 1  // vom Winkel
X_ROTATION phi,0,0,1   // Objekt 2 mit Winkel phi um Achse Z drehen
X_DRAWOBJ 2,0    // Objekt 2 zeichnen


SHOWSCREEN     //Welt anzeigen
WEND           //Schleife von vorn beginnen
Unten der komplette download dazu.


http://www.zshare.net/download/3678772b0f0651/


P.S. Nun bin ich dran, ein ordentliches Spaceship zu modeln, und zu versuchen dieses im Raum frei bewegen zu können, und trotzdem soll diese Rotation beibehalten werden.
Diesbezüglich bin ich über Ratschläge immer dankbar.
Gern auch per Mail an:
Code (glbasic) Select
muli111111@web.de

Schranz0r

Tips:

Gehe bei deinen Schiff dann immer von einen Fixpunkt aus, und hafte alle andern damit dran!
Winkel und Rotation musst du natürlich mit beachten!
I <3 DGArray's :D

PC:
AMD Ryzen 7 3800X 16@4.5GHz, 16GB Corsair Vengeance LPX DDR4-3200 RAM, ASUS Dual GeForce RTX™ 3060 OC Edition 12GB GDDR6, Windows 11 Pro 64Bit, MSi Tomahawk B350 Mainboard

x-tra

Ja mit Push- und Popmatrix geht das ja soweit ich gesehen hab.
Frage ist nur, ob dann Winkel, Rotationen usw. relativ zu dem neu festgelegten Fixpunkt angegeben werden, oder wieder global.

Aber das find ich schon raus durch probieren