Superuser

Autor Thema: Eine harte Nuss für C++ Gurus  (Gelesen 12822 mal)

hchris

  • Gast
Re: Eine harte Nuss für C++ Gurus
« Antwort #15 am: 19. April 2004, 18:30:07 »
Kaya,

Gamma et al.: "Design Patterns". hat die Diskussion ueber Patterns losgetreten und ist immer noch eines der wichtigsten Werke.

Übrigens, allen Lösungsvorschlägen gemein ist, dass sie auf 'Delegation durch Vererbung' beruhen. Die Konstruktion laesst sich statisch mit vier oder fuenf extra Zeilen (bei gleicher Funktionalitaet wie in Deinem Beispiel) oder dynamisch mit einem Factory Pattern, wie von Tilmann vorgeschlagen, realisieren, die Performanz ist in jedem Fall die gleiche wie die einer virtuellen Funktion.

Gruesse,
Chris

mood-indigo.org - Das unabhängige Silicon Graphics User Forum

Re: Eine harte Nuss für C++ Gurus
« Antwort #15 am: 19. April 2004, 18:30:07 »

Offline sgt_barnes

  • Mood Master
  • ****
  • Beiträge: 250
  • Der frühe Vogel fängt den Wurm, aber die zweite Maus kriegt den Käse!
    • Profil anzeigen
Re: Eine harte Nuss für C++ Gurus
« Antwort #16 am: 19. April 2004, 18:42:37 »
Zitat

Danke für den Link, werd mir das mal etwas genauer ansehen. Allerdings sind die dortigen Struktuen bei mir eher Materialen, Shader sind für mich wirklich aktive Programme, die durch die Materialen parametrisiert werden. Das scheint so am meisten Sinn zu machen, was Flexibilität anbetrifft.


Ja, das war's, was ich mit "ID-Software-Definition" meinte. Quake III ist dann halt doch etwas älter als die DirectX 8 Spec.

Aber das Prinzip sollte übertragbar sein, zumal IIRC irgendwo steht, dass die ID-Jungs die Funktionen nutzen, um OpneGL-Calls einzusparen. Allerdings bezieht sich das wohl darauf, den "shader" nicht jedes mal neu zu setzen, wenn  mehrere Primitive hintereinander gleich gerendert werden.

MfG,
Tilmann

Offline sgt_barnes

  • Mood Master
  • ****
  • Beiträge: 250
  • Der frühe Vogel fängt den Wurm, aber die zweite Maus kriegt den Käse!
    • Profil anzeigen
Re: Eine harte Nuss für C++ Gurus
« Antwort #17 am: 19. April 2004, 18:43:42 »
Und bevor ich's vergesse: Der Gamma ist Gold wert!

:D

MfG,
Tilmann

majix

  • Gast
Re: Eine harte Nuss für C++ Gurus
« Antwort #18 am: 21. April 2004, 13:19:15 »
Um nur kurz über den Stand der Dinge zu berichten: Ich habe vorläufig meine Optimierungsidee rausgenommen, es gibt ja noch so viel anderes zu tun...

Grüße,
Kaya

Offline sgt_barnes

  • Mood Master
  • ****
  • Beiträge: 250
  • Der frühe Vogel fängt den Wurm, aber die zweite Maus kriegt den Käse!
    • Profil anzeigen
Re: Eine harte Nuss für C++ Gurus
« Antwort #19 am: 21. April 2004, 15:14:20 »
Hallo Kaya!

Wichtig ist halt nur, dass Du dran denkst, das wir irgendwann auch mal das Ergebnis zu sehen kriegen.

Wenn Du es schaffst, die erste "mood-indigo.de"-Demo zu veröffentlichen, kann ich mich vielleicht auch aufraffen!  ;)

Also programmier' nicht für den Eimer oder Dein Ego und gib unseren fetten Grafikkarten Futter! (Auch wenn ich aus dem restlichen Thread darauf schliesse, dass es auf meiner Octane/MXE wohl nicht läuft...)

Vor Vorfreude ganz aufgeregt,
Tilmann

majix

  • Gast
