Feuer proggen
Übersicht

![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Sagt mal macht ihr hier eure Privatparty und ignoriert was alle "Erfahrenen" sagen, oder wie sieht das aus?
Ich glaube bisher wurde hier sehr einstimmig davon abgeraten für Partikel Effekte Sprites zu nehmen. Und Zack kommt ein Code der fleißig Sprites erstellt, um ein bisschen Feuer darzustellen. Natürlich ist es lahm. Wenn ihr wissen wollt warum, scrollt ein wenig hoch, x-pressive hat es erklärt. Er sollte es wissen, er hat ne komerzielle (in diesem Kontext positiv gemeint ![]() |
||
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2 |
![]() |
x-pressive |
![]() Antworten mit Zitat ![]() |
---|---|---|
x-pressive hat Folgendes geschrieben: Für Partikel-Effekte Sprites zu benutzen, ist für einen Blitz-Coder ein Armutszeugnis, wie ich finde. Das kann man nicht oft genug sagen.
Und schon im nächsten Post kommt schon wieder einer mit einer Sprite-Methode. Witzig nicht? Noch mal: Sprites für Partikeleffekte zu benutzen, ist absolut unprofessionell und zeugt davon, das man von Performance unter Blitz nicht viel verstanden hat. Ich finde es ziemlich unverantwortlich, diese Techniken immer und immer wieder zu propagieren, da vor allem Newbies damit von Anfang an auf einen falschen Weg gelockt werden. Nur weil es der einfachste Weg ist, heisst es noch lange nicht, das es in einem richtigen Spiel (und nicht nur einem Wochendend-Testprogramm) anwendbar ist. Die Performance, die auch nur eine einzelne Sprite-Fackel mit Partikeln verschleudert, könnte man sinnvollerweise in eine höhere Anzahl von Vertices stecken (also detailliertere Modelle). Wenn Faulheit siegt und man sich konsequent vor Single-Surface-Techniken drücken möchte, sollte man am besten gleich mit einem noch einfacheren DevKit beschäftigen, als Blitz. Am besten irgendein Click & Drag-Tool. Da braucht man kaum noch zu denken und kann seine Hand schön beschäftigen. ![]() |
||
• BLITZ SHOWCASE:
PARTICLE CANDY • PARTICLE CANDY FOR iPHONE • SPRITE CANDY • DON'T GET ANGRY! 2-3 • CLICK CLACK XL |
![]() |
Cat |
![]() Antworten mit Zitat ![]() |
---|---|---|
Den Code hab ich hier nur gepostet weil mich Penthouse Pauper darum
gebeten hat, und wie gesagt, es war mein erster Partikeleffekt und da Sprites zu benutzen finde ich noch akzeptabel, und auch wenn Newbies Sprites benutzen werden die es früher oder später merken dass das keine gute Idee für Partikeleffekte ist. |
||
Intel Core 2 Duo E6300 (2 x 1,86 Ghz)
2 x 1024 MB Arbeitsspeicher NVidia GeForce 8800 GT |
![]() |
Mr.Keks |
![]() Antworten mit Zitat ![]() |
---|---|---|
Cat hat Folgendes geschrieben: PS: Die Partikel werden hier nicht gelöscht, diesen Teil des Codes muss ich
LOL, noch zu retten? also, dass du sprite benutzt, hätte ich dir ja fast noch verziehen, aber DAS! xD irgendwann mal entfernt haben, war jetzt zu faul ihn nochmal hintuschreiben ![]() ![]() |
||
MrKeks.net |
Penthouse Pauper |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Öhm, irgendwie eine heftige Reaktion auf ein bischen Source...
Kann verstehen, dass euch(=Profis) das aufregt, wenn ihr darum bemüht seid, Neueinsteigern den 'richtigen' (performance) Weg zu zeigen. Das finde ich echt lobenswert, besonders für Leute, die damit Geld verdienen. Ich bitte aber um Nachsicht für diejenigen, die Programmieren mehr als Hobby nebenbei haben und nicht den kommerziellen oder professionellen Bereich einschlagen wollen ![]() Trotzdem bin ich euch für euren Hinweis sehr dankbar und würde gerne etwas mehr über SingleSurfaces erfahren. Ich benutz gleich mal die Suche ![]() Bis dahin, der Flo |
||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Das hat noch nicht mal was mit kommerziellem Denken zu tun fürchte ich. Wenn du Sprite Partikel benutzt kannste ziemlich schnell garnichts mehr ausser den Partikeln anzeigen, weil sie allem anderen den Saft abgrasen auf einem "normalen" System. Sprich solange du nicht nur für dich selbst programmierst ist die Verwendung von SingleSurface ein Zwang und keine Option. Natürlich gibts dafür auch schon mehrere Partikelsysteme die man einfach per Include reinpacken kann, man muss min. für Partikel das Rad also nicht nochmal neu erfinden. | ||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
x-pressive |
![]() Antworten mit Zitat ![]() |
---|---|---|
Genau so ist es. Das hat auch nichts mit "Profi oder nicht Profi" zu tun. Wir kämpfen seit langem dafür, das die deutsche Community endlich mal dem Kindergartenniveau entspringt (die englische ist Lichtjahre voraus). Aber das kann nicht funktionieren, wenn die meisten hier einfach nicht hinhören wollen und jede Hilfe aus purer Faulheit und Phlegmatie in den Wind schlagen und sich partout nichts sagen lassen.
Das ist einfach immer wieder ein Schlag ins Gesicht derer, die auf höherem Niveau helfen möchten und nicht nur, wie manche hier, halbgare Antworten liefern, um ihren Postcount zu erhöhen. Wer nicht gewissenhaft nach der jeweils besten Lösung sucht, einen gewissen Lerneffekt zeigt und auch mal flexibel sein kann, muss sich ein anderes Hobby suchen, für den ist Programmieren einfach nicht die richtige Beschäftigung. |
||
• BLITZ SHOWCASE:
PARTICLE CANDY • PARTICLE CANDY FOR iPHONE • SPRITE CANDY • DON'T GET ANGRY! 2-3 • CLICK CLACK XL |
![]() |
rctuner |
![]() Antworten mit Zitat ![]() |
---|---|---|
@cat
hab mir deinen code mal genauer angesehen und ein wenig damit rumgespielt. gefällt mir ganz gut! nur hab ichs leider nicht geschafft die schon unsichtbaren Sprites zu löschen.. Ich habs so probiert: If alpha2# < 0.1 Then FreeEntity obj2 Delete p.partikel EndIf Ganz simple. Nur funktioniert leider nicht.... Was mache ich falsch? |
||
[Y[our Film, Game ]M[akers and more [F]un!
www.Master-Entertainment.de.vu [AMD 6000+ X2 @ 6400+][2GB RAM][NVidia 8800GT 512 MB] |
![]() |
Cat |
![]() Antworten mit Zitat ![]() |
---|---|---|
Nimm statt:
Code: [AUSKLAPPEN] If alpha2# < 0.1 Then
einfach Code: [AUSKLAPPEN] If EntityDistance(cam,p\obj) > Wert Then
dann nur noch löschen und fertig ![]() Lg Cat ~Edit~: Deine Methode hätte ich auch schon des öfteren versucht, weiß aber leider auch nicht wieso das nicht funktioniert ![]() |
||
![]() |
Mr.Keks |
![]() Antworten mit Zitat ![]() |
---|---|---|
If p\alpha# < 0.1 Then
FreeEntity p\obj Delete p.partikel EndIf |
||
MrKeks.net |
![]() |
rctuner |
![]() Antworten mit Zitat ![]() |
---|---|---|
@inarie:
so hab ichs auch schon ausprobiert, erhalte aber die Meldung "Entity does not exist". hab mir grad die ganzen Beiträge durchgelesen und erst jetzt erfahren, dass sprites nicht dafür geeignet sind... Desshalb solle man das mit Single-Surface regeln.. Kennt jemand ein gutes Beispiel oder eine Single-Surface Particle-Engine? Particle Candy kenn ich auch, suche aber was kostenloses. Die genaue Bedeutung verstehe ich auch noch nicht ganz: Sprites sind zb. Bilder im Png format mit alpha informationen??? Die man so (für eine particle Engine) verwendet wie cat das gemacht hat. Und Single-Surface sind einfache kleine Models?? Auf die man keine Texturen zieht und dann einfach ganz viele von ihnen erstellt für zb Rauch??? Weiterhin versteh ich auch nicht (wenn diese Sprite Lösung so schlecht ist) warum die particle engine´s in den blitz3d samples diese Methode benutzen.. Kann mich jemand mal Aufklären?^^ THX |
||
[Y[our Film, Game ]M[akers and more [F]un!
www.Master-Entertainment.de.vu [AMD 6000+ X2 @ 6400+][2GB RAM][NVidia 8800GT 512 MB] |
![]() |
Mr.Keks |
![]() Antworten mit Zitat ![]() |
---|---|---|
nope, du hast das wohl ziemlich falsch verstanden mit sprites und singlesurface.
also, 1. sprites kann man für partikelengines benutzen. das ist kein problem, solange man nur etwas kleineres macht und nur ein paar hand voll partikel hat. ich denke, anfänger können ruhigen gewissens mit sprites arbeiten. es ist nur so, dass man mehr kontrolle und geschwindigkeit erreicht, wenn man nicht auf sprites zurückgreift, sondern.. 2. mit singlesurface arbeitet. selbstverständlich benutzt man da auch texturen. der unterschied ist, dass man selbst mit surfacebefehlen die rechtecke erstellt, die die partikel darstellen. wenn man dies tut, kann man für alle partikel ein surface benutzen. das geht mit sprites nicht, weil da jeder partikel sein eigenes surface hat. viele surfaces darzustellen dauert lange und drückt somit die fps. und wenn man fünfhundert partikel hat, ist es einfach ein massiver unterschied, ob man jetzt fünfhundert surfaces oder nur eines hat. |
||
MrKeks.net |
![]() |
rctuner |
![]() Antworten mit Zitat ![]() |
---|---|---|
thx habs jetzt einigermaßen verstanden...
da ich nicht viel partikel brauche und auch noch ein anfänger bin, werde ich erstmal die sprite methode benutzen.. hat noch jemand ne idee wie man die aunsichtbaren sprites von cat´s code löschen kann? *EDIT* HABS JETZT ENDLICH HINBEKOMMEN |
||
[Y[our Film, Game ]M[akers and more [F]un!
www.Master-Entertainment.de.vu [AMD 6000+ X2 @ 6400+][2GB RAM][NVidia 8800GT 512 MB] |
![]() |
Mr.Keks |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] For p.partikel=Each partikel
funzt doch perfekt..
MoveEntity p\obj,x+.01,y+.03,0 p\alpha=p\alpha-.007 EntityAlpha p\obj,p\alpha RotateSprite p\obj,angle# If p\alpha < 0 FreeEntity p\obj Delete p EndIf Next For s.smoke=Each smoke MoveEntity s\obj2,x-.006,y+.07,0 s\alpha2#=s\alpha2#-.02 EntityAlpha s\obj2,s\alpha2# RotateSprite s\obj2,angle2 If s\alpha2 < 0 FreeEntity s\obj2 Delete s EndIf Next |
||
MrKeks.net |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group