c# oder doch lieber c++?

07/02/2008 20:14 leg0las#1
Hi !

Ich programmiere jetzt seit ca. einem Jahr in C# und überlege auf c++ umzusteigen, da ich gehört hab dass (u.a. wegen performancegründen) programme und spiele fast ausschließlich in c++ geschrieben werden.

Und die nächste frage ist, wie ich am besten weitermachen kann, wenn ich die "basics" ganz gut drauf habe.. die meisten tutorials im internet sind irgendwie ab einem bestimmten punkt zuende .. wie kann ich weitermachen? Am liebsten wär mir programmierung in richtung spiele entwicklung.. oder ist es besser wenn man sich eher auf softwareentwicklung spezialisiert(bessere möglichkeiten auf einen arbeitsplatz?)

ich hab mir schonmal tutorials zu spieleentwicklung angeguckt aber das sind dann solche wie "copy&paste this code..then copy&paste this.." aber wie man jetzt auf "((mouseX-mouseY)/vector3[i/pi*0.4))/cameraX-timesincelastframe*.5f" kommt um irgendwas zu bewirken wird nirgends beschrieben

hoffe das waren genug infos ^^
07/02/2008 21:47 mr.rattlz#2
Quote:
Originally Posted by leg0las View Post
ich hab mir schonmal tutorials zu spieleentwicklung angeguckt aber das sind dann solche wie "copy&paste this code..then copy&paste this.." aber wie man jetzt auf "((mouseX-mouseY)/vector3[i/pi*0.4))/cameraX-timesincelastframe*.5f" kommt um irgendwas zu bewirken wird nirgends beschrieben

hoffe das waren genug infos ^^
Das sieht für mich nach Mathematik aus würde ich sagen, sowas sollte man in der Schule lernen ;)
07/02/2008 23:50 Term!nX#3
Keine Ahnung, es gibt wahrscheinlich nichts was C# nicht kann, C++ aber wohl. Jedenfalls nicht, dass ich wüsste. Du kannst die ganze WinAPI in C# benutzen.
Also ich programmier jetzt schon seit nem Jahr glaube ich in C#, am Anfang hab ich auch immer C++ dabei gelernt, aber irgendwann habe ich mehr mit C# weiter gemacht, weil ich es angenehmer fand/find. Auch die GUI-Programmierung (sehr spannende und interessant Sache) habe ich nur in C# gemacht, am Anfang isses echt bisschen kompliziert, so wars für mich jedenfalls, aber nach ner Zeit machts einfach öfter Klick! und man versteht das System so langsam.
zB einfach Trainer, oder Testprogramme um MemoryReads/writes durchzuführen mach ich jetzt in C++, da kann man sich immer das lästige DllImport sparen.
Schau einfach mal in C++ rein. Es ändert sich ja letzendlich nicht viel.

Ach übrigens, hatten jetzt ein paar Menschen von CSB-systems in der Schule, da ist in der Ausbildung C++ auf jeden Fall Pflicht. Ich weiss nicht, wie es in anderen Unternehmen aussieht.
07/03/2008 08:20 Bosin#4
Hallo leg0las,

bei der Auswahl der Programmiersprache solltest du dich auf jeden Fall fragen, was du nun Programmieren möchtest.

Wenn du einfach ein Programm schreiben möchtest, welches mit vielen Elementen des Windows GUI arbeitet, dann ist C# die erste Wahl, da das entwerfen eines GUIs ( mithilfe der gegebenen Controls ) hier extrem einfach ist.

Für alles andere solltest du erst überlegen, ob du dein Ziel mit deinen Kenntnissen in deiner Lieblingssprache auch durchsetzen kannst und ob es nicht einfacher wäre, das Ganze in C++ oder einer anderen Sprache zu schreiben.

Ich hoffe, dass ich dir etwas geholfen hab.
07/03/2008 21:36 0x15#5
Spieleprogrammierung, Serverapplikationen, normale Applikationen sollten unter C# kein Problem für die Sprache darstellen. Mit Sachen wie Managed DirectX ist die .NET Umgebung gut bedient, auch sollte man XNA nicht aus den Augen lassen, zumal damit auch für die Xbox 360 programmiert werden kann.

Systemnahe Programmierung ist mit den .NET Sprachen nicht möglich. Wenn du z.B. Treiber programmieren willst oder Sachen wie Hooking und Code Injection praktizieren willst wäre C/C++ sehr zu empfehlen. Auch ist es in C/C++ wesentlich einfacher ASM-Code zu integrieren (inline-asm z.B.). Aber genau das sind dann alles Sachen wo du (wie Bosin schon sagte) dich selbst fragen musst, was genau du eigentlich machen willst.
Natürlich kannst du auch den Rest (Spieleprogrammierung, Serverprogrammierung und alles alles andere) auch in C/C++ umsetzen.
07/04/2008 18:37 leg0las#6
hi, erstmal danke für die antworten!

am liebsten wäre mir programmierung in richtung spieleprogrammierung, aber ich weiss nicht wie es da mit beruflicher zukunft aussieht (bei dem momentanen stand in deutschland..)

