Kann man diesen Code noch schneller machen?
-
ja das geht. Man könnte das auch Inline machen, ist aber die frage ob das
dann viel bringt...Devil
-
die letzten beiden beitraege sind ziemlicher quatsch. das kann kaum einer besser als der compiler. zumindest bei so trivialen sachen.
-
Original erstellt von Pogo:
Ich habe zwar nicht viel Ahnung, aber wie wäre es mit ein paar ASM-Algorithmen?Der Compiler kann i.d.R. besser Assembler als der Programmierer (bis auf einige gute Assembler-Coder). Wenn man wirklich im Disassembly grobe Fehler (bzw. Verlangsamungen) sieht kann man selbst mit inline-ASM eingreifen. Ist aber IMHO seeeehr selten nötig.
Original erstellt von Pogo:
Oder kann man nicht auch in C++ mit Registern arbeiten?Ein "register int" bringt heutzutage nicht mehr viel. In den meisten Fällen wird es vom Compiler ignoriert. Der Compiler entscheidet selbst wann etwas in die Register sollte und wann nicht.
The register keyword specifies that the variable is to be stored in a machine register, if possible.
The 32-bit compiler does not honor user requests for register variables. Instead it makes its own register choices when global optimizations are on. However, all other semantics associated with the register keyword are honored by the 32-bit compiler.
-
Ich plane das so, dass ich den Weg berechne, alle Hindernisse auf die ich dabei stoße, sind eh quadratisch, ich kann also jeweils die 4 Ecken als Wegpunkte in meinem dynamischem Array aufnehmen.
Darauf kann ich dann A* ansetzen.
Einheiten, die sich bewegen, werden nicht als Hinderniss betrachtet, das spart Rechenzeit, außerdem sind sie eh woanders, wenn die Figur dort wirklich eintrifft.