Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Mo Jul 07, 2025 18:12

Foren-Übersicht » Programmierung » Einsteiger-Fragen
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 18 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Autor Nachricht
 Betreff des Beitrags: Neu und gleich ein Hinderniss
BeitragVerfasst: Do Apr 05, 2007 15:55 
Offline
DGL Member

Registriert: So Apr 01, 2007 17:51
Beiträge: 42
Wohnort: Hamm/Westf.
Hallo Leute,

Mein Name ist Rainer aus Hamm/Westf. und ich bin neu hier im Forum.
Ich bin 50 und programiere seit ca 1990 in Turbo Pascal / BP.
Seit ca 1/2 Jahr übe ich mich in Delphi 7.

Ich Suche schon seit Tagen im Forum um mein 'Problem' zu lösen.
Ich mache ein wenig auf Laserscanning und entsprechend drehe und bewege ich 3D Vektoren.

Ab 50 Frames je Sek mit 1000 Vectoren und gleichzeitiger Bildschirmausgabe hängt mein Rechner 1,2GHz auf 100% CPU.

Ginge das mit OpenGL schneller im reinen 2D ?

Um das mit OpenGL umzusetzen habe ich im Forum nichts gefunden :-/

Als Beispiel hier der DelphiCode und die Exe. http://www.Gento.de/Wuerfel.rar

Drehen,verschieben usw muss ich von Hand machen und weil ich die X&Y Werte brauche ich zur Weiterverarbeitung ,doch das geht sehr Fix.

Wie gesagt das ist nur ein Beispielcode Lauffähig die Exe ohne viel Vektoren.

Es wäre schön wenn mir jemand auf die Sprünge hilft das in OpenGL umzusetzen.

Grüße Rainer

p.s. Auszug der Bildschirmausgabe.


Code:
  1. Procedure Wuerfel_Zeigen(W1,W2,W3:Double);
  2. Var Lauf:Word;
  3.     Zeige_X,Zeige_Y:Longint;
  4. Begin
  5.     With form1.Scannanzeige.Canvas do
  6.   Begin
  7.     Brush.Color:=$000000;
  8.     Rectangle(-1,-1,513,513);  //Fenster löschen
  9.     For Lauf:=1 to 16 do
  10.       Begin
  11.         Pen.Color:=RGB(RGB_Farben[Lauf*2,1],RGB_Farben[Lauf*2,2],RGB_Farben[Lauf*2,3]);                                 //Farbe zuweisen
  12.         Rechenmuehle_3D_in_2D(W1,W2,W3,Quadrat[Lauf,1],Quadrat[Lauf,2],Quadrat[Lauf,3],Zeige_X,Zeige_Y);                // Vektoren ausrechnen
  13.         if Lauf=1 then Moveto(trunc(Zeige_X /Fensterfaktor)+Fenster_Halb,trunc(Zeige_Y / Fensterfaktor)+ Fenster_Halb)  // Neuen Linienanfang
  14.                   Else Lineto(trunc(Zeige_X /Fensterfaktor)+Fenster_Halb,trunc(Zeige_Y / Fensterfaktor)+ Fenster_Halb); // Ziehe Linie
  15.       end;
  16.   end;
  17.  
  18. end;


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 05, 2007 16:14 
Offline
DGL Member
Benutzeravatar

Registriert: Di Okt 03, 2006 14:07
Beiträge: 1277
Wohnort: Wien
Hallo Gento,
Willkommen hier im Forum. Ich habe mir Dein Programm angesehen. Nur von außen, nicht den Sourcecode. Ich würde sagen: Ja, genau dafür ist OpenGl wie geschaffen. Du sprichst von sehr vielen Vektoren, aber davon habe ich eigentlich nichts entdecken können. Du manipulierst einen Würfel im Gitternetzmodus. Davon geht OpenGL nicht in die Knie. :wink: Du solltest Dir die Tutorials im Wiki ansehen.
Viele Grüße
Traude


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 05, 2007 17:59 
Offline
DGL Member

Registriert: So Apr 01, 2007 17:51
Beiträge: 42
Wohnort: Hamm/Westf.
Hallo Traude,

Ehrlich das Tutorial ist sehr schlecht aufgebaut.
Ich hatte die wirklichen Links nicht gefunden und den(ie) Sterne geklickt. 'Wozu so ein Sternlink'? :oops:

Demo : Es hat wirklich nur ein paar Vektoren und war mein zweites Delphi Prog . . aus eigenenem BP Code umgeschrieben.

