Seite 1 von 1

Kompilierbarmachung

Verfasst: 12. Feb 2015 23:24
von manu311
So da mein Beitrag wohl untergegangen ist: /viewtopic.php?f=557&t=31538&p=162876#p162876

Mit MAX_RAND kämpfe ich noch - je nachdem welchen Wert ich dafür definiere, fliegen die Boids in andere Richtungen. Ich hätte jetzt doch gern einen offiziellen Wert (oder Fix) dafür ;).

Re: Kompilierbarmachung

Verfasst: 12. Feb 2015 23:28
von FloM-KOM
Ich hatte nur gelesen daß Du es gelöst hattest, ich schaue noch mal danach. Melde mich gleich.

Re: Kompilierbarmachung

Verfasst: 12. Feb 2015 23:35
von FloM-KOM
Der Wert müsste in der cstdlib.h definiert sein (http://en.cppreference.com/w/cpp/numeri ... m/RAND_MAX), kannst Du mal versuchen ein

Code: Alles auswählen

 #include <cstdlib>
reinzupacken?

Re: Kompilierbarmachung

Verfasst: 12. Feb 2015 23:38
von FloM-KOM
Ansonsten wäre es auch kein Beinbruch solange sich die Boids nach dem Start zusammenrotten/sortieren.

Re: Kompilierbarmachung

Verfasst: 12. Feb 2015 23:41
von Max-Maag
Äh, die Konstante heißt RAND_MAX, nicht MAX_RAND. Steht bei mir aber auch so in Steering.h drin.

Re: Kompilierbarmachung

Verfasst: 12. Feb 2015 23:45
von manu311
ja ich hab das frei zitiert :D.
Ich hab eben diese Datei eingebunden, dann kompilierts allerdings starten die Boids alle in der Mitte und drehn sich nur im Kreis - kann nicht ganz so gewollt sein (hoffe ich - das ganze ist noch nicht implementiert, also ursprünglicher Code erzeugt das).

Übrigens funktioniert "cstdlib.h" nicht - afaik cstdlib deutet darauf hin dass es eine C-Lib ist und die früher stdlib.h genannt wurde. Von daher kann man stdlib.h als auch cstdlib einbinden, aber nicht cstdlib.h :).

Re: Kompilierbarmachung

Verfasst: 13. Feb 2015 01:07
von manu311
FloM-KOM hat geschrieben:Ansonsten wäre es auch kein Beinbruch solange sich die Boids nach dem Start zusammenrotten/sortieren.
Manchmal tun sie's manchmal auch nicht, ich hab mal ein kurzes Video gemacht, wie's bei mir so aussieht (wenn sie's nicht machen): https://www.youtube.com/watch?v=mW63kacUkwc
Der Mond macht auch scheinbar was er will. Als "umherwandern" könnte man es definitiv bezeichnen :D. Eigentlich sollte aber alles funktionieren (vom Code her) - warum's nicht tut weiß ich auch nicht.
Übrigens find ich diese Übung bisher am Aufwändigsten (nicht am einfachsten, wie in der Vorlesung proklamiert).

Re: Kompilierbarmachung

Verfasst: 13. Feb 2015 01:27
von Aeneas
Wir haben jetzt die cstdlib eingebunden, das einzige was dann passiert, ist dass der Mond sich von links nach rechts bewegt (die roten Boids sind nicht sichtbar). Soll das so sein?

Re: Kompilierbarmachung

Verfasst: 13. Feb 2015 01:36
von manu311
Aeneas hat geschrieben:Wir haben jetzt die cstdlib eingebunden, das einzige was dann passiert, ist dass der Mond sich von links nach rechts bewegt (die roten Boids sind nicht sichtbar). Soll das so sein?
ich hab exakt das selbe Problem wenn ich die Datei einbinde. Ich hab dannach noch die Zeile:

Code: Alles auswählen

#define RAND_MAX 1 << 16
eingefügt damit tut alles ein wenig wie es soll. Der Mond denke ich jetzt auch das richtige - für den Rest (siehe mein Video).

Re: Kompilierbarmachung

Verfasst: 13. Feb 2015 01:51
von Aeneas
mit #define RAND_MAX 1 << 16 haben wir leider immer noch keine Boids :(.

Re: Kompilierbarmachung

Verfasst: 13. Feb 2015 02:02
von manu311
Aeneas hat geschrieben:mit #define RAND_MAX 1 << 16 haben wir leider immer noch keine Boids :(.
Also wenn ich nur das original repository nehme ohne irgendwas von uns - und string.h einbinde und stdlib.h (bzw cstring und cstdlib sollten auch gehen) - dann sind bei mir die boids da, allerdings alle in der Mitte und rotieren wie verrückt. Wenn ich das rand_max noch zusätzlich auf 1 << 16 setze, sieht wie gesagt alles ok aus.

Re: Kompilierbarmachung

Verfasst: 13. Feb 2015 02:10
von Aeneas
ja, ok das ist jetzt bei uns auch so, nach Implementation der getSteering Methoden sind die Boids aber weg.

Re: Kompilierbarmachung

Verfasst: 13. Feb 2015 02:14
von manu311
Aeneas hat geschrieben:ja, ok das ist jetzt bei uns auch so, nach Implementation der getSteering Methoden sind die Boids aber weg.
Da hatte einer da: viewtopic.php?f=557&t=31566 das Problem auch.
Ganz ohne Linux (denke ich) :). Hatte zwar auch ein paar mal sowas, aber denke nicht dass es mit unserem Problem hier zu tun hat(te).

Re: Kompilierbarmachung

Verfasst: 13. Feb 2015 03:05
von Aeneas
ok danke, das hat uns weiter geholfen :).