Autor Beitrag
JayEff
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2971

Windows Vista Ultimate
D7 Enterprise
BeitragVerfasst: Mi 27.12.06 23:31 
Ahja. den Versuch ists wert.. nur gehört das wohl in mein Topic, nicht hier rein, oder...?

_________________
>+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
hui1991
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 433

Windows XP, WIndows Vista
Turbo Delphi Explorer| Delphi, PHP,Blitzbasic
BeitragVerfasst: Do 28.12.06 23:15 
Boah,

damit kann man ja keine Spiele schreiben :(
Man kann keine Transparente Farbe auswählen :(
Man kann keine Grafiken drehen.
Wollte gerade eine Grafik auf 45, 90, 135, 180, 225 Grad drehen.
Aber sonst gefällt mir das ganz gut.
Man merkt gleich am Anfang, da es nicht fertig ist :(
Muss ich wohl warten, mit Spiele Programmieren...

MfG
hui1991
Danny87
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 688

Windows 10 Pro 64bit
Sprachen: HTML, PHP, JavaScript, Delphi || IDE: RAD Studio 10.1 Berlin Starter, WeBuilder
BeitragVerfasst: Do 28.12.06 23:52 
user profile iconhui1991 hat folgendes geschrieben:

Man merkt gleich am Anfang, da es nicht fertig ist :(
Muss ich wohl warten, mit Spiele Programmieren...


Oder Du probierst dich an "purem" Direct3D ;) *g*
jakobwenzel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: Fr 29.12.06 00:01 
Oder pures OpenGl, was eigentlich gar nich mal so schwer is (ich verwende Fear2D nur für die Initialisierung, den Rest mach ich manuell)

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
hui1991
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 433

Windows XP, WIndows Vista
Turbo Delphi Explorer| Delphi, PHP,Blitzbasic
BeitragVerfasst: Fr 29.12.06 13:07 
Die Frage ist halt wie das geht.
Weil Fear2D ist so wie ich es will, und nicht so schwer.
Blos da fehlt was. Îch fange letzter Zeit immer was an und stelle fest, das des nie was wird.
Dann lass ich es ruhen, und nach einer Zeit versuche ich es wieder, dann wird es wieder nix.
Und immer so weiter. Selbst BlitzBasic ist schwerer.
Naja da man da keine Proceduren machen kann.
Sondern nur funktionen :(

MfG
hui1991
Fighter#1
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 787

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
BeitragVerfasst: Fr 29.12.06 21:13 
user profile iconhui1991 hat folgendes geschrieben:
Boah,

damit kann man ja keine Spiele schreiben :(
Man kann keine Transparente Farbe auswählen :(
Man kann keine Grafiken drehen.
Wollte gerade eine Grafik auf 45, 90, 135, 180, 225 Grad drehen.
Aber sonst gefällt mir das ganz gut.
Man merkt gleich am Anfang, da es nicht fertig ist :(
Muss ich wohl warten, mit Spiele Programmieren...

MfG
hui1991


Naja, soganz stimmt das ja nicht, wie dus sagst ...
Also grafiken kann ich mit Angle sehr wohl drehen ... und wenn du mal eine minimale präsentation, was ohne viel liebe/mühe möglich an spieleprogrammierung ist sehen willst, dann schick ich sie dir ... (bin halt grad an nem Spiel) [bzw. an 2 aber 1 Projekt ist mir wohl doch zu hoch]

_________________
Wer andere beherrscht ist stark,
wer sich selbst beherrscht ist mächtig. Lao Tse
JayEff
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2971

Windows Vista Ultimate
D7 Enterprise
BeitragVerfasst: Fr 29.12.06 22:35 
user profile iconhui1991 hat folgendes geschrieben:
Boah, damit kann man ja keine Spiele schreiben :(

Hrm.. Ich finde, das ist schon ein Spiel... und es ist mit der Fear2D engine programmiert. Tranzparenz erzeugst du durch TGA dateien, die einen Alphakanal enthalten.
Fertig ist es schon, es werden nur Features hinzugefügt, zumindest meiner Ansicht nach. Was die Engine bisher kann, reicht mir beinah (Nur die Textausgabe ... >.< )

_________________
>+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
Shaddow89
Hält's aus hier
Beiträge: 15



BeitragVerfasst: So 31.12.06 03:58 
Richtige Spiele schreiben...
Die Frage ist nun, was ist ein richtiges Spiel?
Anno? Spellforce? Call of Duty? Battelfield?
Oder doch eher Pong? Bomberman? Tetris?
Erstere Spiele werden nicht umsonst von erfahren mehrköpfigen Teams in manchmal mehrjaehriger Arbeitszeit erschaffen.
Letztere kann man jedoch problemlos auch selber erschaffen.
Um ein mittelmaessiges Spiel hinzubekommen und das allein, braucht man schon einiges und ohne das Wissen um OGL wird man nie andere Spiele als die aus der PongKategorie erstellen können, egal mit welcher Engine.
Die letzte groessere Engine, die ich gesehen habe hatte:
Core, Globals, Fontmanager, Texturenmanager, Particlemanager, physiksystem, EventManager, SelectionManager, BugTracker, XMLDataManager, Cameraklasse, Windowklasse, RenderManager, Frustum und da war noch lange nicht alles drin. Wenn eine Engine all diese Dinge enthaelt, dann kann man schon einiges machen, aber das ist halt auch alles ne Menge Arbeit. FInde die Engine huebsch, aber selber Programmieren macht mehr spass :)
en!gma
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 378

win xp
delphi 7.0
BeitragVerfasst: Fr 03.08.07 20:19 
hi ist zwar schon etwas älter, aber kann jemand nochmal bitte ein template hochladen?
denn in der zip datei ist ja keins vorhanden.
wollte mich noch einmal daran versuchen
HelgeLange
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 735
Erhaltene Danke: 6

Windows 7
Delphi7 - Delphi XE
BeitragVerfasst: Mi 29.08.07 10:35 
wie sieht es eigentlich mit OnKlick-Routinen aus bei Grafik-Onjekten, hab mal kurz drübergeschaut, aber nix gefunden...

_________________
"Ich bin bekannt für meine Ironie. Aber auf den Gedanken, im Hafen von New York eine Freiheitsstatue zu errichten, wäre selbst ich nicht gekommen." - George Bernhard Shaw
JayEff
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2971

Windows Vista Ultimate
D7 Enterprise
BeitragVerfasst: Mi 29.08.07 16:39 
Ich weiß nix dergleichen, habe meine OnClicks per Mausposition und onClick der Form gelöst, glaub ich...

_________________
>+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
HelgeLange
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 735
Erhaltene Danke: 6

Windows 7
Delphi7 - Delphi XE
BeitragVerfasst: Mi 29.08.07 21:42 
Dann muss man aber displaylisten nach Tiefe sortieren, oder ? Sollte man vielleicht den Komps selbst die Möglichkeit geben :p

_________________
"Ich bin bekannt für meine Ironie. Aber auf den Gedanken, im Hafen von New York eine Freiheitsstatue zu errichten, wäre selbst ich nicht gekommen." - George Bernhard Shaw
Fabian E.
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 554

Windows 7 Ultimate
Visual Studio 2008 Pro, Visual Studion 2010 Ultimate
BeitragVerfasst: Do 01.05.08 16:22 
So,

nach langer Zeit gibt es hier mal wieder einen Eintrag ;)

Ich habe grade die Units "F2D_TextureManager.pas" und "F"D_Text.pas" etwas ergänzt.
Grund dafür sind relativ große Speicherleaks bei den Texturen und Schriftarten.
Diese werden in einer Liste gespeichert, aber nur die Liste selber wird freigeben. Die Texturen/Schritarten nicht.
Die Lösung ist allerdings ganz simpel:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
destructor TTextureManager.Destroy;
var
  i                           : Integer;
begin
  // HashedStringList freigeben
  for i := 0 to Textures.Count - 1 do  //Das ist neu, hier werden erst alle Objekte in der Liste freigegeben.
    Textures.Objects[i].Free;
  Textures.Free;

  inherited Destroy;
end;


Dann noch bei den Schriften:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
destructor TFontManager.Destroy;
var
  i                           : Integer;
begin
  // HashedStringList freigeben
  for i := 0 to Fonts.Count - 1 do  //Auch hier erst die Objekte freigeben
    Fonts.Objects[i].Free;
  Fonts.Free;

  inherited Destroy;
end;


Im Anhang sind dann noch die beiden Units.

gruß
Einloggen, um Attachments anzusehen!
F34r0fTh3D4rk Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 5284
Erhaltene Danke: 27

Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
BeitragVerfasst: Do 01.05.08 17:22 
hi,

Danke, das muss ich übersehen haben ;)
Fabian E.
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 554

Windows 7 Ultimate
Visual Studio 2008 Pro, Visual Studion 2010 Ultimate
BeitragVerfasst: Do 01.05.08 19:02 
ja, hätte ich wohl auch nicht gemerkt, wenn ich nicht relativ viele Texturen gehabt hätte deren Speicher nicht freigegeben worden wäre...

gruß
Lossy eX
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1048
Erhaltene Danke: 4



BeitragVerfasst: Fr 09.05.08 13:41 
Habe mal aus reinem Interesse mir die beiden Units angeschaut und etwas gefunden was mich ein bisschen irritiert.

Bei allen Texturen werden die Eigenschaften FreeDataAfterGenTexture und DeleteTextureOnFree auf False gesetzt. Hat das einen tieferen Sinn? Denn FreeDataAfterGenTexture verhindert, dass die Texturdaten nach dem Erstellen der Textur gelöscht werden. Wenn man nachträglich Zugriff auf die Daten beraucht, dann kann ich das noch verstehen. DeleteTextureOnFree verhindert, dass die OpenGL Textur beim Löschen der Instanz auch gelöscht wird. Wenn ihr also eine Möglichkeit hättet um Texturen zwischenzeitlich zu löschen wären sie trotzdem noch im Speicher der Grafikkarte. In eurem Fall würden sie spätestens beim Löschen des RCs mit gelöscht. Ich glaube viel Früher gebt ihr diese Manager aber auch nicht frei?

Die Texturen haben derzeit immer noch MipMaps die aber nicht benutzt werden. Denn diese werden per Default erzeugt. Um das zu verhindern solltet ihr nach dem Erstellen der Instanz die Eigenschaft MipMap auf mmNone setzen. Der Filter steht zwar ursprünglich auf GL_LINEAR_MIPMAP_LINEAR wird aber bei mmNone automatisch auf GL_LINEAR gesetzt. Das bräuchtet ihr also gar nicht setzen. Und wenn wären diese sowieso an der Textur gebunden. Also ein mal reicht vollkommen.

_________________
Nur die Menschheit ist arrogant genug, um zu glauben sie sei die einzige intelligente Lebensform im All. Wo nicht mal das nachhaltig bewiesen wurde.
Fabian E.
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 554

Windows 7 Ultimate
Visual Studio 2008 Pro, Visual Studion 2010 Ultimate
BeitragVerfasst: Fr 16.05.08 08:13 
F34r0fTh3D4rk, hast du eigentlich vor, deine Physik-Engine hier einzubauen oder liegt das auch auf Eis?
Ich finde nämlich, dass deine Engine viel Potenzial hat.
Hier noch ein paar Anregungen, die sich nach langer Benutzung ergeben:

  • Physikengine implementieren. Ist zwar wahrscheinlich nicht ganz einfach aber durchaus sinnvoll.
  • OnClick, OnMouseDown/Up, OnMouseOver/Leave Ereignisse implementieren. Ich denke das wäre auch sehr sinnvoll. Alternativ wäre eine Möglichkeit sich GUIs aufzubauen auch gut.
    Evtl. eine Klasse TGameButton oder so. Es nervt nämlich etwas die ganzen Evtens selber zu machen...
  • Ich weiß nicht inwieweit das geht aber vielleicht auch noch irgendwelche Grafikeinstellungen von OGL konfigurieren lassen. Also sowas wie AA oder so.
  • Emitter abschaltbar machen. Also das Render des Emitters anhalten, sodass eine "Pause-Option" möglich wird. Aktuell wird der Emitter auch bei einer Pause weiter geredert also auch neu berechnet und so.


Kannst dir ja mal überlegen etwas an der Engine weiterzuarbeiten.

gruß
F34r0fTh3D4rk Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 5284
Erhaltene Danke: 27

Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
BeitragVerfasst: Fr 16.05.08 12:00 
hi, momentan habe ich leider keine Zeit dazu und mit der Physik Engine komme ich auch nicht so recht weiter.
Ich muss mal schauen. Momentan habe ich auch kein 2D Projekt in Aussicht für das ich die Engine nutzen könnte. (Ich hab die Engine zwar selbst in einigen Projekten verwendet, aber noch nichts richtig großes)

mfg
jaenicke
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 19272
Erhaltene Danke: 1740

W11 x64 (Chrome, Edge)
Delphi 11 Pro, Oxygene, C# (VS 2022), JS/HTML, Java (NB), PHP, Lazarus
BeitragVerfasst: So 03.01.10 12:34 
Der Downloadlink funktioniert nicht mehr, das solltest du vielleicht einmal korrigieren. ;-)

Wenn der Download zu groß fürs Forum ist, kannst du den auch gerne bei mir ablegen.
F34r0fTh3D4rk Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 5284
Erhaltene Danke: 27

Win Vista (32), Win 7 (64)
Eclipse, SciTE, Lazarus
BeitragVerfasst: So 03.01.10 14:14 
Martok hatte die "aktuellste" Version gehostet, ich habe glaube ich nur noch eine ältere Version hier rumliegen.