Die Suche ergab 691 Treffer

von BeRsErKeR
28.04.2014, 18:33
Forum: Algorithmen und Datenstrukturen
Thema: Effiziente BitStream-Implementierung
Antworten: 14
Zugriffe: 4403

Re: Effiziente BitStream-Implementierung

Normalerweise mach ich auch alles mit LE. Hier dachte ich nur, BE würde mir mehr bringen, da ich auch auf Byte-, Word- und Dword-Ebene reingreifen wollte. Ich habe das aber nun auch auf deine Weise mit LE gelöst. Bevor ich primitive Datentypen schreibe oder lese gehe ich zunächst auf die nächste 8-B...
von BeRsErKeR
28.04.2014, 14:38
Forum: Algorithmen und Datenstrukturen
Thema: Effiziente BitStream-Implementierung
Antworten: 14
Zugriffe: 4403

Re: Effiziente BitStream-Implementierung

Ich habe nochmal einen Blick auf deinen code geworfen Schrompf. Wenn ich das jetzt nicht falsch interpretiere sorgt deine Beenden-Funktion ja doch dafür, dass LE/BE entscheidend ist, jedenfalls wenn ich davon ausgehe, dass ich Beenden mehrfach aufrufen kann und danach eventuell auch weiterschreibe. ...
von BeRsErKeR
25.04.2014, 14:34
Forum: Algorithmen und Datenstrukturen
Thema: Meine UTF-8 String Klasse
Antworten: 20
Zugriffe: 5101

Re: Meine UTF-8 String Klasse

Seit VC++6.0 habe ich mich von PCH verabschiedet. Es war damals ein Krampf (so wie vieles bei VC++6.0). Gestern habe ich aber mal wieder einen Versuch gewagt, da mein Projekt schon recht riesig ist und ich bei kleinen Änderungen teilweise alles neu bauen muss. Sofern man nur STL-Header im PCH einbez...
von BeRsErKeR
25.04.2014, 02:22
Forum: Algorithmen und Datenstrukturen
Thema: Effiziente BitStream-Implementierung
Antworten: 14
Zugriffe: 4403

Re: Effiziente BitStream-Implementierung

In Zip-ähnlichen Archiven nutzt man normalerweise eine Solid Block Size; man sagt also z.B., dass ein komprimierter Block immer nur 2 MiB lang sein kann und an einer Byte-Grenze beginnt. Möchte man eine bestimmte Datei aus dem Archiv, springt man zum ersten 2-MiB-Block, in dem ihre Daten liegen und...
von BeRsErKeR
24.04.2014, 16:33
Forum: Algorithmen und Datenstrukturen
Thema: Effiziente BitStream-Implementierung
Antworten: 14
Zugriffe: 4403

Re: Effiziente BitStream-Implementierung

Was meinst du mit bitweisem Bearbeiten? Nur Einzelbits schreiben / lesen? Das ist eigentlich nicht mein Ziel. Also ich würde schon gern eine bestimmte Anzahl an Bits in einem Rutsch lesen oder schreiben. Das könnte man auch über mehrfaches Lesen/Schreiben von Einzelbits realisieren, aber ob das dann...
von BeRsErKeR
24.04.2014, 14:10
Forum: Algorithmen und Datenstrukturen
Thema: Meine UTF-8 String Klasse
Antworten: 20
Zugriffe: 5101

Re: Meine UTF-8 String Klasse

Vielen Dank für den Link. Das werd ich mir gleich angucken wenn ich zu Hause bin. Und auch danke für die Tipps zum Thema Header/Modul. Das Problem bei der STL ist ja vermutlich das "T" im Namen.
von BeRsErKeR
24.04.2014, 14:02
Forum: Algorithmen und Datenstrukturen
Thema: Effiziente BitStream-Implementierung
Antworten: 14
Zugriffe: 4403

Re: Effiziente BitStream-Implementierung

Dann brauchst du aber nicht so etwas wie Lese- und Schreiboperationen mitten im Stream, oder? Die Kompressionen laufen ja normalerweise linear durch die Bits bzw. geben sie nacheinander aus. Da reicht dann ein Array von 32 Bytes in die du 0 und 1 schreibst, und sobald du das 32te erreichst, packst ...
von BeRsErKeR
24.04.2014, 13:17
Forum: Algorithmen und Datenstrukturen
Thema: Effiziente BitStream-Implementierung
Antworten: 14
Zugriffe: 4403

