Drehzahlmesser - wie wird das am elegantesten gelöst??

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8812
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Beitrag von NicTheQuick »

Da Sprite3D eigentlich nichts mit 3D zu tun hat, brauchst du schonmal
keine Angst vor einer 3D-Karte zu haben. Die brauchst du nämlich nicht.
Ansonsten ist für alle Sprite-Funktion DirectX 7.0 vorausgesetzt.

Auf der PureArea gibt es meines Wissen aber auch eine RotateImage-
Funktion in irgendeiner UserLib, dann brauchst du gar kein DirectX.

Schnell genug sind die Funktionen auf jeden Fall. Du kannst auch locker
über 100 oder noch einige mehr Sprites willkürlich rumtrillern lassen,
ohne dass dein 500 Mhz-PC ins Schwitzen kommt. Wie das bei dem
RotateImage aussiehst, weiß ich nicht. Aber für 5 Zeiger reichts allemal.

Die PureArea findest du oben rechts im Forenkopf.
kdeparade
Beiträge: 41
Registriert: 16.01.2006 21:08

Beitrag von kdeparade »

Danke Nic. Jetzt bin ich schon gespannt auf meine ersten Ergebnisse.
Danke auch für den Abschluss meines 1. Treads.

Gruss KUD
Benutzeravatar
Danilo
-= Anfänger =-
Beiträge: 2284
Registriert: 29.08.2004 03:07

Beitrag von Danilo »

NicTheQuick hat geschrieben:Da Sprite3D eigentlich nichts mit 3D zu tun hat, brauchst du schonmal
keine Angst vor einer 3D-Karte zu haben. Die brauchst du nämlich nicht.
Ansonsten ist für alle Sprite-Funktion DirectX 7.0 vorausgesetzt.
Sprite3D nutzt Direct3D 7.
cya,
...Danilo
"Ein Genie besteht zu 10% aus Inspiration und zu 90% aus Transpiration" - Max Planck
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8812
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Beitrag von NicTheQuick »

Danilo? :?

Hallöchen auch.

Danke für den Hinweis. Da ich selten mit Sprites am Werkeln bin, war ich
da wohl falsch informiert. Schließlich hat es irgendwann mal gehießen,
dass da zwar 3D draufsteht, aber kein 3D drin ist. Naja...
Benutzeravatar
Ja!
Beiträge: 271
Registriert: 02.01.2006 16:13
Wohnort: Stuttgart

Beitrag von Ja! »

Die 3D-Sprites haben keine 3 Dimensionen, das ist schon richtig..

Aber da sie wie eine Textur für 3D-Körper behandelt wird,
ist Direct3D vonnöten.

Auszug aus der Hilfe:

"Die Sprite3D Library ist eine kleine 3D-Engine, die zum Anzeigen von 2D Sprites mit den neuen 3D Hardware-Möglichkeiten wie Echtzeit-Zooming, Transforming, Blending (Transparenz-Effekte) und mehr benutzt wird."


Gruß
Benutzeravatar
MVXA
Beiträge: 3823
Registriert: 11.09.2004 00:45
Wohnort: Bremen, Deutschland
Kontaktdaten:

Beitrag von MVXA »

Natürlich haben 3D-Sprites 3 Dimensionen. Die Funktion
[c]TransformSprite3D()[/c] existiert nicht aus langeweile.
Bild
Benutzeravatar
Ypser
XMas-Contest-Gewinner '03
Beiträge: 128
Registriert: 29.08.2004 14:35
Computerausstattung: Win7
Wohnort: Ingelheim
Kontaktdaten:

Beitrag von Ypser »

Sicher haben Sprite3Ds 3 Dimensionen. Zumindest ihre Ecken ;)

Sprite3Ds sind eigentlich keine Sprites, sondern Viereck-Polygone (genaugenommen 2 Dreiecke),
und mit TransformSprite3D() beeinflusst du ihre 4 Vektoren (die 2D-Koordinaten). Dabei gibt es auch
eine Z-Koordinate (die Enfernung zum Betrachter), die Direct3D normalerweise dafür braucht, um
die Darstellungsreihenfolge zu ermittlen (Z-Buffer).

In PB wurde der Z-Wert aber nur nachträglich eingeführt, damit die Transformationen korrekt angezeigt
werden können (für die RHW-Werte). Davor gab es immer sehr unschöne verzerrungen.
Bild
kdeparade
Beiträge: 41
Registriert: 16.01.2006 21:08

Beitrag von kdeparade »

Na super ??!!
"Sprite3D nutzt Direct3D 7."
Ich glaube das der Zeiger mit Sprite3D nicht das richtige ist, da ich vorhabe diesen Code auch unter Linux zu benutzen.
Was empfielt sich denn als Alternative?

Gruss KUD
Benutzeravatar
AndyX
Beiträge: 1272
Registriert: 17.12.2004 20:10
Wohnort: Niederösterreich
Kontaktdaten:

Beitrag von AndyX »

Sprite3D gibts ja auch unter Linux :wink:
Benutzeravatar
Ja!
Beiträge: 271
Registriert: 02.01.2006 16:13
Wohnort: Stuttgart

Beitrag von Ja! »

MVXA hat geschrieben:Natürlich haben 3D-Sprites 3 Dimensionen. Die Funktion
[c]TransformSprite3D()[/c] existiert nicht aus langeweile.
Wenn man ein 3DSprite um 90° drehen würde, wäre es
nicht sichtbar, weil es keine 3te Dimension hat. Das meinte ich damit..

Wollte nur nicht so weit ausholen ;)
Antworten