Autor |
Beitrag |
F34r0fTh3D4rk
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: Sa 01.07.06 14:54
2D Engine
Fear2D (Namensähnlichkeiten zu kommerziellen Spielen sind rein zufällig, der Name Fear stammt von meinem Nickname "F34r0fTh3D4rk") ist eine kleine 2D Engine die ich für ein kommendes Projekt
geschrieben habe. Sie ist noch im Anfangsstadium, einige Units dienen momentan
nur als Platzhalter.
Die grafische Ausgabe wird mittels OpenGL realisiert, dessen Initialsierung
von der Engine übernommen wird.
Das gleiche gilt für die BASS.DLL, welche ich für die Soundausgabe verwende.
Die Bass.dll sowie die ebenfalls benötigte bass.pas sind hier zu finden:
www.un4seen.com/
Man muss sich nicht weiter mit der Bass.dll auseinandersetzen, die bedienung über die
Engine geht leicht von der Hand.
Ewähnenswert ist jedoch, dass man für die kommerzielle Nutzung der Bass.dll eine Lizenz erwerben muss, deshalb habe ich die DLL auch nicht in mein Projekt direkt integriert, da die BASS.dll nicht OpenSource ist.
Der Download Der Engine befindet sich am Anhand, dort sind auch diese beiden Dateien unter dem Namen (externals.zip) zu finden, die dglOpenGL.pas und die glBitmap.pas
wiki.delphigl.com/index.php/DGLOpenGL.pas
www.dev-center.de/in...er&file=glbitmap
Ein Template liegt dem Download bei, Demos gibt es leider noch nicht, aber ich werde hier mal einige Beispiele aufführen (viele Sachen lassen sich auch durch Kommentarlesen herausfinden ^^):
Delphi-Quelltext
kann als Teil des Formulars oder (wie in meinem Template) als globale Variable deklariert werden.
Das Formular muss dann noch über ein:
Delphi-Quelltext 1:
| procedure ApplicationEventsIdle(Sender: TObject; var Done: Boolean); |
erweitert werden, das OnCreate sieht dann so aus:
Delphi-Quelltext 1: 2: 3:
| Engine := TEngine.Create; Engine.Init(self); Application.OnIdle := ApplicationEventsIdle; |
Im Destroy ganz einfach:
Delphi-Quelltext
soweit zur initialisierung, jetzt fehlt noch die OnIdle Prozedur:
Delphi-Quelltext 1: 2: 3: 4: 5: 6:
| procedure TMainForm.ApplicationEventsIdle(Sender: TObject; var Done: Boolean); begin Engine.DoBegin; Engine.DoEnd; Done := false; end; |
Das Wäre vorerst alles, eigentlich sollte jetzt schon ein schwarzes Formular zu sehen sein.
Per Engine.FPS lassen sich die Frames per Second abfragen und per Engine.Timestep die Zeitdifferenz zum letzten Frame (delta t)
man siehe auch: wiki.delphigl.com/in...p/Timebased_Movement
Ein einfaches Objekt kann so erstellt werden:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:
| var Obj: TSimpleObject;
begin Obj := TSimpleObject.Create; with Obj do begin position.x := clientwidth / 2; position.y := clientheight / 2; z := 0; size.x := 50; size.y := 50; texture := 'mytex'; usealpha := true; alpha := 255 div 2; end; end; |
nunja, im quelltext sieht man eine textur: 'mytex' diese muss vorher jedoch
erst einmal geladen werden (kann auch danach geschehen, hauptsache vor dem zeichnen)
Dies geht mit:
Delphi-Quelltext 1:
| Engine.TextureManager.AddTexture |
oder
Delphi-Quelltext 1:
| Engine.TextureManager.AddTexturesInDir |
Beim ersten wird der DateiName, sowie der Name der Textur erwartet, über den später auf die Textur zugriffen wird (in unserem Beispiel 'mytex').
Die zweite Methode erlaubt das hinzufügen sämtlicher Texturen eines Ordners, wobei der Name dann immer dem Dateinamen entspricht. Heißt die Datei zB 'grass.bmp' heißt die Textur 'grass'.
Gezeichnet wird das ganze zwischen Engine.DoBegin und Engine.DoEnd folgendermaßen:
Delphi-Quelltext 1:
| Obj.Draw(Engine, true); |
Der 2. Parameter gibt an, ob die Textur verwendet werden soll, ansonsten wird nur die Farbe verwendet. Die Farbe kann außerdem in Kombination mit der Textur und somit vermischt werden.
Möchte man ein Objekt Transparent zeichnen, muss man usealpha auf true setzen und alpha einen wert zwischen 0 und 255 verpassen.
alphatest lässt den alphakanal eines bildes (zB tga) transparent werden.
Wer animierte Objekte braucht, sollte auf die Klassen TAnimation und TAnimObj zurückgreifen.
Per Angle lässt sich ein Winkel definieren, sodass das Bild gedreht ausgegeben wird.
In TAnimation gibt man eine Textur und die Anzahl der Bilder auf der Horzontalen / Vertikalen Achse an, sowie mit Duration, die Dauer der Animation in Millisekunden.
TAnimObj ist dann das eigentliche Objekt was gezeichnet wird, dort kann man Animationen hinzufügen und per with GetAnimation(NAME) do darauf zugreifen.
mit Play lässt sich dann eine Animation abspielen.
Ich wollte eigentlich nicht zu weit ausschweifen ^^ aber die Klasse TTile ist auch noch erwähnenswert. Mit ihr kann man auf ein Tileset (TTileSet) zugreifen und somit mehrere Texturen in einer Textur verwalten. Die Textur wird im TileSet angegeben, dort ebenfalls die Anzahl der Waagerechten und Senkrechten Texturen. Dann muss noch beim Zeichnen das gewünschte TileSet angegeben werden und schon ist das Tile auf dem Schirm
Der BugTracker loggt automatisch (nicht)geladene Sounds und Texturen, wo wir beim Thema Sound wären:
Delphi-Quelltext 1:
| Engine.SoundManager.AddSound |
sowie
Delphi-Quelltext 1:
| Engine.SoundManager.AddSoundsInDir |
arbeiten genauso, wie ihre Brüder beim TextureManager.
Mit PlaySound wird ein Sound gespielt.
Loop gibt an, ob ein Sound wiederholt werden soll und wait, ob gewartet werden soll,
bis der sound fertig gespielt hat (bei potentiellen Mehrfachaufrufen ganz Sinnvoll)
PauseSound pausiert einen Sound und StopSound.
Falls noch Fragen sein sollten, einfach hier ins Forum, per pm, oder per eMail. Ich werde demnächst einige Demos schreiben und würde mich auf Feedback freuen. Je mehr Feedback, desto mehr Features und mehr Demos
Ach ja, die benötigten uses kann man dem Template entnehmen
Text anzeigen geht leider noch nicht, das musste ich wegen einige Fehler rausnehmen.
Entwickeln kann man pixelgenau unter jeder Auflösung, das Bild wird dann automatisch für andere Auflösungen gestreckt und Objekte müssen im Destroy freigegeben werden.
So das wars
AKTUELLSTE VERSION HIER:
[url] www.martoks-place.de...opengl/fear2d/[/url]
(Version die von Martok noch eine Textunit und andere Feinheiten spendiert bekommen hat.)
mfg
Zuletzt bearbeitet von F34r0fTh3D4rk am So 03.01.10 20:21, insgesamt 11-mal bearbeitet
|
|
LLCoolDave
Beiträge: 212
Win XP
Delphi 2005
|
Verfasst: Sa 01.07.06 15:59
Klingt sehr interessant, gäbe es jedoch noch die Möglichkeit die Engine auf Framebasis zu erweitern? D.h. eine Target Framerate, die sogut wie möglich eingehalten werden sollte, die Ergänzung der TAnimation Klasse (oder entsprechend eine alternative, ist ja egal) die Animationen nicht nach Zeit sondern nach Frames durcharbeitet, sowie wenn möglich eine Interne Framecounter klasse die die frames mitzählt (mit start stop, und auslese funktion).
Ich komme nämlich zum einen eher aus der Konsolenwelt, wo zum Großteil framebasierende Bewegung angesagt ist, und ausserdem hat timebased bei Spielen mit Highscores auch des öfteren seltsame Effekte, da sich das Spiel bei niedriger Framerate doch des öfteren anders verhält als bei hoher Framerate.
Ansonsten finde ich die Idee klasse =)
|
|
F34r0fTh3D4rk
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: Sa 01.07.06 16:32
naja du kannst das ganze natürlich auch in einen timer packen, dann muss du vielleicht die duration anders wählen, da der timestep (also delta t) dann statisch ist, aber im grunde sollte das trotzdem funktionieren. (ich glaube auch, dass die duration nicht einmal verändert werden muss, das sollte afaik auch so gehen). einfach mal in einem timer mit interval 33 testen, das wären dann statische 30fps.
EDIT: Man muss Duration durch das Timer Interval teilen, dann funktioniert's
es gibt bei der animation ohnehin am ende noch so ein flackern, das muss noch behoben werden.
Das Problem ist, dass auch dort Schwankungen auftreten können und du somit wieder auf timestep zurückgreifen musst, was du dann aber auch lieber gleich machen kannst, aber dann mit der vollen anzahl an fps.
|
|
GTA-Place
Beiträge: 5248
Erhaltene Danke: 2
WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
|
Verfasst: So 02.07.06 09:08
*verwirrt* Es gibt genau eine *.pas in dem Ordner Template und die ist etwas leer. Wo sind die ganzen Units?
_________________ "Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)
|
|
F34r0fTh3D4rk
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: So 02.07.06 10:17
sorry, kA woher es kam, aber jetzt stimmt es
|
|
F34r0fTh3D4rk
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: So 02.07.06 15:15
Ich habe im ersten Beitrag mal eine kleine Demo angehängt, der Code ist nicht der beste, aber er zeigt einige Möglichkeiten:
* Animation + Transparenz
* Roter + Blauer Schläger, obwohl nur eine Textur vorhanden ist (färben)
* Sound
Man kann im OnCreate clientwidth und clientheight benutzen, während der Laufzeit sollte man jedoch auf Engine.width und Engine.height zurückgreifen, da es sonst bei anderen Auflösungen zu Problemen kommt.
Weiterhin habe ich einen Bug gefunden, und zwar werden Animationen bei größerer Auflösung langsamer abgespielt, ich hoffe, das bald fixen zu können, die genaue Ursache ist mir noch nicht bekannt (falls sie jemand kennt....), die betroffene Unit ist UObjects.pas
mfg
und hier noch einmal pong im binärformat:
(Man sollte einfach mal nen Ball durchlassen, dann sieht man eine Explosion am Kollisionspunkt - das spiel ist auch nicht ganz bugfrei, ist halt nur ne demo die ich eben geschrieben habe, das ganze wird noch erweitert, vielleicht ein hintergrund aus tiles oder so, mal schauen, erstmal bugs fixxen )
//EDIT: Bug gefixt, neue version der engine oben, demnächst wird's von der demo auch ne neue version (bin + source) geben, mit ohne bugs und mehr features
|
|
JayEff
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Di 04.07.06 17:35
Super sache, ich benutze die Engine, um mein "Fangen" spielchen zu überarbeiten ^^ Funktioniert schon fein, nur, kann ich einem TSimpleObject eine transparenz bekommen? Also, in einem Spiel treffen sich Bälle, deren Texturecken schwarz sind und sich überlappen. Dadurch sieht man in einem der Bälle plötzlich ne schwarze ecke und das is .. nicht fein.
Ausserdem, wie könnte ich wohl am besten eine Textausgabe regeln? Mit TSimpleObjects für jeden Buchstaben? -.-
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
F34r0fTh3D4rk
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: Di 04.07.06 17:43
Textausgabe hat noch net so recht gefunzt, alphatest machst du so:
Delphi-Quelltext 1: 2:
| SO.alphatest := true; SO.alphatolerance := 0.8; |
dabei muss das bild einen alpha kanal haben (tga oder so)
farbalpha gibts noch nicht, dann müsste ich für die texturen eine oop variante benutzen, wird es vielleicht in der übernächsten version geben
Zuletzt bearbeitet von F34r0fTh3D4rk am Do 01.05.08 19:46, insgesamt 1-mal bearbeitet
|
|
JayEff
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Di 04.07.06 17:52
Danke werds probieren. Und danke auf, für diese tolle engine, die so verdammt leicht zu bedienen ist! (wow) Ich bleib up-to-date und hoffe, du schaffst das mit der Textausgabe, denn irgentwie muss ich bissl was ausgeben... Kleine frage hätt ich noch: ..Mir liegts auf der zunge.. wtf.. ach ja. warum müssen sämtliche Texturen im Power-of-two Format sein und warum hab ichs nich hinbekommen, kleinere texturen als 256x256 zu basteln? Wie kann ich dann rechteckige objekte darstellen, ohne dass deren textur verzerrt oder so ist? Bsp: will ein Menü mit Buttons machen, die sind rechteckig. Liegen als jpg vor. Auf den buttons steht dann eine Beschriftung. Die wird aber dann wohl verzerrt, weil die jpg ja in einem quadratischen Format vorliegen muss...?
Edit: Ab einer alphatolerance von 0.998 wird das Objekt entweder komplett schwarz oder unsichtbar. Alles (inklusive werte unter 0) haben keinerlei einfluss. 8(
Edit2: Ich depp ^^ Ok habs kapiert. wenn ich transparenz will: TGA benutzen -.-
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
F34r0fTh3D4rk
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: Di 18.07.06 14:51
So, neue Version
Was sich geändert hat:
Delphi-Quelltext 1:
| Engine := TEngine.Create(false); |
Der Paramter gibt an, ob das Programm im DEV Modus gestartet werden soll oder nicht, also ob eine Log Datei geführt wird oder nicht. (später werden dadurch wohl noch fehlermeldungen etc verwaltet werden)
Animationen sollten jetzt Fehlerfrei funktionieren und aussehen (bitte testen ich hab nur einen Rechner)
ja und mit Engine.DoFullscreen kann man in den Vollbildmodus wechseln,
vielleicht kann mir jemand sagen, warum er die beiden befehle borderstyle und das formstyle net mag, weil dann zeichnet er nichts mehr, ansonsten muss diese prozedur genommen werden:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:
| procedure TEngine.DoFullscreen; begin with Form do begin top := 0; left := 0; clientwidth := screen.width; clientheight := screen.height; Windowstate := wsMaximized; end; end; |
dann ist das fenster aber nicht stayontop und der rahmen ist auch noch da
Besonderen Dank an GTA-Place, er hat die units besser Strukturiert und mir dadurch erheblich Arbeit gespart.
Eine neue Version ist schon in Arbeit, dort wurden ein paar Vererbungen getätigt, um alles was doppelt war auszurotten. an ner particle engine, sowie einem selektionsmodus hab ich mich schon versucht, aber das hat beides bisher noch nicht ganz glatt funktioniert, aber das wird noch
Ach ja, eine StateMachine (fertig) wird auch ein bestandteil der nächsten version sein (lässt einen zwischen beliebigen modi unterscheiden, zB menu, ingame, credits, highscore)
ebenfalls wird es möglich sein, auf einfache weise, texturen zu kacheln
beim nächsten release werde ich hoffentlich auch gleich ein ganzes paket an beispielen hinzupacken können, da das release erst erfolgt wenn alles stabil läuft und text auch funktioniert.
die vollbild funktion wird im nächsten release auch funzen
mfg
|
|
F34r0fTh3D4rk
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: Mo 31.07.06 21:02
ok das erste mal, dass die partikel engine so halbwegs korrekt läuft, bzw das erste mal sieht man was ^^ da kann ich auch gleich als kleines preview mal was posten:
exec-dev.de/explo.zip
|
|
oern
Beiträge: 142
Linux, Win XP
D7
|
Verfasst: Mo 31.07.06 22:27
Sieht nett aus nur find ich 15 FPS auf meiner 2 GHz Maschine etwas gering...
_________________ Ich hab eine Signatur
|
|
F34r0fTh3D4rk
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: Di 01.08.06 09:43
ja es werden zu viele partikel, weil die dinger einfach net verrecken, aber ich habe das bereits gefixt, und bald kommt (wohl heute noch) eine richtige demo raus, bei der man mit dem partikel system ein wenig rumspielen darf
|
|
F34r0fTh3D4rk
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: Di 01.08.06 11:30
wie versprochen, ist die Demo fertig und lässt sich hier herunterladen:
exec-dev.de/ParticleEngine_DEMO.zip
einen screenshot gibt es auf der hauptseite zu sehen:
www.exec-dev.de/
|
|
oern
Beiträge: 142
Linux, Win XP
D7
|
Verfasst: Di 01.08.06 19:55
Jetzt läuft es vernüftig (30 FPS) Screenshots sehen super aus, und auch meine partikel gefallen mir
_________________ Ich hab eine Signatur
|
|
F34r0fTh3D4rk
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: Di 01.08.06 21:00
screenshots kann man btw mit f5 auch selbst machen, nur muss das zeichenfenster den fokus haben. mit anderen texturen lassen sich noch ganz andere effekte erstellen, das ist ja nur ein ganz kleiner ausschnitt
|
|
F34r0fTh3D4rk
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: Sa 23.09.06 14:40
da die engine sich schon lange in diesem stadium (leider immernoch ohne textanzeige) befindet und ich nicht die Zeit finde, demos und eine Dokumentation zu schreiben, hänge ich hier mal die aktuellste version an. hoffe mit der stimmt soweit alles.
größte neuerung ist wohl die partikel engine, hier eine Demo:
exec-dev.de/ParticleEngine_DEMO.zip
mit ihr lassen sich ansehnliche effekte erzeugen:
Screenshot und Vollbildfunktion sind jetzt auch Fehlerfrei integriert.
hier noch andere neuerungen die ich vor einiger zeit mal im ee-lemmings forum gepostet habe:
F34r0fTh3D4rk hat folgendes geschrieben: |
...
Das Koordinatensystem beginnt wieder oben links ^^
sinnvoll wäre das einbinden folgender units:
Delphi-Quelltext 1: 2: 3: 4: 5:
| F2D_Core, F2D_Objects, F2D_Vectors, F2D_ParticleEngine, F2D_Text; |
Delphi-Quelltext 1: 2:
| var Engine: TEngine; |
Erstellen / Initialsieren:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| procedure TMainForm.FormCreate(Sender: TObject); begin Engine := TEngine.Create(false); with Engine do begin Init(self); TextureManager.AddTexture(extractfilepath(paramstr(0)) + 'tex\Fire.bmp', 'fire'); SoundManager.AddSound(extractfilepath(paramstr(0)) + 'sound\music.mp3', 'music'); end; |
//Zeichnen Etc
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| procedure TMainForm.ApplicationEventsIdle(Sender: TObject; var Done: Boolean); begin Engine.DoBegin;
obj.Draw(true); Emitter.Render;
MainForm.Caption := 'FPS: ' + inttostr(round(Engine.FPS)) + ' | Particle Count: ' + inttostr(Emitter.NumParticles); Engine.DoEnd; Done := false; end; |
die objekt sortierung ist erstmal wieder draußen, wer alpha nutzen will, muss dann seine objekte auch in der richtigen reihenfolge zeichnen um den gewünschten effekt zu erzielen
mit Engine.x y kann man die kameraposition verschieben, mit Engine.zoom ist auch zoom möglich.
UPDATE: ich hab der SoundUnit noch ein paar kleine random funktionen verpasst, um die musik später per zufall abspielen zu können.
UPDATE: die soundengine um 2 weitere funktionen und eine property erweitert count getsoundindex und getsoundname
|
EDIT: So am Anhang jetzt auch eine Demo mit Quelltext, viel Spass damit.
mfg
|
|
JayEff
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: Sa 23.09.06 15:13
F34r0fTh3D4rk hat folgendes geschrieben: |
Das Koordinatensystem beginnt wieder oben links ^^
|
Heist das, ich muss mein Progamm umschreiben, wenn ich die Engine update? Die Partikel würd ich schon gern einbauen... mal sehn, ich werd erstmal die alten Engine daten Backupen bevor ich update... ^^
edit: Alle nicht in Kompilierter Form forliegenden Units erzeugen bei der Demo "Datei nicht gefunden: UTools.dcu", genauso wie F2D_Math.dcu, die scheints neu dazu gekommen ist >.< was für nen shice. Nun muss ich die meisten Dateien einzeln einbinden und dadurch kompilieren..
Edit:
Hab nun bisschen rumgespielt und eine kleine aber hübsche Spielerei zu stande gebracht. Wenn man die Endung in .scr ändert, kann man sogar nen Bildschirmschoner draus machen, hab aber kein Optionsmenü oder sowas drin, genausowenig wie eine Parameterabfrage, also nicht wundern. Ist nur zum angucken gedacht ^^
Hoppla, ich sollte meinem Anhang vll noch die bass.dll und spark.bmp hinzufügen... fixed.
edit: kleiner bug wurde geändert, Farben auch. sieht jetzt schöner aus ^^
Einloggen, um Attachments anzusehen!
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
F34r0fTh3D4rk
Beiträge: 5284
Erhaltene Danke: 27
Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
|
Verfasst: So 24.09.06 09:13
das mit dem koordinatensystem ergab sich aus der struktur von TBitmap und dem Lemmingsprojekt, und eine völlige Konfusion meinerseits ^^ ich musste auch ein ganzes Stück umschreiben, aber ich hoffe es klappt alles.
noch eine kleinigkeit zur demo, mit f2 kann man reinzoomen und mit f1 wieder raus, mit f5 macht man einen screenshot.
WOW JayEff, das sieht einfach nur beeindruckend aus, wie ein trichter teilweise auch richtig schöne welleneffekte. ich hab grad auch schon wieder ein paar schicke ideen bekommen zb die eingangs / ausgangsfarben zur laufzeit zufällig zu blenden oder ein feuerwerk zu machen. die möglichkeiten sind halt groß. graviation werde ich vielleicht noch mal einbauen, beliebige keyframes dann wohl als nächstes. aber ich denke nicht, dass es attraktoren oder reflektoren oder so geben wird, denn ich wüsste nicht, wie ich das am geschicktesten implementiere...
naja durch andere texturen lassen sich auch nochmal andere effekte erzielen (rauch) da macht es sinn zwischendrin den emissionswinkel zufällig zu wählen (zb bei jedem durchlauf)
mfg
|
|
JayEff
Beiträge: 2971
Windows Vista Ultimate
D7 Enterprise
|
Verfasst: So 24.09.06 14:51
Auf die art kann ich bei FangenV2 viel geilere Effekte machen, wenn du z.B. ein Extra eingesammelt hast! idee!
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|
|
|