2D Animationsproblem
Übersicht

Liquid BladeBetreff: 2D Animationsproblem |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi ich bin Liquid Blade und das erste mal in einem Forum ![]() Ich hab hier ein Blitz 2D Problem das mich langsam Mürbe macht. Ich bin gerade dabei ein kleines Retro-Demo zu schreiben (64er, Amiga), mit verschiedenen Effekten. Im oberen Drittel hab ich ein Logo mit Sinus-Effekt, dann ein Starfield mit Planeten, Scrolls etc. Das klappt alles ganz gut ![]() ![]() Kann mir jemand helfen dieses Problem zu lösen ?!?!?!?!?! Vielen Dank schon mal, euer Liquid Blade >>>LBE<<< ![]() |
||
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Herzlich Willkommen im BlitzForum
zum Problem: ist vielleicht nur ein Faselfehler. Könntest du mal bitte ein bisschen Code preisgeben, insbesondere die Funktion zum zeichnen der Explosion wäre hilfreich. MfG |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich würde dir empfehlen mit Millisecs() deinen eigenen Timer zu bauen. der "mitgelieferte" Timer Befehl stoppt nämlich das Programm bis die Timerzeit erreicht ist und du verschwendest wertvolle Rechenzeit.
Was das einzeichnen der Explosionen angeht scheint hier der Rechner echt an seine Kapazität gekommen zu sein, hier hilft nur: - Code optimieren (ein paar gute Tipps auf Blitzbase.de) - wenn dein Millisecs()-Timer unter die gewünschte Rate fällt weniger auffällige Effekte aussetzen lassen ODER - von vorneherein die Effekte nur abwechselnd updaten, da das Berechnen von hunderten( oder gar Tausenden) neuen Positionen schon Kapazität frisst, dass Bilder einzeichnen jedoch sehr flott ist. Hoffe es hilft, und Welcome Aboard. |
||
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 |
![]() |
DivineDominion |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code wäre gut, ja. Timer mit Millisecs() - top ![]() aber für mich klingt es eher so, als hättest du LoadanimImage noch nicht benutzt (Spart das speichern in ein array) und dass du die Bilder in der Schleife doerder Explosion erst lädst... Nur so eine Vermutung. Würde den Speedeinbruch erklären. |
||
christian.tietze@gmail.com - https://christiantietze.de
macOS |
Liquid Blade |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wow ihr seid ja schnell ..... !!!!!!!!!!!!!!!!!! ![]() Hier der gewünschte Code, hab ihn einfach mal rauskopiert (unkommentiert), wenn es nötig ist schick ich euch auch gern die Funktionen !!!!!!!!!Code: [AUSKLAPPEN] Graphics 800,600,32 ,2
SetBuffer BackBuffer() FrameTimer = CreateTimer (60) ;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ; --- Ladefortschritt --- ;Global intPercent = 0 LoadingProgress (0) ;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ; --- Rasterbars --- Global UpXRaster =0 Global UpXRaster2 =0 Global DownXRaster =0 Global DownXRaster2 =0 Dim UpRasterBars (1520) Dim DownRasterBars (1520) Global image = CreateImage (1520,1) Global image2 Global RasterY1 = 300 Global RasterY2 = 302 CreateRasterlines() UpXRaster =0 UpXRaster2 =0 DownXRaster =0 DownXRaster2 =0 LoadingProgress (16) ;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ; --- Ladearbeit für Hauptdemo --- AppTitle = "Liquid Blade" Global Logo = LoadImage("LBGel.bmp") Global Net = LoadImage("Net6.bmp") Global Flames = LoadAnimImage ("FlameStripFinal.bmp",17,33,0,16) Global Edge = LoadImage("RahmenFinal.bmp") Global Planet1 = LoadImage ("P1.bmp") Global Planet2 = LoadImage ("P2.bmp") Global w = GraphicsWidth()/2-(ImageWidth(Logo) / 2) Global Width = GraphicsWidth() Global Height = GraphicsHeight() LoadingProgress(48) ;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Global startangle = 0 Global StartPointNet= 0 Global raZaehler = 60 Global ruZaehler = 0 Global alZaehler = 30 Global inlZaehler = 0 Global inrZaehler = Width Global expZaehler = 0 Global XPosition = 0 Global planetZaehler = 0 Global flameZaehler = 0 Global StarCount = 500 LoadingProgress(64) ;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Dim sinetable(59) For angle = 0 To 59 sinetable(angle) = 8 * Sin(angle * 6.101694915254237288135593220339) Next Dim NetTable(60) For NetPoint = 0 To 60 NetTable(NetPoint) = NetPoint+1 Next LoadingProgress(80) ;++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Dim Explo(59) For ExCounter = 1 To 60 If (ExCounter <10) Then ; Counter fängt bei 1 an, Array bei 0 !!!!!! Explo(ExCounter-1) = LoadImage("0" + ExCounter + ".jpg") Else Explo(ExCounter-1) = LoadImage(ExCounter + ".jpg") End If Next LoadingProgress(100) ;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Dim aStar(StarCount,4) ;+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ;--- Hauptdemo --- FrameTimer = CreateTimer (60) bExplode=True initStars() While Not KeyHit(1) WaitTimer (FrameTimer) Cls reinitStars() drawSterne() If inlZaehler <= (Width/2)-12 Then IncomingPath () expZaehler = expZaehler + 2 End If If (inlZaehler > (Width/2)-12) And (bExplode=True) Then bildnummer=bildnummer+1 If bildnummer > 59 Then expZaehler=0 bildnummer=0 bExplode=False Else bolOpenLogo2 = True Explode (bildnummer) End If End If LogoWave () NetRunter () NetRauf () AnimLines () Rahmen() DrawFlames() Flip (0) Wend ; FreeTimer FrameTimer FreeImage Logo FreeImage Net5 FreeImage Incoming ;---------------------------------------------------------------------------------------------------- Function Explode(bildnummer) DrawImage Explo(bildnummer),80,50 End Function ;---------------------------------------------------------------------------------------------------- |
||
xperience2003 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
variablennamen typisch anwendungsentwickler ![]() gruß lbe |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group