Re: Eine harte Nuss für C++ Gurus
« Antwort #20 am: 21. April 2004, 16:27:25 »
Klar, sobald die Zeit reif ist... im Augenblick rennt das alles allerdings nur unter Windows - vor langer Zeit hatte ich auch mal eine IRIX Version am laufen, aber das wäre wieder eine Menge Arbeit und hat im Moment nur niedrige Priorität.

Bis jetzt gibbets auch noch nicht so wahnsinnig viel zu sehen, viel Arbeit geht halt immer in den ganzen Unterbau. Um genau zu sein, gibt es im Augenblick nur ein doofes 3DS Modell zu sehen... als nächte Schritte sind geplant:
1. Rendern in Texturen
2. Weitere Shader (Bump-Mapping fällt mir da spontan ein)
3. Loader für Milkshape Objekte

Die Gründe, weshalb ich im Moment mehr auf Windows mache sind schnell angegeben:
1. Die Grafikhardware kann einfach wesentlich mehr.
2. Visual C++ ist eine der besten Entwicklungsumgebungen, die ich je gesehen habe. Vor allem der Debugger ist ein Traum, da kommt der GNU-Kram nicht ran.

Aber irgendwann will ich wieder eine IRIX Version zum Laufen kriegen - wird aber halt noch dauern, bis ich die Zeit und Muße dazu habe. Meine Webseiten warten auch auf so manche Aktualisierung...

Grüße,
Kaya

Offline sgt_barnes

  • Mood Master
  • ****
  • Beiträge: 250
  • Der frühe Vogel fängt den Wurm, aber die zweite Maus kriegt den Käse!
    • Profil anzeigen
Re: Eine harte Nuss für C++ Gurus
« Antwort #21 am: 21. April 2004, 17:15:28 »
Zitat

2. Visual C++ ist eine der besten Entwicklungsumgebungen, die ich je gesehen habe. Vor allem der Debugger ist ein Traum, da kommt der GNU-Kram nicht ran.


Da kann ich Dir nur beipflichten. Ich muss unter IRIX sogar mit dem dbx ran, weil der gdb bei Programmen mit POSIX threads crasht.

Ausserdem habe ich mich dummerweise auf Arbeit so an das Visual Studio gewöhnt, dass ich schon nicht mehr auf den Luxus verzichten will.

Glücklicherweise bin ich zuhause in der glücklichen Lage, wenigstens auf einem SGI-PC entwickeln zu können. Und weil der CVS-Server auf der Octane läuft, mache ich auch ziemlich regelmässig IRIX-Builds von meinem Zeug. So bleiben die beiden Versionen eng beieinander und ich muss selten viel Zeit für den Port aufwenden.

Naja, Mittagspause ist um, dann gehe ich mal wieder weitercoden...

Schönen Tag noch,
Tilmann

msalfer

  • Gast
Re: Eine harte Nuss für C++ Gurus
« Antwort #22 am: 22. April 2004, 20:44:33 »
Zitat
Da kann ich Dir nur beipflichten. Ich muss unter IRIX sogar mit dem dbx ran, weil der gdb bei Programmen mit POSIX threads crasht.


Ist es das gleiche Problem wie unter Linux? Da hatte doch die Glibc einen Bug, der das debuggen bei Verwendung von POSIX-Threads verhinderte. Ab einer bestimmten Version ist es dann wieder gegangen, dürfte wohl etwa ein Jahr her sein. Hat mich zumindest damals mächtig genervt.

cu,
Michael

Offline sgt_barnes

  • Mood Master
  • ****
  • Beiträge: 250
  • Der frühe Vogel fängt den Wurm, aber die zweite Maus kriegt den Käse!
    • Profil anzeigen
Re: Eine harte Nuss für C++ Gurus
« Antwort #23 am: 23. April 2004, 12:54:17 »
Zitat


Ist es das gleiche Problem wie unter Linux? Da hatte doch die Glibc einen Bug, der das debuggen bei Verwendung von POSIX-Threads verhinderte.



Ne, leider nicht. Der gdb mag unter IRIX wirklich nicht mit mit pthreads zusammen. Siehe:

http://freeware.sgi.com/Installable/gdb-5.3.html