Real habe ich 2-5000 Vektoren und die möchte ich per Delphitimer und nur 2D=XY beschleunigt per OpenGL ausgeben.
Üblich scheint mir das bei normalen OpenGL Programmen gerne die CPU voll belastet wird .Drum Delphitimer.

Hier ein Bild von der richtigen Soft:
Bild


Meine erste Aufgabe scheint wohl das 512x512 Fenster zu erzeugen und irgendwas reinzumalen.

:wink:

lg Gento[/img]


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 05, 2007 18:49 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
OpenGL spezialisiert für Linien: Dem kann ich so nicht ganz zustimmen. Ja es wurde Ursprünglich mal für CAD Anwendungen entwickelt allerdings geht der Trend seit geraumer Zeit immer weiter in Richtung Spiele weswegen die Optimierung von Linien nicht vorrangetrieben wurde. Sind für Spiele ja sowieso eher nutzlos. Deswegen sollte man bei Linien nicht zu viel erwarten. Aber nichts desto trotz stimme ich zu, dass eine halbwegs aktuelle Grafikkarte damit keine Probleme haben sollte.

Hallo Gento,

Willkommen im Forum.

Die Links hinter den Bildern kommen von der Wiki Software, die eingesetzt wird. Du wirst hinter jedem Bild ein Link finden der zu dem Bild oder einer größeren Version davon führt. Das ist wirklich überall so. Nicht nur bei uns.

Üblicherweise werden OpenGL Anwendungen so geschrieben, dass sie das Maximum aus der vorhandenen Hardware holen. Also so viele Bilder wie möglich darstellen. Wenn du nur genau 50 Bilder in der Sekunde haben möchtest, dann musst du bei einem Timer aufpassen. Sollte der Rechner das nicht schaffen sinken die Bilder pro Sekunde entsprechend. Es gibt nie eine Garantie dafür, dass es immer schnell genug ist. Aber das sollte vorerst nicht das Problem sein.

Als Erstes dürfte wohl auch das QuickStart Tutorial recht nützlich sein. Dort existiert auch ein Link auf die Templates die schon alles behinhalten was du braucht. Teilweise aber auch mehr was die Sache nicht einfacher macht. Ich denke das Unterste dürfte das Richtige sein.

Wie ich in meiner gestrigen Mail schon geschrieben habe solltest du nach Möglichkeit die Perspective/Transformation/Rotation mit OpenGL selbst erledigen. Ja ich weiß, dass du diese Daten für die Laser sowieso berechnen musst aber ich sage das nicht weil ich dir die Arbeit erschweren möchte. Sondern aus dem Grund, da seit ca 6 jahren alle Grafikkarten eine T&L Einheit (Transformation & Lightning) besitzen. Diese sorgt dafür, dass die Transformationen nicht mehr auf der CPU sondern auf der GPU berechnet werden können. Da die Arbeit bei dir zu großen Teilen daraus besteht würdest du nicht alles nutzen was die Karte eigentlich kann. Das aber nur unter der Vorraussetzung, dass es überhaupt möglich ist. Und natürlich falls die derzeitige Hardware es nicht schaffen sollte.

Ansonsten kann ich dir zusätzlich noch mal das 2D Tutorial aus meiner Mail empfehlen. Dabei aber eher nur bis einschließlich Kapitel 1.5. Alles andere ist ganz informativ aber für dich wohl eher nicht nützlich.

Der Artikel glBegin dürfte auch nützlich sein, da er die zur Verfügung stehenden Primitiven (Line, LineLoop) aufzeigt.

Wenn alles richtig initialisiert wurde kannst du folgendermaßen eine einzelne Linie zeichen. Wie ich aber auch in der Mail erwähnt habe solltest du glBegin und glEnd sparsam einsetzen. Also mehrere Linien am Stück zeichnen.

Code:
  1. glBegin(GL_LINES); // Ich will linien
  2.   glVertex(X, Y);  // Startpunkt Linie 1
  3.   glVertex(X, Y);  // Endpunkt Linie 1
  4.  
  5.   glVertex(X, Y);  // Startpunkt Linie 2
  6.   glVertex(X, Y);  // Endpunkt Linie 2
  7. glEnd;             // Ich will keine Linien mehr.


PS: Konstruktive Kritik oder Verbesserungsvorschläge sind im Feedbackforum immer gerne willkommen. Aber wenn dann sollte man das auch begründen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 05, 2007 19:36 
Offline
DGL Member

Registriert: Di Jan 30, 2007 14:44
Beiträge: 14
Quick & Dirty und nicht komplett hinbekommen, weil ich gerade nur halb zeit hab ... eigentlich nur die rotation eingebaut