Re: Effiziente BitStream-Implementierung

Naja den BitStream möchte ich vorallem für Komprimierungsaufgaben verwenden, wo es um viele MB bis vielleicht sogar GB Daten geht. Da ist der Faktor 8 schon sehr hoch. Zumal ich aus dem Bitstream bestimmte Bitsequenzen auch als Werte interpretieren will. Für diesen Zweck müsste ich dann die Bytes wi...
von BeRsErKeR
24.04.2014, 11:56
Forum: Algorithmen und Datenstrukturen
Thema: Effiziente BitStream-Implementierung
Antworten: 14
Zugriffe: 4403

Effiziente BitStream-Implementierung

Hallo zusammen, mich würde mal interessieren, wie man einen BitStream effizient implementieren kann. Mit BitStream meine ich einen Stream (kann ruhig ausschließlich auf einem Byte-Array oder ähnlichem basieren), in den man eine beliebige Anzahl von Bits an eine beliebige Position schreiben kann und ...
von BeRsErKeR
24.04.2014, 11:41
Forum: Algorithmen und Datenstrukturen
Thema: Meine UTF-8 String Klasse
Antworten: 20
Zugriffe: 5101

Re: Meine UTF-8 String Klasse

[ Offtopic ] @ Krishty und Coding Cat : Ihr seid ja hier im Forum bekanntermaßen die "Cracks" wenn es um Optimierung und Analyse von Code geht. Für mich ist es oft schwer da zu folgen. Hättet ihr nicht mal Lust einen Artikel oder Forenbeitrag zu schreiben, wo ihr ein paar Tipps gebt, was m...
von BeRsErKeR
22.04.2014, 15:08
Forum: Algorithmen und Datenstrukturen
Thema: Meine UTF-8 String Klasse
Antworten: 20
Zugriffe: 5101

Re: Meine UTF-8 String Klasse

Also ich kann jetzt nicht so viel dazu sagen, da ich es grundsätzlich vermeide irgendwas anderes als ASCII oder ISO-8859-1 zu verwenden (also auch kein wstring oder Widechar-Versionen bei WINAPI-Calls). Und für Tools für Endkunden, wo Sprachen wichtig werden, nutze ich heute C# wo das alles kein Pro...
von BeRsErKeR
20.03.2014, 17:38
Forum: Algorithmen und Datenstrukturen
Thema: Was ist das für ein Dateisystem?
Antworten: 7
Zugriffe: 2674

Re: Was ist das für ein Dateisystem?

Vielleicht ein DVD-Image oder ähnliches? ISO 9660 / ECMA 119 oder ISO 13346 (UDF)?
von BeRsErKeR
03.03.2014, 15:02
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: Resultate langer Codezeilen zwischenspeichern?
Antworten: 20
Zugriffe: 12489

Re: Resultate langer Codezeilen zwischenspeichern?

Stringkonkatenation ist imo der falsche Ansatz hier, was du eigentlich willst, ist ein stringstream: std::ostringstream msg; msg << "Extreeeeeeeeeeeeeeem lange Konkatenation" << 123456 << eineFunktion("blub") << "noch viel mehr Text" << undNochEineFunktion(x, y, z) << ...
von BeRsErKeR
03.03.2014, 12:12
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: Resultate langer Codezeilen zwischenspeichern?
Antworten: 20
Zugriffe: 12489

Re: Resultate langer Codezeilen zwischenspeichern?

