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.
// --------------------------------- //
// 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: muli111111@web.de
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!
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