aber das zeigt wie einfach das geht hat gerade mal 10 minuten mit angucken deines programms gebraucht


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 05, 2007 20:04 
Offline
DGL Member
Benutzeravatar

Registriert: Di Okt 03, 2006 14:07
Beiträge: 1277
Wohnort: Wien
Hallo Gento,
wir reden offenbar aneinander vorbei. Was bedeutet:
Zitat:
Ich mache ein wenig auf Laserscanning und entsprechend drehe und bewege ich 3D Vektoren.


Heißt das, Du scannst 3D-Objekte per Laser ein und erhältst in schneller Folge 2D-Frames mit einer hohen Anzahl von Punkten und hast somit das Problem, diese Punktbilder so schnell wie möglich wegspeichern zu müssen? Warum musst Du dabei die Vektoren drehen? Könntest Du das etwas näher erläutern?

Zitat:
Real habe ich 2-5000 Vektoren und die möchte ich per Delphitimer und nur 2D=XY beschleunigt per OpenGL ausgeben.
Üblich scheint mir das bei normalen OpenGL Programmen gerne die CPU voll belastet wird .Drum Delphitimer.

Das Delphin-Bild scheint mir zu dünn besetzt für 5000 Vektoren. Aus eigener Erfahrung kann ich Dir aber sagen, dass eine ALTE Version von OpenGL (nämlich 1.3) ca. 55 Frames/sec. schafft bei einem Modell aus 34.000 Polygonen mit einem altersschwachen Laptop.

Wenn es so scheint, dass in OpenGl Programmen die CPU belastet wird, ist das meist auf den Programmierer zurückzuführen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 05, 2007 21:11 
Offline
DGL Member

Registriert: So Apr 01, 2007 17:51
Beiträge: 42
Wohnort: Hamm/Westf.
Ich möchte ganz einfach nur verschieden farbige Linien oder Punkte in x,y schnell auf den Bildschirm zeigen.

Dummerweise finde ich nirgens ein Beispiel für Ausgabe in ein Timage oder Panel nur immer Fensterfüllend.

Unschwer zu erkennen das jenes Bild 834 Vektoren hat. @Traude

lg Gento


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 05, 2007 21:31 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Du erstellst mittels GetDC einen DeviceContext und dabei wird das Handle des Fensters übergeben. Wenn du anstelle das Handle des Panels übergibst wird OpenGL darin erstellt. TImage geht nicht, da es kein echtes Windowsfenster ist sondern nur ein Bild darstellt.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Do Apr 05, 2007 21:49 
Offline
DGL Member

Registriert: So Apr 01, 2007 17:51
Beiträge: 42
Wohnort: Hamm/Westf.
Dank @Lossy ,
das war Präzise. :wink:

lg Gento


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Apr 06, 2007 15:03 
Offline
DGL Member

Registriert: So Apr 01, 2007 17:51
Beiträge: 42
Wohnort: Hamm/Westf.
Dank @Honsterus für ein Lauffähiges Gerüst.

Eben war ich gründlich am Ändern.
Das Ergebniss:

Init:
Code:
  1. Procedure Tform1.FormCreate(Sender: TObject);    //Init beim Starten
  2. Var NearClipping, FarClipping:single;
  3. begin
  4.   DC:= GetDC(Zeichenfenster.Handle);
  5.   if not InitOpenGL then Application.Terminate;
  6.   RC:= CreateRenderingContext( DC,[opDoubleBuffered],32,0,0,0,0,0);
  7.           //Device Contest,Optionen,ColorBits,ZBits,Accumbits,Auxbuffers,Layer
  8.   ActivateRenderingContext(DC, RC);
  9.  
  10.   RGB_Farben_Bauen;
  11.   Winkel_Tabellen_Bauen;
  12.   X_Position.Position:=0;
  13.   X_Winkel_Anzeige.Caption:='X Winkel : 0.0 Grad';
  14.   Y_Position.Position:=0;
  15.   Y_Winkel_Anzeige.Caption:='Y Winkel : 0.0 Grad';
  16.   Z_Position.Position:=0;
  17.   Z_Winkel_Anzeige.Caption:='Z Winkel : 0.0 Grad';
  18.   Versatz_Z:=0;
  19.   Versatz_X:=0;
  20.   Versatz_Y:=0;
  21.   Betracht_Tiefe:=-300000;
  22.   Wuerfel_Zeigen(0,0,0);
  23.   Timer1.Enabled:=False; //Timer ausschalten, vorsichtshalber
  24.   Timer1.Interval:=10; //Intervall einstellen 10=100 x Sek
  25.   Anzeigen:=1;
  26.  
  27.   glMatrixMode(GL_PROJECTION);
  28.   glLoadIdentity;
  29.   NearClipping := 1;
  30.   FarClipping := 5000;
  31.   gluPerspective(45.0, 1 , NearClipping, FarClipping);
  32.  
  33.   glMatrixMode(GL_MODELVIEW);
  34.   glLoadIdentity;
  35.  
  36.   glTranslatef(0, 0, -1);
  37.   glScaleF((1/65535),(1/65535),(1/65535));
  38.  
  39.  
  40.   end;
  41.  
  42.  
  43.  
  44.  
  45.  
  46. {---------------------------------------------------------------------}