Der Vorteil ist, dass du deinen String einfach in ein Literal packst und fertig. Heißt, später steht da sowas: string sinnvollerName1 = eineFunktion(...); foo(string.Format( fooFormatString, // Besserer Name hier einfügen 123456, sinnvollerName1, undNochEineFunktion(x, y, z))); So bleibt der Code i...
von BeRsErKeR
02.03.2014, 20:55
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: Resultate langer Codezeilen zwischenspeichern?
Antworten: 20
Zugriffe: 12489

Re: Resultate langer Codezeilen zwischenspeichern?

Wie stehts mit speichern der Literale (strings) in einer Variable + Format-Paramter? Für C# (was es ja augenscheinlich ist) wäre das so: foo(string.Format( "Extreeeeeeeeeeeeeeem lange Konkatenation{0}{1}noch viel mehr Text{2}usw", 123456, eineFunktion("blub"), undNochEineFunktio...
von BeRsErKeR
02.03.2014, 17:06
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: Resultate langer Codezeilen zwischenspeichern?
Antworten: 20
Zugriffe: 12489

Resultate langer Codezeilen zwischenspeichern?

Hallo zusammen, ich habe mal eine ganz allgemeine Frage in die Runde. Wie geht ihr mit folgendem Problem um: Man möchte etwas berechnen, konkatenieren, etc. und der Ausdruck dafür ist etwas länglich. Das Ergebnis nutzt man nur an einer Stelle (z.B. übergibt man es an eine Funktion). Ist für euch hie...
von BeRsErKeR
27.02.2014, 00:55
Forum: Algorithmen und Datenstrukturen
Thema: Zufällige 2DMap-Generierung
Antworten: 21
Zugriffe: 11028

Re: Zufällige 2DMap-Generierung

Ja ich hab mich jetzt noch etwas zu dem Thema belesen. Gerade auch in Hinblick auf Cluster. Habe nun noch einen Wrapper drumrum gebaut, der Angaben zur Anzahl der Oktaven und der persistence (Frequenz/Amplitude) entgegennimmt. Ich hab auch schon Ansätze gefunden, wie ich bestimmte Anforderungen (z.B...
von BeRsErKeR
27.02.2014, 00:45
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: [gelöst]Verdammtes std::list::erase des letzten Elementes
Antworten: 13
Zugriffe: 2888

Re: [gelöst]Verdammtes std::list::erase des letzten Elemente

Jetzt kommen wir leider schon wieder an die Grenzen dessen, was sich mit C++ elegant ausdrücken lässt: // Rückwärts for (auto iter = mListe.end(); iter != mListe.begin(); ) { --iter; if (eineBedingung(*iter)) iter = mListe.erase(iter); } Gibt es einen speziellen Grund dafür, dass du den Iterator vo...
von BeRsErKeR
25.02.2014, 21:59
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: [gelöst]Verdammtes std::list::erase des letzten Elementes
Antworten: 13
Zugriffe: 2888

Re: Verdammtest std::list::erase des letzten Elementes

Etwas kürzer wäre das Folgende. Keine Ahnung ob das performant ist. Man hat zwar zwei zusätzliche Operationen falls die Bedingung erfüllt ist, allerdings spart man sich eine Verzweigung. Weiß nicht ob das hier in Hinsicht auf Branch Prediction eine große Rolle spielt. Ist auf jeden Fall kürzer zu sc...
von BeRsErKeR
25.02.2014, 20:27
Forum: Algorithmen und Datenstrukturen
Thema: Zufällige 2DMap-Generierung
Antworten: 21
Zugriffe: 11028

Re: Zufällige 2DMap-Generierung

Wo hast du deinen her? Würde mich interessieren wie der aussieht, denn mit 3D-Noise will ich demnächst auch wieder experimentieren. Hast du einen Link? Ich habe eine C++-Portierung des Ursprungsalgorithmus von Ken Perlin. Du findest ihn hier: http://solarianprogrammer.com/2012/07/18/perlin-noise-cp...
von BeRsErKeR
25.02.2014, 17:21
Forum: Algorithmen und Datenstrukturen
Thema: Zufällige 2DMap-Generierung
Antworten: 21
Zugriffe: 11028

Re: Zufällige 2DMap-Generierung

Hatte leider nicht viel Zeit und hab daher die erste halbwegs vernünftig aussehende Implementierung verwendet. Die besteht nur aus 5 überschaubaren Funktionen und nutzt C++11-Features. Es ist eine Klasse, die man mit einem seed-Wert initialisiert und dann gibt es eine Methode, die dir den noise-Wert...
von BeRsErKeR
24.02.2014, 23:37
Forum: Algorithmen und Datenstrukturen
Thema: Zufällige 2DMap-Generierung
Antworten: 21
Zugriffe: 11028

Re: Zufällige 2DMap-Generierung

So endlich hatte ich mal ein bisschen Zeit und hab versucht deinen Code in C++ zu gießen inklusive PerlinNoise-Implementierung. Hab leider auf die schnelle keine gefunden, die so schön konfigurierbar war, wie die in deinem Beispiel. Aber ein seed war natürlich dabei. Nach ein bisschen Gefummel und A...
von BeRsErKeR
20.02.2014, 21:00
Forum: Algorithmen und Datenstrukturen
Thema: Zufällige 2DMap-Generierung
Antworten: 21
Zugriffe: 11028

Re: Zufällige 2DMap-Generierung

Cool danke. Das sieht wirklich vielversprechend aus. :) Werde gerade leider noch von meinem Map-Shader aufgehalten. Danach guck ichs mir mal genauer an.
von BeRsErKeR
18.02.2014, 12:57
Forum: Algorithmen und Datenstrukturen
Thema: Zufällige 2DMap-Generierung
Antworten: 21
Zugriffe: 11028

Re: Zufällige 2DMap-Generierung

Jo danke. Ich guck mal was ich hinkriege. Ich muss erstmal eine Funktion hinkriegen, die möglichst interessante Inselformen generiert. Soll ja nicht zu eckig oder zu rund werden. ;) Ich glaub bei Anno hatten sie sich das einfach gemacht und eine Hand voll statischer Inseln fest vorgegeben. Und die d...
von BeRsErKeR
18.02.2014, 00:24
Forum: Algorithmen und Datenstrukturen
Thema: Zufällige 2DMap-Generierung
Antworten: 21
Zugriffe: 11028

Re: Zufällige 2DMap-Generierung

Danke. Theoretisch ein guter Ansatz. Die Frage ist dann aber wie ich z.B. ein Atoll abbilde. Also mehrere Inseln. Das ist so ziemlich das Wichtigste weil das Spiel auf Inseln spielen soll. Man kann sich das vom Aussehen etwa wie Anno 1602 vorstellen von den Maps (halt ohne Iso).
von BeRsErKeR
17.02.2014, 12:24
Forum: Algorithmen und Datenstrukturen
Thema: Zufällige 2DMap-Generierung
Antworten: 21
Zugriffe: 11028

Re: Zufällige 2DMap-Generierung

Danke erstmal für die Antwort. Die beiden Sachen bringen mich auf eine gute Idee. Ich werde erstmal grob Insel-Shapes je nach Mapgröße und Inselanzahl generieren (also einfach erstmal geometrisch ohne Rücksicht auf Tile-Grenzen) und daraus dann vereinfacht die Formen der Landmassen in Tiles erzeugen...
von BeRsErKeR
16.02.2014, 22:30
Forum: Algorithmen und Datenstrukturen
Thema: Zufällige 2DMap-Generierung
Antworten: 21
Zugriffe: 11028

Zufällige 2DMap-Generierung

Hallo zusammen, ich bastele gerade an einem kleinen 2D-Spiel. Für die Welt nutze ich eine tilebasierte 2D-Karte, die aus 32x32 großen Tiles besteht und 32x24 bis 2048x2048 Tiles groß sein kann. Ich möchte nun einen Algorithmus einbauen mit dem Zufallskarten erstellt werden. Ich habe einige Regeln (b...
von BeRsErKeR
07.02.2014, 03:17
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: [C++] Snippets
Antworten: 53
Zugriffe: 23847

Re: [C++] Snippets

Sieht nicht so aus, dass es mit VS 2010 geht. Für C# ja, für C++ nein. Es wird absolut gar nichts an Kommentaren von IntelliSense angezeigt.
von BeRsErKeR
06.02.2014, 21:39
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: [C++] Snippets
Antworten: 53
Zugriffe: 23847

Re: [C++] Snippets

Krishty hat geschrieben:Vielleicht kann, wer auf diesen Systemen entwickelt, was damit anfangen.
Arbeite leider auch nur im VS zur Zeit. Wäre aber cool wenn man das Beispiel für möglichst viele Compiler/IDEs erweitern könnte.
von BeRsErKeR
06.02.2014, 21:23
Forum: Programmiersprachen, Quelltext und Bibliotheken
Thema: [C++] Snippets
Antworten: 53
Zugriffe: 23847

Re: [C++] Snippets

TO-DO-Markierungen für Visual C++ in Quelltext Benutzung:     TODO("get shit done"); erzeugt eine anklickbare Meldung in Visual C++’ Ausgabefenster. #define TODO_INTERNAL_STRINGIZE(text) #text #define TODO_INTERNAL_QUOTE(text) TODO_INTERNAL_STRINGIZE(text) #define TODO(toDoText) __pragma(...