Regeneffekt in Echtzeit?
Übersicht

FruscianteBetreff: Regeneffekt in Echtzeit? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi, ihr kennt doch sicherlich den Regeneffekt aus der Hilfe bei dem Befehl Dim![]() |
||
![]() |
Cardonic |
![]() Antworten mit Zitat ![]() |
---|---|---|
Vielleicht mit einer Grafik z.B. 100x100 Pixel mit den Regentropfen und dann mit TileImage![]() |
||
If you should go skating on the thin ice of modern life, dragging behind you the silent reproach of a million tear-stained eyes, don't be surprised when a crack in the ice appears under your feet. |
Frusciante |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hm, wie soll der Regen sich dann bewegen? | ||
![]() |
Cardonic |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zum Beispiel mit 2 Variabeln RegenX und RegenY.
Und dann in der Hauptschleiffe irgendwo Code: [AUSKLAPPEN] RegenY = (RegenY + Regenfallgeschwindigkeit) Mod BildHöhe
RegenX = (RegenX + Windgeschwindigkeit) Mod BildBreite TileImage RegenBild, RegenX, RegenY |
||
If you should go skating on the thin ice of modern life, dragging behind you the silent reproach of a million tear-stained eyes, don't be surprised when a crack in the ice appears under your feet. |
![]() |
Shogo |
![]() Antworten mit Zitat ![]() |
---|---|---|
Koenntest dir einen Regentropfen malen.
Die x und y Koordinaten der einzelnen Tropfen speicherst du in einem Type feld. Vasriablen waeren etwas ungeeignet weil du ja nur 1 Koordinat speichern kannst. |
||
Frusciante |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
@Shogo
Die Regentropfen sollen sich ja aber auch bewegen. D.h. ich müsste bei 100 Regentropfen schon wieder 100 schleifendurchläufe machen um jeden Tropfen zu bewegen. @Cardonic Sähe das dann nicht komisch aus? Ich meine dann würden sich doch alle Regentropfen mit dem immer gleichen Abstand genau gleich bewegen, oder sehe ich das falsch? |
||
![]() |
Shogo |
![]() Antworten mit Zitat ![]() |
---|---|---|
Stimmt schon. Aber ich glaube nicht das, dass so viele Resourcen fressen wird ausser du hast noch nen Computer mit 233Mhz.
Habe sowas mal fuer ein BCC Spiel als netten Effekt eingebaut. siehe hier |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Tja, du musst dich für einen Kompromiss entscheiden. mach 2 oder 3 verschiedene Tropfenbilder mit mehreren Tropfen und variiere Fallgeschwindigkeit und Winkel für jedes Bild ein klein wenig - nicht mehr als ein paar Prozent. Das sollte halbwegs vernünftig aussehen. | ||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
![]() |
orpheus_2003Betreff: Hmm |
![]() Antworten mit Zitat ![]() |
---|---|---|
Schau dir mal meinen Schnee, Water Effekt im Game an wenn du Lust hast.
Level 3,4,5 Das sieht dann schon echt aus. Hab das ganze mit Sprites gelöst die sich untersch. schnell nach unten/oben bewegen. Hardwaremässig ist da nichts zu spüren..... ![]() |
||
GazerStar - the beginning
http://gazerstar.lexigame.de/ Wizard (Worktitel) http://wizard.lexigame.de |
![]() |
TimBo |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi,
wenn man Bilder malt, geht das schneller als wenn man mit Plot oder Line etc. Arbeitet. Vll. könntest du ein Bild, mit 1x1 pix machen und das dann halt Zeichnen. wäre nur so eine Idee muss selbst aber erstmal probieren wieviel schneller das ist. Viele Grüße TimBo Edit: Habe gerade ein Programm geschrieben, und bei 100 Bildern habe ich folgendes Ergebnis: mit Plot 396 FPS mit DrawImage 324 FPS writepixelfast wird noch geschrieben *grins Code: [AUSKLAPPEN] x_af = Input("Geben sie die Vertikal max. Auflösung ein! ") y_af = Input("Geben sie die Horizontale max. Auflösung ein! ") anzahl = Input("Geben sie die Anzahl der Patikel ein! ") fenster = Input("Fenster = 2 ; Vollbild = 1 ") Graphics x_af,y_af,32,fenster Type regen Field x,y End Type Global regenimage includeregen() For i=1 To anzahl re.regen=New regen re\x=Rand(0,1280)-1 re\y=Rand(0,1024)-1 Next r=255 g=255 b=255 a=255 Global rgb=a*$1000000 + r*$10000 + g*$100 + b rgb=a*$1000000 + r*$10000 + g*$100 + b Repeat If KeyHit(28) Then mode=mode+1 If mode>2 Then mode=0 If mode=1 Then LockBuffer BackBuffer() For re.regen = Each regen Select mode Case 0 DrawImage regenimage,re\x,re\y Case 1 WritePixelFast re\x,re\y,rgb,BackBuffer() Case 2 Plot re\x,re\y End Select Next If mode=0 Then Text 0,100,"DrawImage" If mode=1 Then UnlockBuffer BackBuffer():Text 0,100,"writepixelfast" If mode=2 Then Text 0,100, "plot" Color 255,0,0 ms=MilliSecs():Text 0,60,fps+"FPS" If ms>mt Then mt=ms+502:fps=frame1:frame1=0 Else frame1=frame1+2 Color 255,255,255 Flip(0):Cls Until KeyHit(1) Function includeregen() regenimage = CreateImage(1,1) SetBuffer ImageBuffer(regenimage) Plot 0,0 SetBuffer BackBuffer() End Function |
||
mfg Tim Borowski // CPU: Ryzen 2700x GPU: Nvidia RTX 2070 OC (Gigabyte) Ram: 16GB DDR4 @ 3000MHz OS: Windows 10
Stolzer Gewinner des BCC 25 & BCC 31 hat einen ersten Preis in der 1. Runde beim BWInf 2010/2011 & 2011/12 mit BlitzBasic erreicht. |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group