Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Anonymous

unregistriert

1

13.12.2008, 19:32

Kurze Frage: Wie lange codest du schon C? So Anzahl tagemäßig. Bitte ehrliche Antwort. So wie das nämlich aussieht, bist du noch unter 2 Wochen dran und darum würde ich dir empfehlen erstmal Grundlagen von C zu lernen und dann mit der SDL rumfrickeln.

Nexxtron

Alter Hase

Beiträge: 424

Wohnort: Heilbronn

Beruf: Student - Software Engineering

  • Private Nachricht senden

2

13.12.2008, 21:42

ca. 3 monate c++, und ich frag ja nur wie der befehl geht....weil ich den einfach nicht check...nur weil ich jetzt des sdl_gfx zum ersten mal seh....
New Project: Operation CityRacer

drakon

Supermoderator

Beiträge: 6 513

Wohnort: Schweiz

Beruf: Entrepreneur

  • Private Nachricht senden

3

13.12.2008, 22:02

Zitat von »"Nexxtron"«

ca. 3 monate c++, und ich frag ja nur wie der befehl geht....weil ich den einfach nicht check...nur weil ich jetzt des sdl_gfx zum ersten mal seh....


Das ist kein Befehl. Das ist lediglich ein stinknormaler Funktionsaufruf. Und die solltest du kennen. Was da schlussendlich übergeben wird spielt doch keine Rolle. Funktionieren tut es immer gleich. Und wenn du nicht verstehst, was eine Funktion macht/welche Parameter sie erwartet, kannst du ja in der Doku nachschauen. (Obwohl hier die Benennung wohl alles verrät.. :roll: )

Nexxtron

Alter Hase

Beiträge: 424

Wohnort: Heilbronn

Beruf: Student - Software Engineering

  • Private Nachricht senden

4

13.12.2008, 22:50

K thx, tschuldigung dass ich immer befehl sag aber so nenn ich des halt :D
New Project: Operation CityRacer

Anonymous

unregistriert

5

13.12.2008, 23:43

Zitat von »"Nexxtron"«

K thx, tschuldigung dass ich immer befehl sag aber so nenn ich des halt :D
und so ist es auch so komplett Falsch, das du durch Prüfungen fällst.

Faule Socke

Community-Fossil

Beiträge: 1 915

Wohnort: Schreibtischstuhl

  • Private Nachricht senden

6

14.12.2008, 01:25

Genau das meine ich mit Neulinge werden unfreundlich behandelt. Einfach die Lösung posten hätte auch gereicht.

Nexxtron
Das hier ist der Prototyp der Funktion aus SDL_gfx:

C-/C++-Quelltext

1
SDL_Surface * rotozoomSurface (SDL_Surface *src, double angle, double zoom, int smooth);


Diese Funktion kann allem Anschein nach eine SDL Surface drehen und Vergrößern/verkleinern. Sie hat 4 Parameter:
1. src Einen Zeiger auf deine SDL Surface, die du gerne drehen möchtest.
2. angle Der Winkel um den du das ganze drehen willst (Frag mich jetzt aber nicht, ob in Grad oder Bogenmaß).
3. Wenn du hier einen Wert > 1 angibst, wird das ganze zusätzlich noch gezoomt, wenn er < 1 ist, wird es verkleinert. Wenn er 1 ist bleibt es unverändert.
4. Keine Ahnung was der macht, versuch mal 0 oder 1 anzugeben.

Ein Aufruf könnte also z.b. so aussehen:

C-/C++-Quelltext

1
2
3
4
rotzoomSurface(meineSurface, // Surface angeben

24.3, // Um 24.3 grad drehen

1.0, // nicht zoomen

0 // 0 oder 1 probieren, ich hab keine Ahnung


Das ganze basiert auf Vermutungen, ich hab keine Ahnung von SDL.

Socke

Anonymous

unregistriert

7

14.12.2008, 11:32

Zitat von »"Faule Socke"«

Genau das meine ich mit Neulinge werden unfreundlich behandelt. Einfach die Lösung posten hätte auch gereicht.
Das ist nicht unfreundlich sondern direkt.

Anfänger müssen direkt von der ersten Minute richtige Dinge lernen und nicht "einfache hingemurkste Lösungen" die inkorrekt und mehr als nur Mehrdeutig sind. Später in Prüfungen al á IHK, Schulungen oder an Unis wird man mit so ungenauen Dingen... versagen.

Von diesem kompletten New-School-Bullshit halte ich nichts, ich habe nur Old-School gemacht und damit selten auf die Nase gefallen, als Leute mit ihrer "mal was einfaches, schnelles und unsauber"-Lösung.

Dazu soll er lernen wie es geht. Er kann nicht mit Klassen rumhantieren ohne die Grundlagen von Prozeduren und Funktionen zu kennen.

8

14.12.2008, 12:04

Seh ich anders. C++ ist nunmal komplex und als ich mich an etwas höheres wie die Konsole gewagt habe, fühlte ich mich erstmal ganz schön überrumpelt. Aber es muss halt sein, denn nur Konsole programmieren ist Mist, ich will Spiele machen und keine Textausgaben.
Also hab ich so lange rumprobiert und Leute genervt, bis ich grob die Funktionalität zusammen hatte, und hab dann einfach rumexperimentiert. Hat wunderbar geklappt und ich konnte ein paar kleine Spiele damit machen und ganz nebenbei wurde ich dann besser in C++.

Es geht doch nicht darum, das jemand etwas studiert und in seiner vollen Tragweite versteht, es geht darum, das man als Hobby ein bisschen rumprogrammiert.

Es ist natürlich nicht so förderlich alles vorgekaut zu kriegen, wie sich selbst Gedanken zu machen, aber ich denke das wollen die meisten doch auch gar nicht. Es ist doch auch ein doofes Gefühl, irgendetwas nicht zu können und deshalb nachfragen zu müssen. Aber wenn man am Anfang mal ein paar Dinge nachfragen muss und dadurch dann in der Lage ist selbst ein bisschen zu experimentieren und viel zu lernen find ich das eigentlich ganz ok.

Und "direkt" bedeutet nicht, das es nicht unfreundlich ist ;-)
Lieber dumm fragen, als dumm bleiben!

