Kleines Problem mit Effekten

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Leo1995

Betreff: Kleines Problem mit Effekten

BeitragMo, Okt 19, 2009 17:18
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,
ich habe noch nicht sehr viel Erfahrung mit B3D gesammelt.
Jetzt probiere ich mich an einem Pong Klon (ja ich weiß einer von vielen).

Ich habe 3 Probleme.

1. Das Problem ist das die Kugel bei jedem Schlag schneller werden soll, das bekomme ich nicht wirklich hin.
2. Wie kann ich mit B3D Bewegungsunschärfe darstellen, damit die Kugel bei schnellem schlagen verschwimmt.
3. Wie kann ich die Kugel brennen lassen, so das sich das Feuer an die Geschwindigkeit und Schlagrichtung der Kugel anpasst.

Es wäre sehr lieb wenn mir hier jemand helfen könnte.
Danke im Voraus.
Gruß,
Leon
Windows XP/SP3,AMD Phenom X2 7750 2,7 Ghz Black Edition,X1800XT 512 MB,2 GB DDR2 - 800 Ram,1 Terabyte Festplatte

Nicdel

BeitragMo, Okt 19, 2009 17:21
Antworten mit Zitat
Benutzer-Profile anzeigen
1. Geschwindigkeitsvariable, bei der immer mehr dazu addiert wird, um diese Geschwindigkeit wird der Ball bewegt.

2. Gibt's sicher eine Engine oder einen Code für, kann man aber auch selber programmieren

3. Partikelengine
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7

Leo1995

BeitragMo, Okt 19, 2009 17:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Dankeschön.

Auf das erste hätte ich auch kommen können Very Happy
Tja nachher ist man immer schlauer.

Kannst du mir vielleicht eine gute Partikel Engine empfehlen die sich auch für Anfänger eignet ???

Und bei der Geschwindigkeitsvariable:
Kann mir jemand vielleicht den Code für eine schreiben weil ich wie gesagt noch Anfänger bin.
2. Muss ich auch die Kollisionen ändern wenn das mit hoher Geschwindigkeit passiert ???
Windows XP/SP3,AMD Phenom X2 7750 2,7 Ghz Black Edition,X1800XT 512 MB,2 GB DDR2 - 800 Ram,1 Terabyte Festplatte

mpmxyz

BeitragMo, Okt 19, 2009 18:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich gehe im ersten Teil mal davon aus, dass du 2D-Zeichenbefehle oder die Draw3D nutzt.
Du hast jetzt einmal eine Position und eine Geschwindigkeit:
Code: [AUSKLAPPEN]
Local PositionX,GeschwindigkeitX


Und in der Hauptschleife addierst du einfach zu der Position die Geschwindigkeit.
Code: [AUSKLAPPEN]
Repeat
         ;Zeichnen und anderes Zeug
         PositionX=PositionX+GeschwindigkeitX
         ;noch irgendein Zeug
Until KeyHit(1)

Bei der Kollisionsprüfung musst du bei hohen Geschwindigkeiten auch zwischen der neuen und der alten Position auf Kollisionen prüfen, da z.B. der Ball durch den Schläger fliegen könnte.


Wenn du das Entity-System von B3D nutzt, dann ist der Code nur ein bischen anders:
1. Du hast keine Positionsvariable, da das Objekt selbst weiß, wo es sich befindet.
2. Das Objekt wird mit "MoveEntity Entity, GeschwindigkeitX, GeschwindigkeitY, GeschwindigkeitZ" bewegt.
3. Bei der Kollision weiß ich leider nicht so sehr bescheid, aber ich vermute, dass die Geschwindigkeit bei realistischen Werten egal ist.


Bei beiden Möglichkeiten bestimmt das Vorzeichen der Geschwindigkeit die Richtung der Bewegung und der Betrag der Geschwindigkeit bestimmt, wie schnell sich das Objekt bewegt.

mfG
mpmxyz
Moin Moin!
Projekte: DBPC CodeCruncher Mandelbrot-Renderer

Nicdel

BeitragMo, Okt 19, 2009 18:07
Antworten mit Zitat
Benutzer-Profile anzeigen
Es wird ein 2D-Pong? Dann stimmen die Punkte 2+3 in meiner Antwort nicht mehr ganz. Für Feuer und Bewegungsunschärfe wären dann Types ganz praktisch.
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7

Holzchopf

Meisterpacker

BeitragMo, Okt 19, 2009 18:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Da es (laut Worklog zumindest) ein 2D-Pong wird und deine Fragen "Anfängerfragen" sind, erlaube ich mir, dieses Thema zu verschieben.

~VERSCHOBEN~
Dieser Thread passte nicht in das Forum, in dem er ursprünglich gepostet wurde.

mfG Holzchopf
Erledige alles Schritt um Schritt - erledige alles. - Holzchopf
CC BYBinaryBorn - Yogurt ♫ (31.10.2018)
Im Kopf da knackt's und knistert's sturm - 's ist kein Gedanke, nur ein Wurm

mpmxyz

BeitragMo, Okt 19, 2009 18:49
Antworten mit Zitat
Benutzer-Profile anzeigen
zu Nicdels Nachricht:
Ich konnte aus seinem Worklog entnehmen, dass er "Ballmodelle" nutzt.
Daher ist deine Antwort nicht so falsch gewesen, wie du denkst.
Er nutzt ja den 3D-Teil.

Bewegungsunschärfe kann man mit Hilfe von zusätzlichen, transparenten Objekten oder mit Hilfe von CaptureWorld und dem "Schritt"-Parameter von "RenderWorld" erzeugen.
Bei Letzterem muss mehrmals gerendert werden und die Render-Ergebnisse müssen, um sie in einem letzten RenderWorld in verschiedenen Tranzparenzstufen anzuzeigen, in Texturen zwischengespeichert werden.
Das kann zwar etwas langsamer sein, aber damit kann man einfach allen angezeigten Objekten eine Bewegungsunschärfe geben.

mfG
mpmxyz
Moin Moin!
Projekte: DBPC CodeCruncher Mandelbrot-Renderer

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group