Beiträge von Socke

    Hab ne E-Mail bekommen. Fragen nach einem Beispielprojekt um den Fehler nachzustellen. Bääääh. Dabei habe ich den Code Teil in einem Screenshot gezeigt. Die sind faul. Mal sehen ob ich meine Faulheit überwinden kann um extra für die nen Projekt zu erstellen nur damit die ihre eigenen Fehler beheben.

    Unter Multithreading versteh ich glaub ich was anderes als du...Multithreading bedeutet für mich, dass alle Kerne der CPU benutzt werden und nicht so wie es ohne selbst eingebautem Multithreading ist, dass nur 1 Kern benutzt wird^^

    Das ist nicht was "Ich" oder "Du" darunter verstehen. Was ich geschrieben habe ist Fakt. Multithreading läuft auch auf einem CPU Kern. Auch wenn es für den Leihen unlogisch klingt.


    https://de.wikipedia.org/wiki/…reseitiges_Multithreading


    Aber da kommt sicher gleich wieder einer um die Ecke der es besser weis....... <X <X

    Tomura
    Wenn der Timer in Gamethread läuft dann läuft der pro Tick oder wie soll das gehen? Ich kann aber Sekunden nicht Ticks einstellen in dem Timer. Ich kann einen Timer auch 10 mal in einem Tick laufen lassen oder alle 1.234343 Ticks. Wie soll das ohne einen eigenen Thread funktionieren? Da brauch ich nicht in den C++ code zu gucken.

    Wenns dir nichts ausmacht würde mich die Sache mit der Anzahl der Charaktere interessieren. Was für eine CPU hast du und wie genau hast du das Problem gelöst.


    Ich denke da gerade an ein RTS mit 4 Spielern mit je 100 Einheiten. Kann UE4 400 Einheiten darstellen oder nicht?

    Bist du dir sicher dass es parallel ist und nicht nur einen Frame später?

    Ja, du kannst ja auch ne Minute ins Delay eintragen. Das Spiel läuft einfach weiter. Wäre es nicht parallel würde das Spiel einfach stehen bleiben. Das wurde hier aber glaub ich bereits erwähnt.


    @Djeki
    Deine Versuche sind interessant. Bei parallel laufenden Sachen kann aber der Zufall entscheiden. Eine Schleife mit 10 Durchläufen ist zu schnell. Ein PrintString könnte auch in einem eigenen Thread laufen. Müsste man in den c++ Code gucken. Wenn du ein Event verzögern willst musste was richtig langsames machen. Wie ein Zugriff auf die Festplatte. Du hast doch mal nen Mesh aus ner str oder stl oder wie die Datei hieß geladen. Das war richtig lahm. Das könntest du zum testen verwenden.


    Man kann sich die Zeit aber auch sparen. Für mich ist die Sache nach meinem Test klar. Die normalen Custom Events laufen im Game Thread und werden nacheinander abgearbeitet.


    Gibt noch die Dispatcher Events. Die könnte man noch testen. :P

    Waren nur ein paar Minuten. Nix Mega. :P


    Wer an Multithreading, also an Berechnungen die parallel zum Rendering laufen und damit die FPS nicht beeinträchtigen, interessiert ist kann die Delay Node mit 0 benutzen. Alles dahinter wird dann paralell ausgeführt. Hier braucht man keine Plugins ect. kaufen.


    Und hier der Beweis. Jetzt wird Event2 als erstes gefeuert.

    Um die Diskussion zu beenden. Ich habe es ausprobiert.


    Ich habe zwei Custom Events erstellt. Als Erstes habe Event1 gefeuert und als Zweites Event2. Event1 läd eine 50MB große Datei und macht nen PrintString "Event1". Event2 macht nur einen PrintString "Event2".


    Event2 hat erst gefeuert nachdem Event1 die Datei geladen hat. Man hat die ~1 Sekunde Verzögerung sogar gesehen die Event2 auf Event1 gewartet hat.


    Damit hat DjEKI Recht. Die Events werden der Reihe nach abgefeuert.
    Das gilt nicht für die Multiplayer Events!!! Die habe ich nicht ausprobiert aber es liegt in der Natur der Sache das diese parallel laufen.


    Edit: Beweisscreenshot

    Das finde ich interessant. Normalerweise (andere Programmiersprachen) werden Events bei parallel laufenden Prozessen genutzt. Proc1 rechnet was und Proc2 rechnet was anderes gleichzeitig. Damit Proc3 weiß wann die fertig sind, feuern die Events.


    In Blueprints sehe ich das aber nicht unbedingt so. Hier werden Events auch für Sprünge benutzt zwecks Übersicht.


    Falls einer das noch testen will dann sollte man dem Event1 einfach mal etwas zu rechnen geben was länger dauert. Das mit dem Delay geht nach hinten los. Das für zu einem neuen Thread. Vielleicht ein Savegame in Event 1 anlegen oder in einer Schleife ne Textur 1000 mal irgendwo drauf kleben oder so.


    Ich habe jetzt keine Lust es auszuprobieren wäre aber super wenn einer das macht.

    Die Lösung die ich oben vorgeschlagen habe ist die die für Anfänger immer empfohlen wird. Kostet aber sehr viel Leistung.


    Bei einem AAA Spiel wird sich einfach einer hingesetzt haben und einen Algorithmus erstellt haben der die 3D Position der Map auf eine 2D Position einer Map(ein PNG oder so) runterrechnet und die Map entsprechend dreht und verschiebt. Oder vielleicht eine Sprite mit der größe der 3D Map unter der 3D Map positionieren? Und dann ne zweite Kamera die dem Spieler auf x und y verfolgt und die Sprite filmt? Hier kann ich aber nicht mehr weiterhelfen.


    Du findest auch mehrere Minimaps im Marketplace. Einige sehen so aus als würde sie auf der gleichen Technik basieren die du willst. Wenn auch für meinen Geschmack viel zu teuer. Zeigt aber dass es möglich ist.

    Gibt einige Videos auf Youtube dazu.


    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

    Du kannst Webspiele damit machen. Aber für Webseiten ist das Ding nicht gedacht.


    Versuchs mal mit dem Google Web Designer oder anderen Tools. Gibt einige. Auch fertige Vorlagen (Templates) in die du deinen Text und deine Bilder einbaust und fertig.

    Das Demo aus dem Video gibt es hier. Windows Smartscreen Warnung ignorieren. http://virtualbird.de/ump/Docu…n/RealTimeImport_Demo.rar (Windows 64)



    Die sounds, werden die durch ue4 player abgespielt? Kann ich die auch in BP mit dem Audio Component abspielen?

    Ja.
    Mein Plugin erzeugt ein USoundWave aus einer Wav und UTexture2D aus den Bildern. Das sind die gleichen Objekte die du auch über den Editor bekommst wenn du die Dateien importierst. Der Sound in der Demo wird über diese Node abgespielt.
    http://api.unrealengine.com/IN…o/SpawnSound2D/index.html