@Ace: Was willst du denn für die FPS genaues machen?
Da ich über mehre Geräte das Spiel testen kann, kann ich mal schauen wie sie drauf reagieren und schauen wo ich etwas mehr FPS rausholen kann, wie auch FPS Drops kille.
Um so etwas leichter zufixen sollte man sich die Source auf eine aktuelle Version von Visual Studio hoch ziehen. Wie z.B. auf Visual Studio 2013.
Da dort der Debugger und das Compilieren der Files um einiges schneller geht.
Man sollte sich nur damit auskennen. (neue Pointer, usw).
Des weiteren sollte man bevor man die Performance noch weiter kaputt macht durch irgendwelche Custom Shit scheiße, die aktuelle Performance fixen.
Dazu gehören nicht nur die FPS Drop Downs sondern auch noch weitere probleme
Okay. Gut. Danke.
Erkläre mir mal was "neue Pointer" sind?
Wie macht man "Performance" kaputt? durch die "Systeme" wo ihr einbaut? nope das auch wieder Falsch.
Wo ist der Unterschied zwischen Vs 2012, 2013 & 2015? solange du das nicht weißt lass die Finger davon und Arbeite mit 2003 weiter, zum wohle der Allgemeinheit.
Quote:
Source ist auf 2013 geupdatet genauso ist die Datenbank auf 2012 am laufen ..
Ich werde nicht nochmal den selben Fehler machen wie vorher und costum shit einbauen, sondern mich rein um die Fixes wie auch FPS kümmern.. Dementsprechend fallen auch schon vorhandene Systeme weg.
Also ;D Das war mein Statement, ich hoffe ich versteht was ich meine und damit noch einen schönen Abend
Greetings ACE ;*
Nun.. FlyFF hat keine sichtlichen FPS Drops. Du weißt nicht wie die FlyFF FPS zustande kommt.. Die FlyFF FPS ist grundlegend auf 60 (62) Frames gebunden, woran liegt das wohl? achja... damit ist ja das ganze Client Timing geregelt von wegen Animationen & Game Compute, stimmt ja, wenn du das alles überarbeiten magst, viel Spaß dabei. Dabei noch mit einer Alten DirectX Version, völliges TIME WASTING..
Quote:
Vor na woche Clean v15 Source auf VS2013 gebracht
Du hast dir extra die Arbeit gemacht? DU? ich mein, guess what ich hab ein Source V15 (Official, ohne Änderungen) auf Vs 12, 13 & 15 Released. Ihr Installiert einfach Vs 12+, Compiled mit Fehlern und denkt "Hey muss ich fixxen!"? Lustig ist nur, ist ein Source bereits bei C++ 11 (Vs 12+) angekommen, kannst du das ganze mit 13 auf Compilen. Das 15er Update wird für euch verdammt schwer da ihr euch einfach nicht mit Visual Studio genug beschäftigt damit ihr wisst was sich ändert.
Quote:
Ich mach das alles nur Privat für mich.
Sprich werde diese nicht für andere Entwickeln.
Du Entwickelst in FlyFF sowieso nichts, genau wie der Rest von euch, evtl. Sedrika kann bissel was, aber sonst nutzt ihr nur Strukturen seitens Gala Lab, keine Kunst da etwas rein zu machen. Wer was anderes sagt lügt einfach nur wie gedruckt, da ich bei jedem Server immer den selben Code sehen & daher weiß was abgeht.
Jungs lasst dieses Game liegen, es bringt nichts. (Kenn das iwo her.. wa Dome?)
Lustig wie sogar Clemi mir das erst vor 3 Tagen sagte das ihr einfach nur Zeit verschwendet, da wir es zu 2. Nicht hinbekommen haben soviel aus dem Source zu holen. Mag evtl. daran liegen das alle DirectX steuer Einheiten, sprich das ganze Rendering etc. aus einem Buch 1zu1 Kopiert ist..mhm.
Wo ist der Unterschied zwischen Vs 2012, 2013 & 2015? solange du das nicht weißt lass die Finger davon und Arbeite mit 2003 weiter, zum wohle der Allgemeinheit.
Ok. Mein guter Wanetrain.
Unterschiede C++ 2003 und dem heutigen C++ 11:
Range-Based "for" schleife
Lambda - Funktionen
Rvalue (neue Move Semantik)
Generische Programmierung
"decltype" - Neue Rückgabesyntax
"constexpr"
Neue Standardbibliothek
Reguläre Ausdrüke
Zeitbibliothek wie z.B. Zeitdauer "duration"
Smart Pointer, wie z.B. "shared_ptr oder weak_ptr"
Quelle: C++: Das umfassende Handbuch, aktuell zum Standard C++11
- Ja ich lese ein Buch man glaubt es kaum.
Komm mir bitte nicht mit Abgeschrieben aus einem Buch.
Denn die Code stellen sind nicht aus diesem Buch kannst du gerne Kaufen und nachlesen.
Ich weiß zwar nicht alles aber ich versuche es zu Lernen.
Das mag ja alles korrekt sein, nur hast du weiter oben nicht zwischen C++11 und C++2003 (was es nicht als deklarierten Standard gibt, sondern nur ein alternativer Name für einen ISO-Standard ist), sondern zwischen Visual Studio 2003 und 2013 unterschieden.
Dass das Kompilieren der Files in VS Versionen > 2003 schneller gehen soll, würde ich gerne mal sehen.
Es mag ja sein, dass ein neuerer Compiler "besseren" Code generieren kann, aber wenn der Quellcode völlig verhunzt ist, bringt dir der beste Compiler nichts :P
Im übrigen sind diese "neuen" Pointer, wie du sie nennst, schon lange in der Boost Libary integriert, wurden nur mit C++11 zum Standard hinzugefügt. ^^
Crasy musst du Lambda-Funktionen nicht beibringen, er ritt schon vor Jahren auf dem Lambda-Hypetrain herum.
Quelle: C++: Das umfassende Handbuch, aktuell zum Standard C++11
- Ja ich lese ein Buch man glaubt es kaum.
Komm mir bitte nicht mit Abgeschrieben aus einem Buch.
Denn die Code stellen sind nicht aus diesem Buch kannst du gerne Kaufen und nachlesen.
Ich weiß zwar nicht alles aber ich versuche es zu Lernen.
Runde 2! :3
Quote:
[*]Multithreading
Hö? Is ja nicht so als Existiert das bereits schon seit Jahren..
Quote:
[*]"decltype" - Neue Rückgabesyntax
"Rückgabesyntax" also, okay. Nennt sich auch Auto, sollte man eigentlich nur bei Pointern benutzen ansonsten ein Template für Funktionen anlegen.
Quote:
[*]Neue Standardbibliothek
Hö?!
Quote:
[*]"constexpr"
Kam erst komplett mit C++ 14.
Quote:
[*]Reguläre Ausdrüke[*]Neue Standardbibliothek
Hast du das nur hingeschrieben weil somit die Liste länger ist?
Quote:
[*]Rvalue (neue Move Semantik)
Gibt es eigtl. schon lange. (STL)
Quote:
[*]Smart Pointer, wie z.B. "shared_ptr oder weak_ptr"
Bevor man damit was macht, sollte man wissen was "dynamic", "static", "reinterpret" und "const" Casts machen.
Nun TwiLight hat eigentlich recht, du findest verdammt viel im Boost Library was das ganze übernimmt. Somit ist ein neue Visual Studio + Boost eigtl. für die Katz.
Gibt auch noch das lustige "std::function":
Quote:
void ForVisibilityChunkRange( _In_ CUser* pUser, _In_ std::function< void ( _Out_ IChunkSection*, _Out_ int, _Out_ int ) > f )
Dazu kommt bei Visual Studio Änderungen die euch allerdings nicht betreffen:
ESP Stack pfüf verstärkt
IntelliSense versärkt mit "Fuzzy Logic"
Linker Optimierungen
uvm.
Das sind dinge die euch "evtl" jucken. Wobei ich das bezweifel.
Ich persönlich finde Lambda Ausdrücke eine Bereicherung. Diese sind aber jetzt nichts ohne das man nicht leben könnte.
Viele Sachen von den neuen C++ Standarts gab es schon viel früher in der Boost Library.
VS15 hätte ich mir fast gezogen um iOS Apps zu basteln, aber da die Bedingung immernoch ein Gerät mit OS X ist kann ich darauf verzichten. Man hat nicht gleich das bessere wenn man das neuste hat.
Eigentlich bin ich ja zu alt für sowas... aber ich muss mal wieder meinen senf dazu geben^^
Quote:
Originally Posted by .ACE.
Da ich über mehre Geräte das Spiel testen kann, kann ich mal schauen wie sie drauf reagieren und schauen wo ich etwas mehr FPS rausholen kann, wie auch FPS Drops kille.
Und was willst du durch mehrere "geräte" festellen? Das es auf dem einen läuft und auf dem anderen nicht?
Falscher ansatz: Das schwächste "gerät" nehmen und versuchen da am meisten raus zu holen.
Ouhh und wo du am meisten performance killst ist bei dem warten auf den nächsten frame, weil polling.
Dann wegen dem MFC geshizzel der in der neuz hängt. Dann SCANNER, JUNGS bitte nehmt JSON oder XML aber NICHT SCANNER ...
und dann bitte das laden über mehrere Threads verteilen... Das sollte sogar leicht zu implementieren sein.. ouuh und ein paar tolle shader würden auch nicht schaden :3
Quote:
Originally Posted by xTwiLightx
Dass das Kompilieren der Files in VS Versionen > 2003 schneller gehen soll, würde ich gerne mal sehen.
Es mag ja sein, dass ein neuerer Compiler "besseren" Code generieren kann, aber wenn der Quellcode völlig verhunzt ist, bringt dir der beste Compiler nichts :P
Oh mein kleiner stephano, vs 2003 benutz nichtmal MP generation von code...
Ne kann ich dir bezeugen; der neue compiler arbeitet 1000 fach besser als der alte und woher soll der compiler bitte wissen das der flyff source verhuntzt ist?
Er erzeugt halt mehr instructions.. Aber durch optimierung könnte dadurch sogar mehr rauskommen als bei 2003... Aber das müsste man testen...
Quote:
Originally Posted by Wanetrain
Wie macht man "Performance" kaputt? durch die "Systeme" wo ihr einbaut? nope das auch wieder Falsch.
Ganz einfach in dem man sinnlose loops reinknallt. Ich meine warum nicht; Pff wer braucht schon 60FPS?
>| This is for the players!(720p+30fps) = beste.
Quote:
Originally Posted by Wanetrain
Nun.. FlyFF hat keine sichtlichen FPS Drops. Du weißt nicht wie die FlyFF FPS zustande kommt.. Die FlyFF FPS ist grundlegend auf 60 (62) Frames gebunden, woran liegt das wohl? achja... damit ist ja das ganze Client Timing geregelt von wegen Animationen & Game Compute, stimmt ja, wenn du das alles überarbeiten magst, viel Spaß dabei. Dabei noch mit einer Alten DirectX Version, völliges TIME WASTING..
Naja man könnte das relativ einfach umsetzten:
Du musst halt die render time des letzten frames zu der alten addieren und wenn mehr als 1000/60 elapsed sind kannste einen weiteren anim-frame abspielen.
Mit der DirectX version hat das relativ wenig zutun. Wenn man den DXCore richtig optimiert könnte man auch wesentlich mehr rausholen. Alleine wenn ihr mal endlich anfangen würdet shader zu implementieren...
Quote:
Originally Posted by Wanetrain
Du hast dir extra die Arbeit gemacht? DU? ich mein, guess what ich hab ein Source V15 (Official, ohne Änderungen) auf Vs 12, 13 & 15 Released. Ihr Installiert einfach Vs 12+, Compiled mit Fehlern und denkt "Hey muss ich fixxen!"? Lustig ist nur, ist ein Source bereits bei C++ 11 (Vs 12+) angekommen, kannst du das ganze mit 13 auf Compilen. Das 15er Update wird für euch verdammt schwer da ihr euch einfach nicht mit Visual Studio genug beschäftigt damit ihr wisst was sich ändert.
Lass mal stecken digga, MFCMBS installen regelt. <hash_map> ist halt deprecated. Sonst kp... denke nicht das es großartig anders ist.
Quote:
Originally Posted by Wanetrain
Du Entwickelst in FlyFF sowieso nichts, genau wie der Rest von euch, evtl. Sedrika kann bissel was, aber sonst nutzt ihr nur Strukturen seitens Gala Lab, keine Kunst da etwas rein zu machen. Wer was anderes sagt lügt einfach nur wie gedruckt, da ich bei jedem Server immer den selben Code sehen & daher weiß was abgeht.
Jungs lasst dieses Game liegen, es bringt nichts. (Kenn das iwo her.. wa Dome?)
Lustig wie sogar Clemi mir das erst vor 3 Tagen sagte das ihr einfach nur Zeit verschwendet, da wir es zu 2. Nicht hinbekommen haben soviel aus dem Source zu holen. Mag evtl. daran liegen das alle DirectX steuer Einheiten, sprich das ganze Rendering etc. aus einem Buch 1zu1 Kopiert ist..mhm.
Joa so mehr oder weniger hast du recht.
Es bringt halt nichts einfach sachen C&Pn. Jedoch schadet es nicht sich mal mit dem source zu beschäftigen, damit man ein gefühl dafür bekommt, wie man mit C++ + models = geld macht.
Auch kann ich euch nur von der idee am flyff core etwas zu ändern, abraten. Es ist sehr sehr sehr sehr viel arbeit und solltet ihr nur einen fehler machen ist alles am und im ars*h. Wenn dann gleich komplett alles neu, weil der sourcecode an so vielen stellen "bugfixes" hat, die nur auf ein bestimmtes case zutreffen und so weiter.
Aber dann ist gleich die frage ob man das überhaupt, in der heutigen zeit von grund auf oder gleich auf basis einer engine wie Unreal oder CryEngine aufbaut. (Nein Unity hat baaad performance )
Aber dann müsste man das visuelle zeug neu basteln weil ich nicht glaube das terrain texturen mit 128x128 auflösung ansatzweise gut aussehen würden....
Quote:
Originally Posted by Wanetrain
Bevor man damit was macht, sollte man wissen was "dynamic", "static", "reinterpret" und "const" Casts machen.
Genau du splasher solltest wissen das die casting operatoren nichts mit <memory> zu tun haben...
>> shared_ptr sind für ref-counting gc.
Quote:
Nun gut, magst dass ich noch mehr nachlege?
Hihi tell me more master.
Am besten beginnst du mit future und complex
Quote:
Originally Posted by Sedrika
Ich persönlich finde Lambda Ausdrücke eine Bereicherung. Diese sind aber jetzt nichts ohne das man nicht leben könnte.
Viele Sachen von den neuen C++ Standarts gab es schon viel früher in der Boost Library.
Lambdas sind das beste was C++ je bekommen konnte. Endlich kannst du großtenteils funktional(JavaScript + F# sagt hallo) programmieren. Für was ist das gut?
In dem flyff source gab es ja schon so was in der art. Es nennt sich FOR_VISIBILITY_RANGE(?! daneben?)
das gleiche kann man nun ganz einfach ohne macro geshizzle lösen.
Code:
pWorld->ForVisbibilityRange( [this](){
//=> Important stuff here..
});
dann kannste richtig easy per for each durch iterieren und gg
Code:
for( auto i : m_vecCbs )
i();
Quote:
Originally Posted by Sedrika
VS15 hätte ich mir fast gezogen um iOS Apps zu basteln, aber da die Bedingung immernoch ein Gerät mit OS X ist kann ich darauf verzichten.
Jop der Objective-C / SWIFT compiler ist halt mac only
Quote:
Originally Posted by Sedrika
Man hat nicht gleich das bessere wenn man das neuste hat.
Stimmt leider in der Informatik scene nicht. Sonst würde niemand neue Hardware kaufen.
Alleine die ganzen neuerungen durch std sind richtig geil. (z.B. <filesystem>, <future>).
Auch wurde das größtenteils das redist erneuert.
So zum abschluss noch etwas OT:
>> Warum schon wieder ein v15 release. Ich dachte die wahren 2010 in?...
Quote:
Zusätzlich habe ich die Idee von Gentros übernommen, eine GlobalCommon.h einzusetzen, da mir dies sehr sinnvoll erschien.
Oh nein... Bitte sag mir nicht das ihr da noch mehr #define macros reinmacht.
>> Warum beendet ihr nicht einfach mal diese sinnlose macro hölle? Merkt eigentlich keiner von euch das es einfach komplett useless ist sowas zu benutzen? WEIL DAS MEISTE VON DEM CODE WELCHER DURCH DAS #ELSE von #if __ver >= xyz getrennt wird nicht funktioniert UND VORALLEM AUCH NICHT FUNKTIONIEREN SOLL!!????...
ohmann das ihr den schrott nach 5 JAHREN immer noch abfeiert zeugt nicht von großer intellenz....