![]() |
[Andorra 2D] Particlesystem zur Laufzeit verändern
Hallo zusammen!
Möchte creationangle meines default particles ändern. So hab ich es erstellt:
Code:
Ich habe versucht über AdParticlesystem.defaultparticle auf creationangle zuzugreifen, was allerdings nicht geht!?
AdParticleSystem := TAdParticleSystem.Create(AdDraw);
AdParticleSystem.LoadFromFile('particle.axp'); AdParticleSystem.Texture := AdImageList.Find('particle').Texture; Folgendes habe ich dann versucht:
Code:
Auch folgendes funktioniert nicht:
particle := TAdBillboardParticle.Create(AdParticleSystem);
particle := AdParticleSystem.defaultparticle as TAdBillboardParticle; particle.CreationAngle := trunc(raumschiff.angle); AdParticlesystem.DefaultParticle := particle;
Code:
Dies ändert zwar den Winkel des Particles (Zumindest sieht es so aus), allerdings werden alle anderen Attribute die ich unter LoadFromFile('particle.axp'); benutze, nicht mehr angezeigt! Die Particle sind nun nur noch weiss!
particle := TAdBillboardParticle.Create(AdParticleSystem);
particle := AdParticleSystem.defaultparticle as TAdBillboardParticle; AdParticleSystem.LoadFromFile('particle.axp'); particle.CreationAngle := trunc(raumschiff.angle); AdParticlesystem.DefaultParticle := particle; Was muss ich also tun? MfG |
AW: [Andorra 2D] Particlesystem zur Laufzeit verändern
Eigentlich solltest du einfach über
Delphi-Quellcode:
auf die Eigenschaft zugreifen können. Durch das setzen von DefaultParticle werden alle dessen Eigenschatfen überschrieben.
TAdParticleSystem.DefaultParticle.CreationAngle
|
AW: [Andorra 2D] Particlesystem zur Laufzeit verändern
Liste der Anhänge anzeigen (Anzahl: 1)
Das habe ich versucht. Klappt aber auch nicht, es sei denn ich verstehe hier irgendetwas grundlegend falsch =/
Siehe das Bild im Anhang. Ich kann hier nicht auf creationangle zugreifen. (Ich möchte das Attribut natürlich nicht direkt nach dem ich das ParticleSystem created habe verändern. Das ganze geschieht nacher in einer anderen Unit, aber vom Prinzip her genau so) MfG EDIT: Selbst das hier klappt nicht:
Delphi-Quellcode:
EDIT2: SO geht es ebenfalls nicht:AdParticleSystem := TAdParticleSystem.Create( AdDraw ); AdParticleSystem.DefaultParticle.LoadFromFile('bilder/particles/raumschiffantrieb.axp'); AdParticleSystem.Texture := AdImageList.Find( 'particle' ).Texture;
Delphi-Quellcode:
Ich kann zwar nun auf die Attribute zugreifen und diese verändern, allerdings wird mein Particle was im ParticleEditor erstellt wurde und über LoadFromFile geladen wurde nicht mehr angezeigt. Es sind jetzt nur weisse Particle die da rumfliegen?!!!
AdParticleSystem := TAdParticleSystem.Create( AdDraw );
AdParticleSystem.Texture := AdImageList.Find( 'particle' ).Texture; AdDefaultParticle := TAdBillboardParticle.Create( AdParticleSystem ); AdParticleSystem.DefaultParticle := AdDefaultParticle; AdDefaultParticle.LoadFromFile('bilder/particles/explosion.axp'); Könnte mir das bitte mal jemand erklären? Ich möchte eifnach nur über LoadFromFile mein defaultParticle laden, und für dieses später/zur Laufzeit das Attribut Creationangle verändern! Wieso ist das so schwierig?^^ |
AW: [Andorra 2D] Particlesystem zur Laufzeit verändern
Du musst das natürlich noch entsprechend nach TAdBillboardParticle (oder was auch immer dein Partikeltype ist) casten - das hatte ich oben vergessen:
Delphi-Quellcode:
TAdBillboardParticle(AdParticleSystem.DefaultParticle).CreationAngle
|
AW: [Andorra 2D] Particlesystem zur Laufzeit verändern
Danke nochmal! ;)
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:50 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz