| Autor |
Nachricht |
Martok
       

Beiträge: 1950 Erhaltene Danke: 11 Dabei seit: 05.08.2006 Wohnort: MD
Win2000, IksPeh Delphi 7, Turbo Delphi Exp.
|
Natürlich F34r, bin nur noch nicht dazu gekommen.
Also. Meine Änderungen betreffen bis auf die Text und UI-bezogenen Änderungen wirklich nur den Unterbau, d.h. nur die Units austauschen, fertig.
Was ich wichtig finde, ist die Einstellung des Ursprungspunktes über Ofs.x/y. Damit muss sich die Koordinatenangabe nicht mehr unbedingt auf den Mittelpunkt beziehen, sondern auf einen beliebigen Punkt im Bild. {komischer Satz, ich hoffe ihr versteht mich...}
Achso, und die nicht wirklich konsequente Vererbungshierarchie hab ich in Ordnung gebracht, da sonst die UI-Elemente fast unmöglich gewesen wären
Auch wenn das ja hier eher selten ist: ich hoste mal was selber
www.martoks-place.de/delphi/opengl/fear2d/
EDIT: an neue Domain angepasst
_________________ "[the ++ operator] is a parable on learning: even if you throw away the result, you still gain something" - mgedmin on Freenode (Außer: c=c++;)
Ich code EdgeMonkey - In dubio pro Setting-~==~- #ee-lounge in Freenode
Zuletzt bearbeitet von Martok am Mo 20.08.07 11:52, insgesamt 6-mal bearbeitet
|

|
|
en!gma
        
Beiträge: 378 Dabei seit: 25.12.2004 Wohnort: Lippetal (NRW)
win xp delphi 7.0
|
ah kuhl danke ich schau später mal etwas genauer rein und hoffe, dass ich irgendwas verstehe 
|

|
|
en!gma
        
Beiträge: 378 Dabei seit: 25.12.2004 Wohnort: Lippetal (NRW)
win xp delphi 7.0
|
so hab grad noch ein bischen rumgespielt...
und ich möchte versuchen noch ein paar funktionen in die engine einzubauen.
habe so an folgendes gedacht: (auch wenn ich selbst nicht alles umsetzen kann)
loadEmitterFile(file,name:string) <-- also ähnlich wie sounds und texturen
loadEmitterDir(file:string)
SpawnEmitter(name:string, x-pos,y-pos,angle:integer,loop:boolean)<-- also dass ein emitter an einer bestimmten stelle gespawned wird
und dann hatte ich noch 2 funktionen die ich um himmels willen nie umsetzen könnte
morphEmitter(emitter1,emitter2:string;time:integer) <-- soll in einem bestimmten zeitrahmen, und zwar "time" einen emitter langsam zu einem anderen werden lassen, also was grösse usw angeht
und dann noch etwas "ganz feines" und zwar multiemitter!
das ganze habe ich mir so vorgestellt:
man hat eine ini datei, ähnlich wie bei loadEmitterFile() nur das besondere.
man hat ein main emitter und diverse childs...
die childs sind eigene emitter und haben eine position +-x/y von dem main emitter.
also das man 2 oder mehr emitter leicht über den bildschirm wandern lassen kann
und somit superschöne animationen
aber was ich mich die ganze zeit frage...
für das loadEmitterFile/Dir, erstelle ich wohl eine neue Klasse dafür?
habe einfach mal eine angehängt, würde die dann ca so aussehen?
habe sie von SoundManager abgewandelt und nach möglichkeit schon ein paar variablen und kommentare angepasst.
oder packt man das ganze doch lieber in die particleengine.pas?
naja die sachen von mir...
und wie gesagt hab etwas rumgespielt und ist das hier mal rausgekommen.
mit "pfeil-hoch" lädt man die kugel auf, mit "pfeil-runter" schiesst man sie ab.
Einloggen, um Attachments anzusehen!
|

|
|
F34r0fTh3D4rk
        
(Threadstarter)
Beiträge: 5191 Erhaltene Danke: 4 Dabei seit: 28.09.2004
Win Vista (32), Win 7 (64) Eclipse, SciTE, Lazarus
|
die features hatte ich alle bereits geplant aber noch net umgesetzt 
|

|
|
en!gma
        
Beiträge: 378 Dabei seit: 25.12.2004 Wohnort: Lippetal (NRW)
win xp delphi 7.0
|
aso hatte mich schon gewundert warum es noch nicht drin war
es is ja schon eigentlich in der demo drin.
halt nur mit multi emitter noch nicht,
und morph fänd ich auch fett
aber machst du dafür extra ne neue klasse?
und besteht denn wohl noch die chance, dass du es umsetzt?
|

|
|
F34r0fTh3D4rk
        
(Threadstarter)
Beiträge: 5191 Erhaltene Danke: 4 Dabei seit: 28.09.2004
Win Vista (32), Win 7 (64) Eclipse, SciTE, Lazarus
|
die sache mit dem multi emitter ist net so leicht, das ist ja kein record sondern eine klasse da muss man schon ein bissl fummeln sonst ist alles was man braucht in der unit und morphen ist dreisatz
kommt auch schon drin vor, bei den farben, da steht interpolieren oder so drüber
mfg
|

|
|
JayEff
       
Beiträge: 2970 Dabei seit: 14.05.2004 Wohnort: Niefern
Windows Vista Ultimate D7 Enterprise
|
Martok hat folgendes geschrieben: |
Also. Meine Änderungen betreffen bis auf die Text und UI-bezogenen Änderungen wirklich nur den Unterbau, d.h. nur die Units austauschen, fertig. |
Toll! Klasse! Ähm ... wie ... lass ich mir nen Text ausgeben? In der F2D_Text sind keine Methoden zur Textausgabe enthalten... ? Eine .. winzig kleine Dokumentation wär toll, oder eine kleine Demo ... 
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|

|
|
Martok
       

Beiträge: 1950 Erhaltene Danke: 11 Dabei seit: 05.08.2006 Wohnort: MD
Win2000, IksPeh Delphi 7, Turbo Delphi Exp.
|
Also Dokumentationen wirst du von mir nie sehen, jedenfalls bei den meisten Projekten
Eigentlich läuft die Textausgabe nicht viel anders als die Texturierung zum Beispiel: Laden->Binden->Zeichnen. Ich hab mal ne Demo gemacht, ist oben angehängt. Außerdem hab ich die Engine nochmal modifizert, da war noch was in der Multiline-Ausgabe komisch.
Richtige Bitmap-Fonts müsste auch mal einer machen *pfeif*.....
_________________ "[the ++ operator] is a parable on learning: even if you throw away the result, you still gain something" - mgedmin on Freenode (Außer: c=c++;)
Ich code EdgeMonkey - In dubio pro Setting-~==~- #ee-lounge in Freenode
|

|
|
jakobwenzel
        

Beiträge: 1888 Erhaltene Danke: 1 Dabei seit: 21.06.2005 Wohnort: Ingelheim
XP home, ubuntu BDS 2006 Prof
|
Für meine Ogl-GUI benutz ich Bitmapfonts. Da fehlt nur noch die Möglichkeit, die erstellten Fonts in der Größe zu ändern. Bis jetzt ist es so, dass bei jeder Änderung der Größe die Buchstaben neu in ein BMP gemalt werden und dann an OpenGl übergeben werden. (Oder die Buchstaben werden aus einer Datei geladen, wobei sich dann die Größe überhaupt nicht ändern lässt)
Wenn die Größenänderung drin ist, kann ichs ja auch mal hochladen.
_________________ I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
|

|
|
JayEff
       
Beiträge: 2970 Dabei seit: 14.05.2004 Wohnort: Niefern
Windows Vista Ultimate D7 Enterprise
|
Im Normalfall hätt mir die Demo gereicht, aber ... :
Passiert nix. Nix wird ausgegeben. Ich hatte sogar mal eine art Ausgabe, allerdings schwarz auf schwarzem Hintergrund (musste mit dem Ball drüber gehn um es zu sehn ... )
Aber das geht nun iwie auch nicht mehr.
PS: Ja is kopiert.
PPS: Kannst du vielleicht eine kleine Schritt-für-Schritt Anleitung schreiben, so richtig für dummies, nach dem Stil "Schritt Eins: Fontmanager.Addfont. Beispiel: xyz... blah blah"
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|

|
|
Martok
       

Beiträge: 1950 Erhaltene Danke: 11 Dabei seit: 05.08.2006 Wohnort: MD
Win2000, IksPeh Delphi 7, Turbo Delphi Exp.
|
Also so wie du es da hast, sollte schon alles stimmen. Ich hab oben nochmal editiert.
Oh, doch was: da fehlt ein Engine.DoEnd, ist das Absicht?
_________________ "[the ++ operator] is a parable on learning: even if you throw away the result, you still gain something" - mgedmin on Freenode (Außer: c=c++;)
Ich code EdgeMonkey - In dubio pro Setting-~==~- #ee-lounge in Freenode
|

|
|
JayEff
       
Beiträge: 2970 Dabei seit: 14.05.2004 Wohnort: Niefern
Windows Vista Ultimate D7 Enterprise
|
Martok hat folgendes geschrieben: | Also so wie du es da hast, sollte schon alles stimmen. Ich hab oben nochmal editiert.
Oh, doch was: da fehlt ein Engine.DoEnd, ist das Absicht? |
Ja, das hab ich nu nich übernommen, is aber drin... Aber das soll ja keine Diskusion über mein Programm bzw. meine Probleme werden ... ^^
Habe das Problem gefunden!
Ich darf keine Texturen laden, um die Textausgabe zu benutzen. Wird irgendwo im OnCreate (egal ob vor, oder nach der AddFont) Engine.TextureManager.AddTexture aufgerufen, wird keine Schrift angezeigt.
Ich hoffe, das wird bald klappen ...
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|

|
|
Fighter#1
        
Beiträge: 787 Dabei seit: 20.10.2005
Win XP, Ubuntu 8.04 Turbo Delphi 2006, Delphi 2005 Pe, Delphi 5 Pe, Netbeans 6.1, Eclipse, Microsoft VisualC#, Dev C++, PHP, HTML, CSS
|
... Juhu, endlich scheiben
Ach Martok, auf deiner Homepage hast du falsch verlinkt (habs dann halt selber gesucht)
_________________ Wer andere beherrscht ist stark,
wer sich selbst beherrscht ist mächtig. Lao Tse
|

|
|
Martok
       

Beiträge: 1950 Erhaltene Danke: 11 Dabei seit: 05.08.2006 Wohnort: MD
Win2000, IksPeh Delphi 7, Turbo Delphi Exp.
|
Fighter#1 hat folgendes geschrieben: | ... Juhu, endlich scheiben
Ach Martok, auf deiner Homepage hast du falsch verlinkt (habs dann halt selber gesucht) |
)&(/§%)/($&§& verdammte Backslashes.... wer hat die da reingeschrieben??
_________________ "[the ++ operator] is a parable on learning: even if you throw away the result, you still gain something" - mgedmin on Freenode (Außer: c=c++;)
Ich code EdgeMonkey - In dubio pro Setting-~==~- #ee-lounge in Freenode
|

|
|
hui1991
       
Beiträge: 433 Dabei seit: 09.04.2006
Windows XP, WIndows Vista Turbo Delphi Explorer| Delphi, PHP,Blitzbasic
|
Hi,
warum kann ich keine Bilder größer als 64x64 Pixel laden?
Die Datei ist nur 12KB groß.
Würde gerne eine 500x160KB große datei einfügen.
Aber dann hat er 1/12 FPS oder so
Hab gedacht ich mache damit ein wenig rumspielen.
Dann ist mir aufgefallen, das die Dateien nicht größer als 64x64 Pixeln sein dürfen, weil sonst hängt sich das auf.
MfG
hui1991
|

|
|
jakobwenzel
        

Beiträge: 1888 Erhaltene Danke: 1 Dabei seit: 21.06.2005 Wohnort: Ingelheim
XP home, ubuntu BDS 2006 Prof
|
Es kommt drauf an, ob die Bilder POT sind. Das heißt, die Seitenlängen müssen 2^x sein. Beispiel:
256x256,2048x2048,2x2,128x128,128x256,2x2048,...
Wobei ich keine Grafiken mit Seitenlängen >512 nutzen würde, da di von älteren Grakas nur selten geladen werden können.
_________________ I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
|

|
|
hui1991
       
Beiträge: 433 Dabei seit: 09.04.2006
Windows XP, WIndows Vista Turbo Delphi Explorer| Delphi, PHP,Blitzbasic
|
d. h. wenn ich eine 500x160 Pixel Grafik einfügen will, muss ich die grafik auf 512X256 hoch. Ja und wie kann ich dann die Transparente Farbe einstellen. Wenn es mehr sein muss, muss ja eine Farbe z. B. rosa ja ausgeblendet werden.
Geht das irgendwie?
|

|
|
jakobwenzel
        

Beiträge: 1888 Erhaltene Danke: 1 Dabei seit: 21.06.2005 Wohnort: Ingelheim
XP home, ubuntu BDS 2006 Prof
|
Du kannst auch einfach die Grafik strecken, anstatt einen Rand hinzuzufügen.
_________________ I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
|

|
|
JayEff
       
Beiträge: 2970 Dabei seit: 14.05.2004 Wohnort: Niefern
Windows Vista Ultimate D7 Enterprise
|
Für Transparenz empfehle ich TGA dateien, die bringen das gleich mit.. Kleines Problem von TGAs kann man in meinem Hilfesuchenden Thread finden: www.delphi-forum.de/...68011&highlight=
Das Problem wird dort beschrieben und ist noch nicht gelößt ...
_________________ >+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
|

|
|
hui1991
       
Beiträge: 433 Dabei seit: 09.04.2006
Windows XP, WIndows Vista Turbo Delphi Explorer| Delphi, PHP,Blitzbasic
|
Gehen gifs auch, weil die haben ja auch transparenz?
Die müssten doch auch gehen, oder?
Dann wäre dein Problem gelöst, leider hat es dann nur 256 Farben
MfG
hui1991
|

|
|
Werbung ausblenden? Dann registriere Dich kostenlos.
Weitere Gründe für eine Registrierung.
Werbung ausblenden? Dann registriere Dich kostenlos.
Weitere Gründe für eine Registrierung.
|
|
|
|