Zeichnen:

Code:
  1. Procedure Wuerfel_Zeigen(W1,W2,W3:Double);
  2. Var Lauf,test:Word;
  3.     Zeige_X,Zeige_Y:Longint;
  4. Begin
  5.     glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT);
  6.     glBegin(GL_LINE_STRIP);
  7.     For Lauf:=1 to 16 do
  8.       Begin
  9.         Rechenmuehle_3D_in_2D(W1,W2,W3,Quadrat[Lauf,1],Quadrat[Lauf,2],Quadrat[Lauf,3],Zeige_X,Zeige_Y);                // Vektoren ausrechnen
  10.         if Lauf>1 then
  11.                     glColor3F(Col_OGL[RGB_Farben[Lauf,1]],Col_OGL[RGB_Farben[Lauf,2]],Col_OGL[RGB_Farben[Lauf,3]])
  12.                    else
  13.                     glColor3F(0,0,0);
  14.         glVertex2D(Zeige_X,Zeige_Y);
  15.       end;
  16.     glEnd;
  17.  
  18.   SwapBuffers(DC);
  19.  
  20. end;
  21. //-----------------------------------------------------------------------------


Ich muß sagen mein EX-Code ohne Open GL war schneller ,oder im dem Code oben sind nätürlich noch Denkfehler :shock:

Auffällig ist das : >>> glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT); <<< 90% der Verbrauchten CPU Last nimmt.
Eine andere schnellere Variante wäre alle gezeichneten alten Linien neu mit der Hintergrundfarbe zu zeichen.


Andere Sache:Welche Möglichkeit besteht die Linie unsichtbar zu zeichnen ohne mit Col(0,0,0) zu überschreiben ? (wie Moveto z.B.)

Grüße Gento


Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Apr 06, 2007 15:36 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Was hast du für eine Grafikkarte? Hast du einen passenden Treiber installiert. Denn wenn du keine Hardwarebeschleinigung hast, dann ist es logisch, dass es langsam ist. Schaut dir mal das Tool GlInfo auf der folgenden Seite an. Dort befinden sich gleich auf der ersten Seite die Informationen über den Hersteller (Vendor) deines Grafikkartentreibers. Wenn dort was von Microsoft steht läuft ALLES auf der CPU und du musst dafür sorgen, dass du einen Vernünftigen Treiber bekommst.
http://www.delphi3d.net/hardware/

glClear: Typischerweise ist das nur ein stumpfes überschreiben eines Speicherereichs. Das ist in der Regel eigentlich nicht langsam. Vermute, dass du keine Hardwarebeschleunigung hast sonst kann ich mir das auch nicht erklären. Du könntest evtl folgendes versuchen. Lösche mit glClear nur den Farbbuffer und deaktiviere den Tiefentest. Das löschen des Tiefenbuffers kannst du in deinem Falle sparen. Evtl bringt es ja schon etwas.
Code:
  1. Procedure Tform1.FormCreate(Sender: TObject);    //Init beim Starten
  2. ...
  3.   glScaleF((1/65535),(1/65535),(1/65535));
  4.  
  5.   glDisable(GL_DEPTH_TEST);  // NEU
  6. end;
  7.  
  8. Procedure Wuerfel_Zeigen(W1,W2,W3:Double);
  9. ...
  10.   glClear(GL_COLOR_BUFFER_BIT);  // Verändert
  11.  


"unsichtbare Linien": Wie ich in einem vorherigen Beitrag schon geschrieben habe. Schau dir mal bitte glBegin an. Du benutzt in dem Code GL_LINE_STRIP. Das ist nun mal eine riesige lange Linie.
Lossy eX hat geschrieben:
Code:
  1. glBegin(GL_LINES); // Ich will linien
  2.   glVertex(X, Y);  // Startpunkt Linie 1
  3.   glVertex(X, Y);  // Endpunkt Linie 1
  4.  
  5.   glVertex(X, Y);  // Startpunkt Linie 2
  6.   glVertex(X, Y);  // Endpunkt Linie 2
  7. glEnd;             // Ich will keine Linien mehr.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Apr 06, 2007 16:01 