Anonymous

unregistriert

9

14.12.2008, 12:16

Jonathan_Klein
Sorry, aber da muss ich wirklich mal sagen das ist reinster Nonsens was du da erzählst. Gerade da es Komplex ist, sollte man es nicht verweichlichen und Halbwissen (eher sogar noch aufgeschnapptes Wissen) vermitteln.

Bücher/Tutorials die mit Begriffen wie "Befehlen" usw. antanzen haben sich doch schon von Grund auf disqualifiziert. Wenn ich so einen Code sehe:

C-/C++-Quelltext

1
2
3
4
void sprite::roto()
{
    SDL_Surface * rotozoomSurface (SDL_Surface *src, double angle, double zoom, int smooth);
}
Sehe ich direkt, das das Tutorial/Buch was Nexxtron verwendet Murks ist und zwar gewaltiger. Hier wird ein Prototyp angelegt und kein Funktionsaufruf durchgeführt und dann wird das noch Befehl genannt? Wenn dann auch noch mit Klassen gearbeitet wird obwohl die Grundlage der Grundlagen fehlt, finde ich sowas erschreckend. Dieses ewige "Rumexperimentieren" und dann "Nee das habe ich schon rumgefrickelt, das brauche ich nicht mehr zu lesen, das überspringe ich einfach, ich habe ja jetzt alle Informationen darüber rausgefunden" was du damals im JLI praktiziert hast ist inkonsequent und dies wird (leider) auch von sehr vielen Büchern vermittelt.

Man kann keinen Wolkenkratzer (2D Grafik) bauen wenn man keine Grundlagen für das Fundament verstanden hat und dies ist hier der absolute Fall. Ein Architekt kann auch sein Fundament nicht "Plattform" nennen.

Endweder ganz oder gar nicht. Man kann nicht alles wissen, selbst ich weiß noch nicht alles von C++, aber ich bemühe mich es richtig zu machen und bei Fragen dies auch zu zeigen und nicht mich durch mangelhafte Bücher/Tutorials auf die Nase zu legen.

Und ob das nun in der Konsole, in 2D, 3D oder die Steuerrungssysteme einer Nuklearrakte sind: Die Grundlagen sind die Grundlagen in allen Bereichen gleich und absolut erforderlich.

Ich fange (aus gesundem Menschenverstand, den selbst ein 8 jähriges Kind aufweisen kann) kein MMORPG oder ähnliches an, wenn ich nicht mal weiß wie Sockets oder ich ein Fenster erzeuge, wo ich dann 2D/3D draufknalle und ich ein Kreuzprodukt nicht berechnen kann. Sowas suckt einfach.

drakon

Supermoderator

Beiträge: 6 513

Wohnort: Schweiz

Beruf: Entrepreneur

  • Private Nachricht senden

10

14.12.2008, 13:42

Zitat von »"unsigned long"«

Zitat von »"Nexxtron"«

K thx, tschuldigung dass ich immer befehl sag aber so nenn ich des halt :D
und so ist es auch so komplett Falsch, das du durch Prüfungen fällst.


Ich sehe da (und in meinem Post) auch überhaupt nichts bösartiges. Es ist direkt und vielleicht in einem ernsten Ton, aber das muss sein, da sonst die Neulinge sich einfach falsche Sachen aneignen und es nicht richtig lernen. "Ich habe das schon immer so genannt, also stimmt das auch".. Das funktioniert solange, wie man es als Hobby macht. Sobald man aber irgendwo etwas "beweisen" muss, kann man so gehörige auf die Nase fallen.
Bewerbungsgespräch:
- Hallo, Herr X, sie bewerben sich also für die Stelle als C++ programmierer..
- Ja und ich habe auch schon so und so viele Jahre Erfahung..
- OK, dann können sich sicher auch erklären, was dieses Codeausschnitt bedeutet..
- Ja, klar. Das ist ein Befehl, der etwas auf dem Darstellungsdings darstellt..
- Öhh. Wie viele Jahre programmieren sie schon?!?

Und wenn einer nach 3 Monaten immernoch daher kommt und eine Funktion Befehl nennt, dann muss dem halt mal auf die Finger geklopft werden und gesagt werden, dass es schlichtweg falsch ist. Und imo darf man von einem, der sich schon 3 Monate mit C++ beschäftigt, durchaus erwartet werden, dass er sich mit Funktionen auskennt. Wenn nicht ist das kein Problem, dann sollte er sich aber unbedingt nochmal mit den Grundlagen beschäftigen..

Werbeanzeige