Freigeisterhaus Foren-Übersicht
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   NutzungsbedingungenNutzungsbedingungen   BenutzergruppenBenutzergruppen   LinksLinks   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

C++
Gehe zu Seite Zurück  1, 2, 3, 4  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen   Drucker freundliche Ansicht    Freigeisterhaus Foren-Übersicht -> DAU's Paradise
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  

Ist das Thmena interessant?
Ja
68%
 68%  [ 15 ]
Nein
22%
 22%  [ 5 ]
weiß nix
9%
 9%  [ 2 ]
Stimmen insgesamt : 22

Autor Nachricht
siebenkäs
dauerhaft gesperrt



Anmeldungsdatum: 23.09.2005
Beiträge: 178

Beitrag(#529120) Verfasst am: 25.07.2006, 15:03    Titel: Antworten mit Zitat

Piwi hat folgendes geschrieben:
da steh ich nun ich armer Tor und bin genau so schlau als wie zuvor Verlegen



Wenn du nur auf Microsoftischen Sys arbeitest, dann C#. Effektiv und vom Zeitaufwand her schnell zu erlernen.
Palttformunabhängig hat sich bei mir Python durchgesetzt. Python kann alles, hat alles dabei und ist von vornherein als OOP konzipiert.

Aber auf Microsoft Plattformen bietet sich C# geradezu an.

Also, piwi, nicht kleckern sondern - klotzen!!!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Piwi
auf Wunsch deaktiviert



Anmeldungsdatum: 03.07.2006
Beiträge: 411

Beitrag(#529121) Verfasst am: 25.07.2006, 15:06    Titel: Antworten mit Zitat

Hmmm,
das hört sich jetzt aber sehr gut an (zumindest für ein blutiges Greenhorn).

Ich werd mal C# vormerken.
Beim nächsten Shoping in der Stadt schau ich mich mal um - kosten usw.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
thomentor
Dekadentbot



Anmeldungsdatum: 01.02.2006
Beiträge: 26
Wohnort: mobiler Unterdrückungspalast

Beitrag(#529141) Verfasst am: 25.07.2006, 15:44    Titel: Antworten mit Zitat

Piwi hat folgendes geschrieben:
Hmmm,
das hört sich jetzt aber sehr gut an (zumindest für ein blutiges Greenhorn).

Ich werd mal C# vormerken.
Beim nächsten Shoping in der Stadt schau ich mich mal um - kosten usw.


für den einstieg in C# empfehle ich Sharpdevelop - ist eine OpenSource IDE für C#,Vb.Net u.a.

Online Buch Visual CSharp zum Thema.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Doc Extropy
dauerhaft gesperrt



Anmeldungsdatum: 07.03.2006
Beiträge: 6149

Beitrag(#529175) Verfasst am: 25.07.2006, 16:42    Titel: Antworten mit Zitat

caballito hat folgendes geschrieben:
Doc Extropy hat folgendes geschrieben:
Piwi hat folgendes geschrieben:
Jetzt bin ich echt verunsichert was ich für eine Programmiersprache lernen soll?
Wie es scheint muß ich alle lernen, damit ich entscheiden kann welche für das jeweilige Problem am besten geeignet ist.

Da kommt freude auf.

Langeweile werde ich die nächsten 20 Jahre jedenfalls keine haben.


C#, glaubs mir. Geringster Lernaufwand, maximaler Effekt, maximale Bandbreite an Möglichkeiten.


Dass sich "geringster Lernaufwand" und "maximale Bandbreite" rein logisch ausschließen, ist dir schon klar?


Schließen sich nicht aus, weil man die APIs nie wirklich lernen muß, sondern eine (im Gegensatz zu z.B. Java, wo es meistens nicht mal Codebeispiele gibt und die Doku in Akademikersprache mit tausenden Wortneuschöpfungen geschrieben ist) hervorragende Doku hat.

Man muß bei C# ein paar Konzepte lernen, alles andere wird durch Betätigen von "F1" erledigt.

C++ ist Zeitverschwendung, außer für ein paar zeitkritische Bestandteile (z.B. eines Computerspiels).

Ich habe schon mal (mit nur ein paar Stunden Arbeit wohlgemerkt!) eine DOOM - 3D - Engine in C# unter Verwendung von DirectX 9.0, völlig objektorientiert, gebastelt, ohne vorher jemals mit DirectX 9.0 (meine Erfahrungen von früher stammen vom völlig anderen Programmiermodell von DirectX 5.0 und 6.0) gearbeitet zu haben.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Piwi
auf Wunsch deaktiviert



Anmeldungsdatum: 03.07.2006
Beiträge: 411

Beitrag(#529183) Verfasst am: 25.07.2006, 17:06    Titel: Antworten mit Zitat

Also das reicht, jetzt steht es fest C#
ich bedanke mich sehr freundlich bei allen, für die rege teilnahme - bussi Mit den Augen rollen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Antitheist
registrierter User



Anmeldungsdatum: 02.01.2006
Beiträge: 433

Beitrag(#529185) Verfasst am: 25.07.2006, 17:10    Titel: Antworten mit Zitat

Doc Extropy hat folgendes geschrieben:
Ich habe schon mal (mit nur ein paar Stunden Arbeit wohlgemerkt!) eine DOOM - 3D - Engine in C# unter Verwendung von DirectX 9.0, völlig objektorientiert, gebastelt, ohne vorher jemals mit DirectX 9.0 (meine Erfahrungen von früher stammen vom völlig anderen Programmiermodell von DirectX 5.0 und 6.0) gearbeitet zu haben.

Ohne Vorkenntnisse von DX9? Unglaublich. Das letzte Mal, dass ich etwas mit D3D zu tun hatte, war zu Zeiten von DirectX6 (glaube ich jedenfalls, dass es Version 6 war; das DX meine ich, wo man selbst den ganzen Quatsch mit den COM-Objekten noch per Hand machen musste), und das hat mir schon mehr als gereicht. Hab seither nur noch OpenGL für 3D-Zeugs verwendet, weil das hundertmal einfacher ist als D3D.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
thomentor
Dekadentbot



Anmeldungsdatum: 01.02.2006
Beiträge: 26
Wohnort: mobiler Unterdrückungspalast

Beitrag(#529191) Verfasst am: 25.07.2006, 17:22    Titel: Antworten mit Zitat

Antitheist hat folgendes geschrieben:
Doc Extropy hat folgendes geschrieben:
Ich habe schon mal (mit nur ein paar Stunden Arbeit wohlgemerkt!) eine DOOM - 3D - Engine in C# unter Verwendung von DirectX 9.0, völlig objektorientiert, gebastelt, ohne vorher jemals mit DirectX 9.0 (meine Erfahrungen von früher stammen vom völlig anderen Programmiermodell von DirectX 5.0 und 6.0) gearbeitet zu haben.

Ohne Vorkenntnisse? Unglaublich. Das letzte Mal, dass ich etwas mit D3D zu tun hatte, war zu Zeiten von DirectX6 (glaube ich jedenfalls, dass es Version 6 war; das DX meine ich, wo man selbst den ganzen Quatsch mit den COM-Objekten noch per Hand machen musste), und das hat mir schon mehr als gereicht. Hab seither nur noch OpenGL für 3D-Zeugs verwendet, weil das hundertmal einfacher ist als D3D.


Seitdem hat sich IMHO die D3D API stark verbessert- Und dann kommt es natürlich
noch auf das Framework an dass den D3D kram kapselt zwinkern .
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Antitheist
registrierter User



Anmeldungsdatum: 02.01.2006
Beiträge: 433

Beitrag(#529194) Verfasst am: 25.07.2006, 17:30    Titel: Antworten mit Zitat

thomentor hat folgendes geschrieben:
Seitdem hat sich IMHO die D3D API stark verbessert- Und dann kommt es natürlich noch auf das Framework an dass den D3D kram kapselt zwinkern .

Ein Framework, das D3D kapselt? Nein, sowas gabs damals noch nicht, als ich D3D noch verwendete: nur die puren API-Funktionen übers COM-Interface. Und das war - soweit ich mich erinnern kann - grauenhaft. Da konnte man nicht einmal direkt mit D3D anfangen, sondern musste sogar noch DirectDraw-Devices und -Surfaces, -Clipper, etc erzeugen, bevor man überhaupt erst zu D3D vordringen konnte...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
pyrrhon
registrierter User



Anmeldungsdatum: 22.05.2004
Beiträge: 8770

Beitrag(#529196) Verfasst am: 25.07.2006, 17:37    Titel: Antworten mit Zitat

Antitheist hat folgendes geschrieben:
Doc Extropy hat folgendes geschrieben:
Ich habe schon mal (mit nur ein paar Stunden Arbeit wohlgemerkt!) eine DOOM - 3D - Engine in C# unter Verwendung von DirectX 9.0, völlig objektorientiert, gebastelt, ohne vorher jemals mit DirectX 9.0 (meine Erfahrungen von früher stammen vom völlig anderen Programmiermodell von DirectX 5.0 und 6.0) gearbeitet zu haben.

Ohne Vorkenntnisse von DX9? Unglaublich.

Unglaublich trifft es recht gut. Ich glaube es nicht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
caballito
zänkisches Monsterpony



Anmeldungsdatum: 16.07.2003
Beiträge: 12112
Wohnort: Pet Sematary

Beitrag(#529200) Verfasst am: 25.07.2006, 17:44    Titel: Antworten mit Zitat

Doc Extropy hat folgendes geschrieben:
caballito hat folgendes geschrieben:
Dass sich "geringster Lernaufwand" und "maximale Bandbreite" rein logisch ausschließen, ist dir schon klar?


Schließen sich nicht aus, weil man die APIs nie wirklich lernen muß, sondern eine (im Gegensatz zu z.B. Java, wo es meistens nicht mal Codebeispiele gibt und die Doku in Akademikersprache mit tausenden Wortneuschöpfungen geschrieben ist) hervorragende Doku hat.


Dann hat man aber die API nicht gelernt => man kann die Möglichkeiten der API nicht nutzen, die über die Standardkochrezepte hinausgehen.

OK, das entspricht natürlich der M$-Philosophie: Man kriegt mit wenig Aufwand was hin, vorausgesetzt, man überlässt das Denken der Maschine und versucht nicht eigene Feinkonzepte zu realisieren.


Doc Extropy hat folgendes geschrieben:
Man muß bei C# ein paar Konzepte lernen, alles andere wird durch Betätigen von "F1" erledigt.

Das könnte man im Prinzip über C++ natürlich so ähnlich sagen. Auch da lernt man nicht erst die Möglichkeiten der STL auswendig udn fängt dann an zu programmieren, sondern man lernt das nötigste und den Rest schlägt man nach, wenn mans braucht.

Doc Extropy hat folgendes geschrieben:
C++ ist Zeitverschwendung, außer für ein paar zeitkritische Bestandteile (z.B. eines Computerspiels).


Es soll Leute geben, die Coputer zu was anderem als zum spielen benutzen.

Doc Extropy hat folgendes geschrieben:
Ich habe schon mal (mit nur ein paar Stunden Arbeit wohlgemerkt!) eine DOOM - 3D - Engine in C# unter Verwendung von DirectX 9.0, völlig objektorientiert, gebastelt, ohne vorher jemals mit DirectX 9.0 (meine Erfahrungen von früher stammen vom völlig anderen Programmiermodell von DirectX 5.0 und 6.0) gearbeitet zu haben.


Wenn du damit ein komplexes System interagierender Hintrergrundprozesse auf einem Unix-Server aufsetzt - dann bist du richtig gut.

Aber Unix ist ja auch überflüssig, da läuft ja nicht mal DOOM drauf ...
_________________
Die Gedanken sind frei.

Aber nicht alle Gedanken wissen das.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
siebenkäs
dauerhaft gesperrt



Anmeldungsdatum: 23.09.2005
Beiträge: 178

Beitrag(#529201) Verfasst am: 25.07.2006, 17:51    Titel: Antworten mit Zitat

Warum fällt hier eigentlich kein Wort über - Delphi!

Delphi wäre doch eigentlich die Idealste aller Programmiersprachen, wenn, ja wenn nicht die Entwicklungsumgebung etwas teuer wäre.
Spieleprogrammierung und 3D, das lernte ich damals "unter" Delphi 6 und keine Sprache lernte ich leichter, im Netz gibt es sehr gute Seiten und eine riesige Fangemeinde garantiert fast immer eine Lösung zu den täglichen Problemen.

Warum eigentlich nicht Delphi?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
thomentor
Dekadentbot



Anmeldungsdatum: 01.02.2006
Beiträge: 26
Wohnort: mobiler Unterdrückungspalast

Beitrag(#529202) Verfasst am: 25.07.2006, 17:52    Titel: Antworten mit Zitat

Antitheist hat folgendes geschrieben:
thomentor hat folgendes geschrieben:
Seitdem hat sich IMHO die D3D API stark verbessert- Und dann kommt es natürlich noch auf das Framework an dass den D3D kram kapselt zwinkern .

Ein Framework, das D3D kapselt? Nein, sowas gabs damals noch nicht, als ich D3D noch verwendete: nur die puren API-Funktionen übers COM-Interface. Und das war - soweit ich mich erinnern kann - grauenhaft. Da konnte man nicht einmal direkt mit D3D anfangen, sondern musste sogar noch DirectDraw-Devices und -Surfaces, -Clipper, etc erzeugen, bevor man überhaupt erst zu D3D vordringen konnte...


Das muss man heute im prinzip auch noch machen- Es gibt beim SDK aber eine abstrakte Applikationsklasse welche man einfach nur noch abzuleiten braucht. Da sind dann alle wichtigen
Objekte schon Initialisiert und man braucht sich nur noch um diverse Events zu kümmern.
( Init/FrameMove/Render/Destroy )
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Antitheist
registrierter User



Anmeldungsdatum: 02.01.2006
Beiträge: 433

Beitrag(#529203) Verfasst am: 25.07.2006, 17:53    Titel: Antworten mit Zitat

siebenkäs hat folgendes geschrieben:
Warum eigentlich nicht Delphi?

Pascal? Bitte nicht!


thomentor hat folgendes geschrieben:
Das muss man heute im prinzip auch noch machen- Es gibt beim SDK aber eine abstrakte Applikationsklasse welche man einfach nur noch abzuleiten braucht. Da sind dann alle wichtigen
Objekte schon Initialisiert und man braucht sich nur noch um diverse Events zu kümmern.
( Init/FrameMove/Render/Destroy )

Ich glaube, dass ich mich wohl mit D3D nie mehr versöhnen werde, das hat mich damals dermaßen traumatisiert. zwinkern Übrigens, gibt's mittlerweile bei D3D sowas Elegantes wie den Matrix-Stack bei OGL? Das habe ich damals auch immer am meisten vermisst!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
thomentor
Dekadentbot



Anmeldungsdatum: 01.02.2006
Beiträge: 26
Wohnort: mobiler Unterdrückungspalast

Beitrag(#529205) Verfasst am: 25.07.2006, 18:04    Titel: Antworten mit Zitat

Antitheist hat folgendes geschrieben:
siebenkäs hat folgendes geschrieben:
Warum eigentlich nicht Delphi?

Pascal? Bitte nicht!


Lachen

Antitheist hat folgendes geschrieben:

thomentor hat folgendes geschrieben:
Das muss man heute im prinzip auch noch machen- Es gibt beim SDK aber eine abstrakte Applikationsklasse welche man einfach nur noch abzuleiten braucht. Da sind dann alle wichtigen
Objekte schon Initialisiert und man braucht sich nur noch um diverse Events zu kümmern.
( Init/FrameMove/Render/Destroy )

Ich glaube, dass ich mich wohl mit D3D nie mehr versöhnen werde, das hat mich damals dermaßen traumatisiert. Übrigens, gibt's mittlerweile bei D3D sowas Elegantes wie den Matrix-Stack bei OGL? Das habe ich damals auch immer am meisten vermisst!


Nun, ich muss zugeben dass ich mir directx9 gerade erst runtergeladen habe und deshalb bei den neusten Entwicklungen nicht ganz firm bin (nur bis dx8)- Wann und wofür wird denn ein Matrixstack eingesetzt?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Antitheist
registrierter User



Anmeldungsdatum: 02.01.2006
Beiträge: 433

Beitrag(#529207) Verfasst am: 25.07.2006, 18:09    Titel: Antworten mit Zitat

thomentor hat folgendes geschrieben:
Wann und wofür wird denn ein Matrixstack eingesetzt?

Nun, ein Matrixstack dient einfach nur dazu, eine Hierarchie an 3D-Transformationen zu erstellen (glPushMatrix() und glPopMatrix() wären die entsprechenden Funktionen bei OGL). Aber wie gesagt, sowas gab's damals bei D3D auch gar nicht, musste man also erst selbst eine Klasse schreiben, die das macht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Doc Extropy
dauerhaft gesperrt



Anmeldungsdatum: 07.03.2006
Beiträge: 6149

Beitrag(#529217) Verfasst am: 25.07.2006, 18:26    Titel: Antworten mit Zitat

viator hat folgendes geschrieben:
Antitheist hat folgendes geschrieben:
Doc Extropy hat folgendes geschrieben:
Ich habe schon mal (mit nur ein paar Stunden Arbeit wohlgemerkt!) eine DOOM - 3D - Engine in C# unter Verwendung von DirectX 9.0, völlig objektorientiert, gebastelt, ohne vorher jemals mit DirectX 9.0 (meine Erfahrungen von früher stammen vom völlig anderen Programmiermodell von DirectX 5.0 und 6.0) gearbeitet zu haben.

Ohne Vorkenntnisse von DX9? Unglaublich.

Unglaublich trifft es recht gut. Ich glaube es nicht.


Ist halb so wild. Microsoft schmeißt tonnenweise Codebeispiele zum SDK dazu, man bekommt gleich eine Typenbibliothek für .NET und die Mathematik dahinter habe ich schon vor Jahren als ich noch Demos gebastelt habe gelernt. Schulterzucken

Wir reden hier über eine MODERNE Sprache und nicht das, was Linux & Java - Typen unter "Programmieren" verstehen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Antitheist
registrierter User



Anmeldungsdatum: 02.01.2006
Beiträge: 433

Beitrag(#529218) Verfasst am: 25.07.2006, 18:28    Titel: Antworten mit Zitat

Doc Extropy hat folgendes geschrieben:
Wir reden hier über eine MODERNE Sprache und nicht das, was Linux & Java - Typen unter "Programmieren" verstehen.

Jetzt bitte nicht persönlich werden! zynisches Grinsen
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Doc Extropy
dauerhaft gesperrt



Anmeldungsdatum: 07.03.2006
Beiträge: 6149

Beitrag(#529219) Verfasst am: 25.07.2006, 18:28    Titel: Antworten mit Zitat

Antitheist hat folgendes geschrieben:
Doc Extropy hat folgendes geschrieben:
Ich habe schon mal (mit nur ein paar Stunden Arbeit wohlgemerkt!) eine DOOM - 3D - Engine in C# unter Verwendung von DirectX 9.0, völlig objektorientiert, gebastelt, ohne vorher jemals mit DirectX 9.0 (meine Erfahrungen von früher stammen vom völlig anderen Programmiermodell von DirectX 5.0 und 6.0) gearbeitet zu haben.

Ohne Vorkenntnisse von DX9? Unglaublich. Das letzte Mal, dass ich etwas mit D3D zu tun hatte, war zu Zeiten von DirectX6 (glaube ich jedenfalls, dass es Version 6 war; das DX meine ich, wo man selbst den ganzen Quatsch mit den COM-Objekten noch per Hand machen musste), und das hat mir schon mehr als gereicht. Hab seither nur noch OpenGL für 3D-Zeugs verwendet, weil das hundertmal einfacher ist als D3D.


Du kommst, wenn Du C# und die DirectX Managed API verwendest, gar nicht mehr in Kontakt mit dem COM - Scheiß (der damals tatsächlich etwas schwierig zu handhaben war, ich habe mir da mit einem Thin Layer beholfen, den ich zwischen DirectX und meine eigenen Programme gelegt habe).
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
thomentor
Dekadentbot



Anmeldungsdatum: 01.02.2006
Beiträge: 26
Wohnort: mobiler Unterdrückungspalast

Beitrag(#529220) Verfasst am: 25.07.2006, 18:30    Titel: Antworten mit Zitat

Antitheist hat folgendes geschrieben:
thomentor hat folgendes geschrieben:
Wann und wofür wird denn ein Matrixstack eingesetzt?

Nun, ein Matrixstack dient einfach nur dazu, eine Hierarchie an 3D-Transformationen zu erstellen (glPushMatrix() und glPopMatrix() wären die entsprechenden Funktionen bei OGL). Aber wie gesagt, sowas gab's damals bei D3D auch gar nicht, musste man also erst selbst eine Klasse schreiben, die das macht.


naja, da würde ja das stack Template für ausreichen
Code:
stack<D3DMatrix> m_mstack;
oder so ähnlich.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Antitheist
registrierter User



Anmeldungsdatum: 02.01.2006
Beiträge: 433

Beitrag(#529222) Verfasst am: 25.07.2006, 18:33    Titel: Antworten mit Zitat

thomentor hat folgendes geschrieben:
naja, da würde ja das stack Template für ausreichen
Code:
stack<D3DMatrix> m_mstack;
oder so ähnlich.

Nee, der STL-Stack-Container reicht nicht ganz aus. Es müssen ja intern die Matrizen im Stack auch multipliziert werden, damit man den gewünschten Effekt erhält (man braucht ja nicht nur die oberste Matrix als aktuelle Transformation, sondern das Produkt aller sich auf dem Stack befindlichen Matrizen).
Ist zwar trotzdem nicht schwer, so eine Klasse zu erstellen, aber ich find's einfach schöner, wenn die API sowas schon mitliefert.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
caballito
zänkisches Monsterpony



Anmeldungsdatum: 16.07.2003
Beiträge: 12112
Wohnort: Pet Sematary

Beitrag(#529226) Verfasst am: 25.07.2006, 18:48    Titel: Antworten mit Zitat

Doc Extropy hat folgendes geschrieben:
Wir reden hier über eine MODERNE Sprache und nicht das, was Linux & Java - Typen unter "Programmieren" verstehen.


Ich dachte, wir reden hier über PROGRAMMIERSPRACHEN und nicht das, was Microsoft & Windows-Junkies unter "Programmieren" verstehen?
_________________
Die Gedanken sind frei.

Aber nicht alle Gedanken wissen das.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Rene Hartmann
Säkular? Na klar!



Anmeldungsdatum: 17.07.2003
Beiträge: 1404
Wohnort: Rhein-Main

Beitrag(#529230) Verfasst am: 25.07.2006, 18:50    Titel: Antworten mit Zitat

caballito hat folgendes geschrieben:

Das schwierige an OOP ist nicht die OOP, sondern der völlig verquaste OOP-Jargon, mit dem sich OOP-Apostel wohl wichtig machen wollen, und den halt kein Mensch versteht. Genau das aber ist im C++-Umfeld zuweilen in etwas gemäßigterer Form anzutreffen, so dass man tatsächlich Chancen hat, was zu verstehen.


So ist es. Wobei der Jargon nicht nur verquast, sondern auch zum großen Teil inkonsistent ist. Hat bei mir eine Ewigkeit gedauert, bis ich den Humbug durchschaut habe, aber seitdem meide ich OO-Sprachen wo es geht.
_________________
"Es kommt darauf an, zur Gruppe der Individualisten zu gehören"
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
pyrrhon
registrierter User



Anmeldungsdatum: 22.05.2004
Beiträge: 8770

Beitrag(#529232) Verfasst am: 25.07.2006, 18:53    Titel: Antworten mit Zitat

Doc Extropy hat folgendes geschrieben:
Wir reden hier über eine MODERNE Sprache und nicht das, was Linux & Java - Typen unter "Programmieren" verstehen.

Nein, wir reden hier über C#, über eine Sprache, die Konzepte aus der Steinzeit reanimiert hat und diese als großartige Neuerungen anpreist. Der Unterschied zu den anderen ist der, dass Microsoft diese Konzepte besonders buggy implementiert hat. Wenn Du eine moderne Sprache möchtest, dann programmiere lieber mit anderen Sprachen.

Doc Extropy hat folgendes geschrieben:
Microsoft schmeißt tonnenweise Codebeispiele zum SDK dazu, man bekommt gleich eine Typenbibliothek für .NET und die Mathematik dahinter habe ich schon vor Jahren als ich noch Demos gebastelt habe gelernt.

Ich kenne C# recht gut und arbeite tagtäglich damit. Dein präpubertäres Imponiergehabe beeindruckt mich nicht, weil ich recht gut einschätzen kann, was möglich ist und was nicht.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Rene Hartmann
Säkular? Na klar!



Anmeldungsdatum: 17.07.2003
Beiträge: 1404
Wohnort: Rhein-Main

Beitrag(#529233) Verfasst am: 25.07.2006, 18:55    Titel: Antworten mit Zitat

Antitheist hat folgendes geschrieben:
thomentor hat folgendes geschrieben:
Um CPP zu erlernen empfiehlt es sich erstmal mit C anzufangen.
Erst die stählerne Disziplinschule durch Kernigham & Ritchie
macht den wahren Guru – Das gekasperl um und mit „OO“ kann
man dann immer noch (mit)machen…

Schon richtig, obwohl man erwähnen muss, dass manche legitime Programmiertechnik in C dann später bei der objektorientierten oder generischen Programmierung unter C++ schnell zum Design-Anti-Pattern verführen kann. Lieber gleich mit einer reinen OO-Sprache anfangen, z.B. Java.


Unter einer reinen OO-Sprache stelle ich mir aber etwas anderes vor. Die Sonderstellung der eingebauten Typen int, float usw. disqualifiziert Java in dieser Hinsicht.
_________________
"Es kommt darauf an, zur Gruppe der Individualisten zu gehören"
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
thomentor
Dekadentbot



Anmeldungsdatum: 01.02.2006
Beiträge: 26
Wohnort: mobiler Unterdrückungspalast

Beitrag(#529238) Verfasst am: 25.07.2006, 18:58    Titel: Antworten mit Zitat

Antitheist hat folgendes geschrieben:
thomentor hat folgendes geschrieben:
naja, da würde ja das stack Template für ausreichen
Code:
stack<D3DMatrix> m_mstack;
oder so ähnlich.

Nee, der STL-Stack-Container reicht nicht ganz aus. Es müssen ja intern die Matrizen im Stack auch multipliziert werden, damit man den gewünschten Effekt erhält (man braucht ja nicht nur die oberste Matrix als aktuelle Transformation, sondern das Produkt aller sich auf dem Stack befindlichen Matrizen).
Ist zwar trotzdem nicht schwer, so eine Klasse zu erstellen, aber ich find's einfach schöner, wenn die API sowas schon mitliefert.


Da würde aber auch eine Einheitsmatrix reichen auf die alle gewünschten Matrizzen aufmultipliziert werden-
Die Frage ist wann und in welcher reihenfolge man welche Transformation benötigt.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
caballito
zänkisches Monsterpony



Anmeldungsdatum: 16.07.2003
Beiträge: 12112
Wohnort: Pet Sematary

Beitrag(#529239) Verfasst am: 25.07.2006, 18:59    Titel: Antworten mit Zitat

Rene Hartmann hat folgendes geschrieben:
caballito hat folgendes geschrieben:

Das schwierige an OOP ist nicht die OOP, sondern der völlig verquaste OOP-Jargon, mit dem sich OOP-Apostel wohl wichtig machen wollen, und den halt kein Mensch versteht. Genau das aber ist im C++-Umfeld zuweilen in etwas gemäßigterer Form anzutreffen, so dass man tatsächlich Chancen hat, was zu verstehen.


So ist es. Wobei der Jargon nicht nur verquast, sondern auch zum großen Teil inkonsistent ist. Hat bei mir eine Ewigkeit gedauert, bis ich den Humbug durchschaut habe, aber seitdem meide ich OO-Sprachen wo es geht.


Meinst du damit spezielle OO-Sprachen oder OOP generell?

C++ ist ja in dem Sinne keine OO-Sprache (weswegen viel OOP-ler es ja auch nicht mögen - damit kann ja ganz normal programmieren ... Bitte nicht!) - und gerade das liebe ich daran.

Ich betrachte es perönlich ja als Vorteil, über C++ an die OOP geraten sein, eben weil da die Übersetzung in normale Sprache so nahe liegt.
_________________
Die Gedanken sind frei.

Aber nicht alle Gedanken wissen das.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Antitheist
registrierter User



Anmeldungsdatum: 02.01.2006
Beiträge: 433

Beitrag(#529240) Verfasst am: 25.07.2006, 19:03    Titel: Antworten mit Zitat

thomentor hat folgendes geschrieben:
Da würde aber auch eine Einheitsmatrix reichen auf die alle gewünschten Matrizzen aufmultipliziert werden-

Schon richtig, am Anfang ist ja auch nur die Einheitsmatrix auf dem Stack... Aber das Prinzip das Stacks ist hundermal eleganter.

thomentor hat folgendes geschrieben:
Die Frage ist wann und in welcher reihenfolge man welche Transformation benötigt.

Sagen wir, du willst z.B. einen Arm animieren. Dann nimmst du zuerst die Transformationsmatrix für den Arm, renderst diesen, dann pusht du die Matrix für die Hand auf den Stack, renderst diese, und zum Schluß pushst du die Matrix für die Finger.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
thomentor
Dekadentbot



Anmeldungsdatum: 01.02.2006
Beiträge: 26
Wohnort: mobiler Unterdrückungspalast

Beitrag(#529247) Verfasst am: 25.07.2006, 19:08    Titel: Antworten mit Zitat

Antitheist hat folgendes geschrieben:
thomentor hat folgendes geschrieben:
Da würde aber auch eine Einheitsmatrix reichen auf die alle gewünschten Matrizzen aufmultipliziert werden-

Am Anfang ist ja auch nur die Einheitsmatrix auf dem Stack...

thomentor hat folgendes geschrieben:
Die Frage ist wann und in welcher reihenfolge man welche Transformation benötigt.

Sagen wir, du willst z.B. einen Arm animieren. Dann nimmst du zuerst die Transformationsmatrix für den Arm, renderst diesen, dann pusht du die Matrix für die Hand auf den Stack, renderst diese, und zum Schluß pushst du die Matrix für die Finger.


Ja genau- bei der Reihenfolge kann man sich den Speicherplatz für den Stack sparen. Da würde
es eine Temporäre Matrix tun. Der Stack wird erst dann sinnvoll wenn man die vorherigen
Transformationen zurückholen will (mittels pop)
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Antitheist
registrierter User



Anmeldungsdatum: 02.01.2006
Beiträge: 433

Beitrag(#529248) Verfasst am: 25.07.2006, 19:10    Titel: Antworten mit Zitat

thomentor hat folgendes geschrieben:
Ja genau- bei der Reihenfolge kann man sich den Speicherplatz für den Stack sparen. Da würde es eine Temporäre Matrix tun. Der Stack wird erst dann sinnvoll wenn man die vorherigen Transformationen zurückholen will (mittels pop)

Ja, das ist klar. Aber die ursprüngliche Transformation muss man nach dem Rendern von Objekten sowieso immer zurückholen, da ja meist mehrere Sachen gerendert werden müssen.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Rene Hartmann
Säkular? Na klar!



Anmeldungsdatum: 17.07.2003
Beiträge: 1404
Wohnort: Rhein-Main

Beitrag(#529251) Verfasst am: 25.07.2006, 19:21    Titel: Antworten mit Zitat

caballito hat folgendes geschrieben:
Rene Hartmann hat folgendes geschrieben:
caballito hat folgendes geschrieben:

Das schwierige an OOP ist nicht die OOP, sondern der völlig verquaste OOP-Jargon, mit dem sich OOP-Apostel wohl wichtig machen wollen, und den halt kein Mensch versteht. Genau das aber ist im C++-Umfeld zuweilen in etwas gemäßigterer Form anzutreffen, so dass man tatsächlich Chancen hat, was zu verstehen.


So ist es. Wobei der Jargon nicht nur verquast, sondern auch zum großen Teil inkonsistent ist. Hat bei mir eine Ewigkeit gedauert, bis ich den Humbug durchschaut habe, aber seitdem meide ich OO-Sprachen wo es geht.


Meinst du damit spezielle OO-Sprachen oder OOP generell?


OOP generell mit der Einschränkung, dass abstrakte Datentypen eine vernünftige Sache sind. Alle anderen OOP-Konzepte (insbesondere Objektidentität und Vererbung durch Erweiterung) sind mindestens zweifelhaft.

Interessant übrigens, dass die Vererbung über Erweiterung in Java mittlerweile kritisch gesehen wird (Irgendwo gibt's einen Text mit dem Titel "extends considered harmful", bin jetzt zu faul zum Suchen)

Zitat:

C++ ist ja in dem Sinne keine OO-Sprache (weswegen viel OOP-ler es ja auch nicht mögen - damit kann ja ganz normal programmieren ... Bitte nicht!) - und gerade das liebe ich daran.


OK, aber dann hat man ja im Grunde eine Art C. Dann nehme ich lieber gleich ANSI C, das spart die C++-Runtime.
_________________
"Es kommt darauf an, zur Gruppe der Individualisten zu gehören"
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen   Drucker freundliche Ansicht    Freigeisterhaus Foren-Übersicht -> DAU's Paradise Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite Zurück  1, 2, 3, 4  Weiter
Seite 3 von 4

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.



Impressum & Datenschutz


Powered by phpBB © 2001, 2005 phpBB Group