Dummerweise habe ich das erst gelesen, nachdem ich ein paar Tage lang versucht habe, meine Software zu debuggen.

MfG,
Tilmann


majix

  • Gast
Re: Eine harte Nuss für C++ Gurus
« Antwort #24 am: 23. April 2004, 13:20:00 »
Schade, ich erinnere mich auch daran, dass ich beim Debuggen massiv Probleme wegen der pthreads hatte - keine Ahnung mehr, wie ich das Problem umgangen bin.

Aber alles in allem hatte ich eigentlich fast alles immer unter Windows programmiert, sogar die ganzen Fehler im Quelltext, die der gcc nicht mochte, hatte ich mit dem Visual Studio behoben, alles wieder auf die Octane kopiert und erneut gcc gestartet. So konnte ich die Arbeitszeit mit den GNU-Tools minimieren ;)

Was mich mal interessieren würde, wie ist das mit dem MipsPro? Ist das "nur" ein Compiler, oder sind da auch andere Entwicklungswerkzeuge dabei, wie eben zum Beispiel ein guter Debugger?

Grüße,
Kaya

Pinky

  • Gast
Re: Eine harte Nuss für C++ Gurus
« Antwort #25 am: 23. April 2004, 15:19:07 »
Zitat
Was mich mal interessieren würde, wie ist das mit dem MipsPro? Ist das "nur" ein Compiler, oder sind da auch andere Entwicklungswerkzeuge dabei, wie eben zum Beispiel ein guter Debugger?


Ja, ist dabei: Developer Magic/ Workshop

Aus den release notes:

Zitat
The four main WorkShop components are the debugger cvd, the static analyzer cvstatic, the performance analyzer cvperf, and the coverage analyzer, cvcov (also known as Tester). In addition, WorkShop also provides an annotated source code viewer, a build analyzer, online documentation and help        system.


Viele Gruesse
Roland

Brombaer

  • Gast
Re: Eine harte Nuss für C++ Gurus
« Antwort #26 am: 23. April 2004, 17:22:46 »
Apropos cvd,

bevor man den benutzt, sollte man sich dringend eine Dualhead-Maschine zulegen, um die vielen Fenster auch unterbringen zu können  8)

Beste Umgebung auf IRIX ist immer noch ddd in Kombination mit dbx.

Gruß

Matthias


Pinky

  • Gast
Re: Eine harte Nuss für C++ Gurus
« Antwort #27 am: 24. April 2004, 15:30:44 »
Und apropos Dev Workshop:
einige (fast alle) commandline-tools funktionieren auch ohne Workshop lizenz und sind brauchbar.
z.B.
cvbuild: zeigt eine graphische Darstellung der Targets eines  Makefiles -  ist wirklich brauchbar

cvmeter: zeigt allerhand Daten ueber einen laufenden Prozess - auch nicht schlecht

cvmake: einfach ein frontend zu make - ich habe es noch nie wirklich benutzt

ahja, und wer es installiert hat, sollte sich mal das tutorial zum Dev WorkShop ansehen - einfach z.B. cvd starten, die Lizenz-Info wegklicken und im Menue <Help> auf <Tutorial...> klicken. ist wirklich sehenswert - auch fuer Nichtprogrammierer :)

Gruesse
Roland
« Letzte Änderung: 24. April 2004, 15:36:24 von Pinky »

Offline sgt_barnes

  • Mood Master
  • ****
  • Beiträge: 250
  • Der frühe Vogel fängt den Wurm, aber die zweite Maus kriegt den Käse!
    • Profil anzeigen
Re: Eine harte Nuss für C++ Gurus
« Antwort #28 am: 26. April 2004, 13:27:17 »
Zitat


Beste Umgebung auf IRIX ist immer noch ddd in Kombination mit dbx.



Echt jetzt? Ich habe den ddd (unter Linux) vor Jahren mal ausprobiert und bin damals nicht wirklich glücklich geworden, weil er instabil war.

Aber mittlerweile ist das Teil dann wohl wieder einen neuen  Versuch wert! Werde ich gleich mal ausprobieren...

MfG,
Tilmann