Offline
DGL Member

Registriert: So Apr 01, 2007 17:51
Beiträge: 42
Wohnort: Hamm/Westf.
Bei mir kommt dann immer Compilerfehler : Undefinierter Bezeichner 'glVertex'

Die beiden Änderungen brachten nicht viel.


IBM T23 S3


Bild

Komisch , Komisch

Gento


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Apr 06, 2007 16:29 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Jul 17, 2002 12:07
Beiträge: 976
Wohnort: Tübingen
Ein Blick ins Wiki dürfte bei solchen Problemen nie schaden. Der [wiki=glVertex]Artikel[/wiki] zu glVertex zeigt zum Beispiel, dass es diesen Befehl selbst nicht gibt, sondern nur in den Abwandlungen glVertex***. Versuch es mal mit diesen Funktionen.

_________________
"Du musst ein Schwein sein in dieser Welt, sangen die Prinzen, das ist so 1.0. Du musst auf YouTube zeigen, dass dir dein Schweinsein gefällt, das ist leuchtendes, echtes Web 2.0."
- Hal Faber

Meine Homepage: http://laboda.delphigl.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Apr 06, 2007 16:41 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
glVertex:
Tutorial Lektion 1 hat geschrieben:
Code:
  1.  glColor3b, glColor3d, glColor3f, glColor3i, glColor3s,
  2.  glColor3ub, glColor3ui, glColor3us, glColor4b, glColor4d,
  3.  glColor4f, glColor4i, glColor4s, glColor4ub, glColor4ui,
  4.  glColor4us, glColor3bv, glColor3dv, glColor3fv, glColor3iv,
  5.  glColor3sv, glColor3ubv, glColor3uiv, glColor3usv,
  6.  glColor4bv, glColor4dv, glColor4fv, glColor4iv, glColor4sv,
  7.  glColor4ubv, glColor4uiv, glColor4usv


Es sind nicht ganz tausend und eine geworden, allerdings kommt dies schon sehr nahe dran ;). Sprach ich nicht gerade noch von einem kleinen Sprachumfang? Schnell werdet Ihr aber erkannt haben, dass das Grundgerüst dieser Funktion glColor heißt. All diese Funktionen verhalten sich gleich und unterscheiden sich lediglich in der Übergabe der Parameter. So werden bei glColor3i 3 Parameter vom Typ Integer erwartet. glColor4b verlangt hingegen 4 Parameter vom Typ Byte.

Besser kann ich es nicht erklären.

glClear: Na Ja. Die Karte ist ja schon etwas älter. Ist aber trotzdem etwas verwunderlich, dass das so extrem langsam ist. Auf dem Bild kann man nur erkenne, dass der Treiber einen OpenGL Teil hat. Ob der tatsächlich auch benutzt wird weiß man nicht. Es kann durchaus auch passieren, dass durch die Einstellungen die beim Kontexerstellen du nur den Softwaremodus bekommst. Versuch mal bitte Folgendes.

Code:
  1. Procedure Tform1.FormCreate(Sender: TObject);    //Init beim Starten
  2. ...
  3.   glScaleF((1/65535),(1/65535),(1/65535));
  4.  
  5.   glDisable(GL_DEPTH_TEST);
  6.  
  7.   // NEU NEU
  8.   ShowMessage(glGetString(GL_VENDOR));
  9. end;

Sollte dort Microsoft drinne stecken läuft es per Software. Das einfach nur mal Testen anschließend kannst du es wieder löschen.

Alternativ zu glClear könntest du in deinem Fall auch ein schwarzes Quad bildschirmfüllend darstellen. Wobei du aber eine Perspektive hast was das Bildschirmfüllende etwas schwieriger macht. Für dich wäre wohl der Orthomodus besser. Infos darüber findets bei glOrtho oder im 2D Totorial. Das macht die Addressierung einfacher. Direkte Pixelkoordinaten.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Apr 06, 2007 17:04 
Offline
DGL Member

Registriert: So Apr 01, 2007 17:51
Beiträge: 42
Wohnort: Hamm/Westf.
S3 Graphics eingetragen kommt.

Gento


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 18 Beiträge ]  Gehe zu Seite 1, 2  Nächste
Foren-Übersicht » Programmierung » Einsteiger-Fragen


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.009s | 14 Queries | GZIP : On ]