ich hab gelesen, dass man für die entwicklung zum spieleprogrammierer am besten anfängt, in irgendwelchen kleinen teams, projekte zu starten

naja ich hab mir jetzt erstmal bücher geholt und werde die ein paar mal durchwälzen^^

Quote:
Originally Posted by mr.rattlz View Post
Das sieht für mich nach Mathematik aus würde ich sagen, sowas sollte man in der Schule lernen ;)
in der schule lernt man rechnen, keine mathematik meiner meinung nach ;)
ich glaube zumindest das unser jetziges thema " kurvendiskussion " mir nicht groß helfen wird, die mathematik von 3d programmierung zu verstehen
07/04/2008 21:21 Obilee#7
Back to teh roots, assambler <3

Also ich Persönlich komme mit c++ besser aus als mit C# ka warum, wahrscheinlich weil ich c++ von Anfang an kenne und damit Arbeite.

Wenn du zur Spieleentwicklung willst reicht C# natürlich nicht aus, es gibt so ne Privatschule in Berlin welche Spieleentwicklung lehrt und auch sehr gut ist. Dementsprechend kostet es auch leider etwas. Hab selber ne Zeit lang überlegt dahin zu gehn hab mich aber eher in die Design Richtung entschieden ( 3D Animationen usw. ) das kann man immer gebrauchen und nicht nur in einer Branche sondern eigenlich überall (Kinofilme, Werbung, Games, und für Bau Projekte damit man sieht wie es mal Aussehen wird ).
07/05/2008 08:54 0x15#8
Quote:
Originally Posted by ObiLee View Post
Wenn du zur Spieleentwicklung willst reicht C# natürlich nicht aus
Natürlich reicht es aus, wieso auch nicht ?
Ja C++ ist universeller, aber C# würde für den Eigengebrauch völlig ausreichen.

Zum Thema Privatschule : GamesAcademy, kostet dich iwas über 800€/Monat wenn du den Kurs 3D-Programmierer belegst.

Zum Thema Brauchbarkeit : Natürlich sind 3D-Programmierer gefragt. Spielefirmen suchen ständig begabte Leute, man sollte sich einfach mal auf deren Seiten umgucken, dort sind sogar meistens Stellen ausgeschrieben. Naja und was glaubst du womit ein 3D-Animator bzw 2D/3D-Operator arbeitet ? Und wer diese Software denn programmiert ;D ?

@leg0las: Naja Mathematik ist der Hauptbestandteil bei der 3D-Programmierung. Da geht nichts ohne Mathe. Daher sollte man da schon etwas fitter drin sein.

Berufliche Situation in Deutschland ist für mich wie folgt : Ohne Kontakte oder vernünftiges Anschauungsmaterial kommste nirgends hin. Also entweder kennst du wen, der wen kennt. Oder du startest wie du schon sagtest "eigene kleine Projekte" und programmierst einfach drauf los. So hast du schonmal eine gute Grundlage mit der du dich irgendwo (wofürauchimmer) bewerben kannst. Eventuell sollte man auch in Betracht ziehen ein Studium in Informatik zu absolvieren. Da werden u.a. Mathematikkenntnisse "aufgefrischt" und neue Bereiche in Sachen theoretische/angewandte Informatik umschlossen. Aber ich denk mal bis dahin hast du noch etwas Zeit.
07/05/2008 15:43 ~Yuki~#9
Also leute hoffentlich störts nicht dass ich hier poste und keinen neuen thread aufmache...
Wer von euch kann mir helfen C# zu lernen eigentlich nur um nen Conqueronline Server zu coden sonst nix wenns geht :P
07/05/2008 19:49 Coksnuss#10
Quote:
Originally Posted by lolmaster123 View Post
Also leute hoffentlich störts nicht dass ich hier poste und keinen neuen thread aufmache...
Wer von euch kann mir helfen C# zu lernen eigentlich nur um nen Conqueronline Server zu coden sonst nix wenns geht :P
Na wenns weiter nichts ist.....

Das ist ein bsischen mehr als du vielleicht denkst....
Such bei Google doch einfach nach C# Network, da findest du Tutorials die du als Grundlage nutzen kannst
07/06/2008 07:04 0x15#11
Naja ich find man sollte erstmal allgeimen C# lernen. Und dann mit C# Socket-Tutorials weitermachen.
Zu C# gibts auch glaub ich noch n gutes openbook bei [Only registered and activated users can see links. Click Here To Register...]
Weiterhin kann ich die Seite [Only registered and activated users can see links. Click Here To Register...] empfehlen, dort findet man sehr gute Tutorials zu vielen Programmiersprachen.
07/06/2008 18:38 mr.rattlz#12
Noch etwas Off Topic: Bei mir an der Uni gibt es einen Informatikstudiengang mit dem Namen Computervisualistik. Das was man da lernt ist zum Spieleprogrammieren eine recht gute Voraussetzung würde ich sagen. Wenn ich mich recht entsinne haben 1 oder 2 Leute von Crytek das auch in Koblenz studiert.