Beiträge von Sleepy

    Probier mal dass hier:



    Zeile 31.:


    Code
        file_path = os.path.join(fbx_folder, fbx_file)


    Das ist kein folder sondern ein Subfolder deswegen statt fbx_folder durch sub_path ersetzen.


    Zeile 43:

    Code
     bpy.context.scene.collection.children.link(myCol)


    Du willst die fbx Datei zu einer Collection hinzufügen deswegen


    statt

    Code
    bpy.context.scene.collection.children.link(myCol) 


    durch

    Code
    myCol.objects.link(fbx)


    ersetzen.

    Wie würde ich denn dieses Problem umgehen?

    Umgehen geht nicht ^^ Du musst ja das Level laden das kann man nicht umgehen aber du kannst das Problem verstecken.


    1.Du kannst das ganze Level vorladen. Das ist ja in vielen Spielen so, wo man Anfang warten muss bis alles geladen ist und das Spiel dann startet. Du musst für dich entscheiden welche Ladezeit okay für dich ist.

    Keiner wartet 5 min bis das Spiel losgeht.


    2. In vielen Spielen wie zb Starfield wird die Ladezeit durch Videosequenzen kaschiert. Du landest auf einem Planeten, das Video wird eingeblendet wo zeigt wie dein Schiff landet. (Das ist ein Verstecktes Laden und Landen ^^) Wenn die Landezeit nicht ausreicht, kommt vermutlich ein Blackscreen mit nem Mausicon dass sich dreht und du müsstest warten bis alles geladen ist. (Verstecktes Laden)


    3.Ich kenne dein Spiel nicht aber eine Medhode ist es du startest das Spiel und startest direkt im Menü. Das Menü ist bereits ein Sublevel. Während du dich im Menü befindest, werden im Hintergrund bereits alle Sublevels geladen. Klickst du im Menü auf Spiel starten, wird im Grunde das Menü ausgeblendet und aus dem Speicher geworfen und alle Sublevels werden eingeblendet. Die dann hoffentlich schon geladen sind. Ansonsten siehe Punkt 1. (Verstecken)


    4.Wenn du viele Sublevels hast (Die menge ist nicht das Problem) dann solltest du dir überlegen die Sublevel zu verkleinern.

    (Achtung Wortspiel) Statt eine ganze Stadt zu laden, lieber nur ein Stadtteil. Damit ist die Ladezeit schneller.

    Die Restlichen Stadtteile lädst du dann in weiteren Sublevels und nachdem du gespawnt bist.

    Über triggerboxen könntest du bestimmen wann welches Sublevel geladen werden soll oder aus dem Speicher fliegen soll.

    Das Laden, aus dem Speicherwerfen, und das anzeigen würde dann im Hintergrund passieren.


    Das Camera Occlusion Culling sollte dir auch die Karten spielen. Das COC blendet aus was nicht vom Player gesehen wird.

    Heißt: Blendest du ein Sublevel ein, dass außerhalb des Sichtfeldes des players liegt, ist das Sublevel trotzdem nicht da (Ist Unsichtbar)


    Vorrausetzung dafür ist natürlich deine Stadt ist nicht ein riesiges Mesh. Dann würde das COC nicht funktionieren. Da du die Stadt ja immer komplett siehst und niemals gar nicht sehen würdest. Ich hoffe du verstehst wie ich das meine.


    ich glaube es wichtig, dass du die Technik und Logik verstehst. Dann kannst du selber beurteilen wie du alles einstellen musst.


    Eine Idee noch:

    LODs spielen dabei vielleicht auch eine Rolle. zb sollte die ganze Stadt beim Einblenden nicht in der hohen LOD angezeigt werden.


    Daher: Wenn eine Szene geladen und angezeigt wird, sollte Sie nicht in Highpoly gespawnt werden. Sondern lieber in der Niedrigsten LOD Stufe und die sich nach dem Laden auf die Distanz einstellt.

    Du könntest hier beim Level Start einen kurzen Blackscreen einbauen oder einen blure um den LOD Switch zu verstecken.

    Auch hier hoffe ich du verstehst wie ich meine sonst frag nach.

    Wäre bei solch großen levels eine Lösung, diese aufzuteilen in mehrere kleine?

    Levelstreaming hatte ich auch schon als Idee für meinen Ladebildschirm nur muss man da alle levels in einen Level als sublevels packen richtig?

    Wenn man von Level redet denken die meisten ein Level1 dann Level2 usw.

    So funktioniert das Levelstreaming nicht.


    1.Du könntest zb alle Bäume in ein Sublevel packen.

    2.Du könntest alle Häuser in ein Sublevel packen

    3.Du könntest alle Felsen in ein Sublevel packen


    In das Mainlevel würdest du dann alle Sublevels laden so dass dort alles Sublevels zusammen kommen.


    oder


    Du lädst Levelteile. zb den Norden einer Stadt wenn man in die gegen den Südens kommt, wird der Süden des Levels in das Mainlevel geladen. Der Spieler bekommt hiervon der in der Regel nichts mit. So kannst du Sublevels wie Chunks nachladen.

    Ich geb auch mal meine Gedanken dazu:

    Mit Openlevel lädst du ja ein ganzes Level. In diesem Level kannst du theoretisch enorm viele Assets plaziert haben weshalb die Ladezeit lange geht oder das Laden sogar abstürzt.

    Ich frag mich was passiert wenn man es übertreibt und in das Level verdammt viel Stuff reinpackt und dann versucht das ganze Level auf einmal zu laden.

    Vielleicht ist dass dein Problem ? Du versuchst zu viel auf einmal zu laden ?


    Open Level tut ein Level Laden und anzeigen. Vielleicht solltest du dir mal das Levelstreaming anschauen.

    Beim Levelstreaming, kannst du ein persistent Level laden. Das ist quasi das Weltall ohne Inhalt.

    In dieses Level lädst du dann zb das Menü. Während das Menü angezeigt wird, lädst du im Hintergrund bereits Level1. Sobald der Spieler auf Start klickt, wird das Level1 gestartet. (Sofern es fertig geladen ist)


    So kannst du bei einem Spiel mit 100 Level theoretisch alle Levels im Mainlevel anzeigen. Du lädst sie im Hintergrund in den Speicher, zeigst sie mit einem Bums an und schmeißt nicht gebrauchte Level wieder raus.


    1.Level Laden

    2.Level Anzeigen

    3.Level aus dem Speicher löschen


    Ich glaube Garbage Collectors funktioniert automatisch. Die Assets werden nach spätestens 60 Sekunden geprüft und fliegen aus dem Speicher. Wenn dein Speicher ausgeht, können sie auch früher geprüft und entfernt werden.


    Ich sehe den Flaschenhals beim Laden bzw Einblenden deines Levels. (Nicht bei der Optimierung durch die UE) Ich glaube bevor das Level geladen ist, geht da etwas schief.


    1. Dein Level ist zu groß bzw du versuchst zu viel auf einmal du laden und anzuzeigen.

    2.Du hast irgend ein Fehler in deinem Script. Ich frage was zb passieren würde wenn man das "Level laden" in eine Schleifen bauen würde. So nach dem Motto: Lade Level und wenn du fertig bist lade es nochmal. Dann würde dein Level in einer Schleife unendlich oft neu geladen werden. Hier gibt bestimmt noch andere Möglichkeiten sich solche Stolpersteine zu bauen.


    Woran es genau liegt ist mit den Informationen schwer zu sagen.

    Das kann er unmöglich wissen. Erst denken

    Er spricht ja auch nur für sich und nicht für alle Menschen auf dem Planeten.


    Hier kann doch jeder nur seine Meinung sagen. Niemand kann hier für alle Sprechen.


    Wenn hier jemand gesagt hätte, dass man unbedingt eine Übersetzung braucht. Hättest du ihm dann auch gesagt dass er das unmöglich wissen kann ? Dann wäre deine Frage komplett obsolet da hier keiner für alle Menschen sprechen kann.

    Leute, bitte streitet nicht. Jeder hat nun mal eine andere Meinung, und meistens gibt es kein Richtig oder Falsch.

    Was für den einen Zeitverschwendung ist, kann für den anderen keine Zeitverschwendung sein und sogar ein Hobby oder Spaß bedeuten.

    Man sollte auf jeden Fall andere Meinungen respektieren, und das gilt für alle.

    Lalilu hatte geschrieben, dass er deinen Einsatz schätzt, aber es für Zeitverschwendung hält. Das ist seine Meinung, und das ist auch in Ordnung so ich finde er hat auch sehr diplomatisch geschrieben.


    wentoss Wenn dir die Übersetzung hilft oder es dir sogar Spaßmacht die Texte zu übersetzen dann ist dass auch okay für.


    Ich finde deine Frage großartig, und solche Fragen sind hier im Forum ausdrücklich erwünscht. Bitte respektiere jedoch auch, dass nicht alle der gleichen Meinung sind.


    In der Entwicklung ist Feedback von großer Bedeutung. Jeder von uns kennt aus seiner Kindheit die Situation, in der er seine Eltern gefragt hat, wie sein Bild aussieht. Hast du jemals von deinen Eltern negatives Feedback für das bekommen, was du gemacht hast?


    Gerade im Berufsumfeld ist ehrliches Feedback entscheidend, um das, was du tust, zu verbessern und zu verstehen, was gefordert ist.

    Es ist bedauerlich, wenn dieser Thread nur noch über Personen handelt. Niemand muss sich wegen seiner Meinung verteidigen.

    Feedback ist, wie bereits erwähnt, in der Kunst und Entwicklung äußerst wichtig, und die Spieleentwicklung ist nichts anderes als Kunst.

    @Armin Deutsch ist eine recht komplexe Sprache. Versuche einem Amerikaner beizubringen, wie er beispielsweise 'Lauf auf dem Weg' und 'Ich muss weg' unterscheiden soll. Die Groß- und Kleinschreibung kann einen Amerikaner verrückt machen. Für uns ist das selbstverständlich, und wir machen es intuitiv richtig.


    Ich finde dass am Anfang des Threads schon etwas enttäuschend weil ich mir viel Mühe gegeben hab dir ein ehrliches und Konstruktives Feedback zu geben.


    Daher lass uns hier bitte beim Thema "Deutsche Übersetzung" bleiben. Wenn dir die Antwort nicht gefällt dann frag doch einfach nach warum sie der Meinung sind.

    Dass ist doch was du wissen willst und was dich weiter bringt.


    Es ist echt nicht böse gemeint aber merkt dass sich hier im Thread Energie anstaut ^^ Lass uns alle Cool bleiben.


    Zitat

    Ich übersetze schon länger und kenne mich ein wenig aus. Ich finds lustig wie du mir versucht das zu erklären als ob ich noch nie daran gearbeitet hätte :D

    Du stellst im Forum eine Frage und beschwerst dich dann dass ich dir etwas erkläre und das obwohl ich nichts über dich weiß.

    Ich hatte mich mal vor ein paar jahren mit einem TD von einer großen Firma die 3D Software herstellt über Übersetzungen unterhalten.


    Er meinte durch die Blume hindurch, dass sie keine Leute wollen die kein Englisch sprechen. Das hat er zwar so direkt nicht gesagt aber durch die Blume durch schon.

    Die Begründung war, dass sie eine gewisse Sprachliche Intelligenz erwarten,


    Ich hatte das zumindest so verstanden.


    Man baut auch keine Pistole so, dass sie von einem dreijährigen bedient werden kann. Man erwartet einfach ein gewisses Verständnis für die Bedienung.

    Ich denke, so ticken viele Firmen.

    Als Konsument hat man dafür womöglich wenig Verständnis, weil man denkt das es doch nur förderlich ist wenn möglichst viele Menschen ohne sprachliche Barrieren angesprochen werden.

    Die große Frage bleibt: Warum tut es Epic Games dann nicht ?


    In deinem ersten Beitrag meintest du, dass sich die Community weiter aufteilen würde, und da widerspreche ich dir. Mehr nicht.

    Das ist völlig okay.

    Mein Punkt war, dass mehr UI-Sprachen nicht dazuführen würden, dass sich die UE-Community in noch kleinere Gruppen aufteilen würde. Was hat das mit Firmen & Support zu tun?

    Doch ich finde schon. Im Moment sind im englischsprachigen Unreal-Forum Menschen aus aller Welt und allen Sprachen vertreten. Wenn es das Unreal-Forum nicht nur auf Englisch, sondern auch in vielen anderen Sprachen gäbe, würde sich die Community auf diese Foren verteilen.


    Es gäbe dann ein offizielles deutsches Forum, ein offizielles spanisches Forum, ein offizielles französisches Forum usw.


    Eine Community besteht immer aus zwei Gruppen, nämlich denjenigen, die Fragen stellen, und denjenigen, die diese Fragen beantworten können. Durch verschiedene Communitys verteilen sich die Personengruppen, ohne dass sie sich gegenseitig unterstützen können.


    Die richtige Power, um Probleme zu lösen, findet sich in dem Moment, in dem Menschen, die verschiedene Sprachen sprechen, an einem Ort zusammenkommen. Hier kann jemand beispielsweise eine Frage auf Englisch stellen, die dann von vielen Menschen aus verschiedenen Sprachen beantwortet werden kann.


    Wenn du viele Experten auf verschiedene Communitys verteilst, muss das Unternehmen denjenigen helfen, die keine Antworten erhalten, und sie besser unterstützen.


    Wenn Epic Games beispielsweise jemanden einstellt, um im englischen Forum Fragen zu beantworten, dieser jedoch kein Spanisch spricht, benötigt Epic Games eine weitere Person, die Spanisch spricht, aber möglicherweise die Frage nicht beantworten kann. Das bedeutet, dass der spanischsprachige Experte den englischsprachigen Experten auf Englisch nachfragen muss, um dann dem Kunden auf Spanisch Unterstützung bieten zu können. (Das wäre irgend wie Blödsinn)

    Aus vielen Gründen ist es daher besser, den Support in so wenigen Sprachen wie möglich anzubieten.


    Jeder, der in diesem Forum eine Antwort findet, wird nicht im englischen Forum nachfragen und wird den Epic Support ebenfalls nicht damit belästigen.


    Wenn Epic Games hier eine Veränderung haben wollen würde, dann würden sie es einfach tun


    Wenn Epicgames wegen dieser Domain anfragen würde, dann würde ich, das Forum und auch die Domain gerne an Epic Games übergeben sofern es förderlich für die Community ist. Bisher hat Epic Games aber nicht angefragt.


    Was denkst du den warum Epic Games kein Interesse an einem Offiziellem deutschsprachigen Forum oder auch in anderen Sprachen hat ?


    Wir reden hier überwiegend über meine Meinung interessanter ist aber warum das Epic Games zu handhabt wie sie es handhaben ?

    Ich verstehe diese Aussage nicht. Wir sind hier doch auch eine Community, die wohl fast ausschließlich anderen Deutschsprachigen Menschen hilft. Also liegt es nicht an den angebotenen Sprachen der Benutzeroberfläche, ob sich solche Communities bilden.

    Ja aber wir sind hier Privat unterwegs. Ich kann dir nur sagen, das Firmen da anderst ticken und dass ist auch der Grund warum es die Unreal Engine nicht in zig Spachen gibt.
    Du kannst als Firma natürlich eine Software in vielen Sprachen rausbringen aber zb nur auf Englisch Support geben. Du musst die Software trotzdem immer in allen Sprachen auf dem aktuellen Stand halten.

    Aber wieso gehst du denn überhaupt davon aus und antwortest auf eine Frage, die gar nicht gestellt wurde. Es war doch von Beginn an nur gefragt, ob Bedarf besteht / wie man das finden würde.

    Ja, und was ich geschrieben habe, ist meine Meinung. Dafür muss ich mich ja nicht rechtfertigen oder ?


    Er hat eine Frage gestellt, und ich habe eine ausführliche Antwort darauf verfasst. Ich denke, ich habe meine Position gut begründet. Wenn jemand eine Frage stellt, gehe ich grundsätzlich davon aus, dass die Person möglicherweise nicht viel über das Thema weiß. Andernfalls wäre es schwierig, eine Antwort zu verfassen, die der Fragesteller verstehen kann. Ich ziehe es daher vor, Dinge zu beschreiben und zu erklären, selbst wenn der andere bereits gewisse Kenntnisse hat, anstatt anzunehmen, dass er bereits über bestimmte Informationen verfügt. Die Frage ist also eher: Warum sollte man davon ausgehen, dass jemand bereits über etwas Bescheid weiß?


    Wer eine Frage stellt, der muss auch damit rechnen dass die Antwort nicht so ausfällt wie dass was man gerne hören will.

    UE ist zwar nicht OSS, aber über GitHub könnte trotzdem jeder seine Übersetzungen einreichen.


    Warum wurde das noch nie gemacht ? Das würde mich interessieren ? Ich war schon auf einigen Messen wo Epic Games auch vor Ort war und sogar mit deutschen Epic Games Entwicklern. Würde mich sehr wundern wenn Epic Games das nicht mit dem Personal auf hinbekommen würde welches sie haben. Eine Übersetzung in mehre Sprachen würde Epic Games mit Sicherheit auch nicht viel kosten. (Verhältnismässig)


    freezernick Wenn du anderer Meinung bist, dann ist dass ok.


    wentoss


    Vielleicht hat freezernick recht und ich irre mich.Über den Support kannst du mit Epic Kontakt aufnehmen:

    help.epicgames.com

    Dort gibt unter anderen einen Unreal Engine Support.


    Du könntest vielleicht auch dem Berlin Studio eine Email schreiben.

    Vielleicht können die dir auch mehr zu dem Thema Übersetzung sagen,


    An: questions-DE@support.epicgames.com








    Ich heiße Sleepy und ich kenne dich ja nicht woher soll ich also wissen dass du doch mit Übersetzungen auskennst.


    Wenn du hier Fragen zur Übersetzungen stellst, gehe ich eher davon aus dass dus nicht weißt.


    Hier im Forum haben wir übrigens das Wiki was im grunde auch nichts anderes ist als Übersetzungen aus dem Englischen.

    Das gute beim Wiki hier im Forum ist, das wir Texte durch Keywords direkt mit dem Wiki verbinden können.


    zb append


    Hieraus wird dann automatisch eine Verlinkung zum entsprechenden Eintrag.


    Ursprünglich war das Wiki so dacht, dass Fragen die oft gestellt werden direkt mit dem Wiki verlinkt werden.


    Es ist halt verdammt viel Arbeit.

    Blender kannst du nicht mit der Unreal Engine vergleichen. Blender ist eine Open Source Software wo theoretisch jeder eine Übersetzung dafür machen könnte.


    Hast du gewusst, dass Blender früher mal auch eine Gameengine integriert hatte. Man konnte mit Blender auch Spiele erstellen.

    Ein Problem dabei war, dass wenn du Spiele mit der Blender Game Engine erstellt hattest, diese auch unter die GNU GPL Lizenz fallen würden.

    Anderest gesagt: Alles was mit einer GNU GPL Lizenz entsteht unterliegt ebenfalls dieser Lizenz.

    Kunst ist hierbei eine Ausnahme weshalb 3D Modelle die in Blender entstehen nicht unter diese Lizenz fallen.


    Hierdurch wurde es extrem schwierig Spiele die mit der Blender Engine entstanden sind kommerziell zu vertreiben.

    Es gab Überlegungen die Blender Game Engine aus Blender zu lösen und die Game Engine mit einer anderen Lizenz herauszugeben aber dazu kam es nie.


    Weißt du wie Übersetzungen in Software funktionieren ?

    Das ist normalerweise eine Tabelle mit einer ID und einer Spalte mit Englischer Überschrift,

    Wenn du eine weitere Sprache haben willst, dann erstellt du direkt daneben eine neue Spalte und trägst die Übersetzung direkt daneben ein.

    Du kannst im grunde die ganze Tabelle einem Übersetzungsbüro geben und die schreiben die Texte übersetzt daneben rein.

    Komplett ohne Copy&Paste oder Überlegungen wo jetzt welcher Text eingefügt werden muss.


    Jede Zeile ist hat die selbe ID und du musst nur die spalte wechseln um die sprache zu wechseln.

    Englisch ist Spalte B Deutsch wäre Spalte C und Spanisch Spalte D usw


    Würdest du Epic Games deine Übersetzung geben, wäre die Sortierung deiner Übersetzung vermutlich teurer als die eigentliche Übersetzung von einem Profi.


    Wenn du soviel Zeit in die Übersetzung reinsteckst, wieso nutzt du die Zeit nicht um Englisch zu lernen.

    Unreal gibts auch auf Japanisch, ich vermute sogar in dieser Zeit könntest du auch Japanisch lernen.


    Ich denke dass Übersetzungen sowohl Textübersetzungen zb Emails, oder Worddateien aber auch Onlinemeetings in naher Zukunft vollständig vom Betreibsystem übersetzt werden.

    Das heißt du mit jemanden in Japan schreibst, er in Japanisch schreibt und du in Deutsch, lest ihr Eure Texte in eurer jeweiligen Muttersprache. In wenn über Google Meets mit jemandem in Japan Sprichst wird auch er dich in seiner Muttersprache verstehen und umgekehrt. Ich denke in diese Richtung wird es gehen und damit lösen sich alle Sprachprobleme auf dem Planeten in Luft auf.

    Ich denke Microsoft wird hierfür bald ein Interface zur Verfügung stellen welche Google, Discord, Skype usw nutzen können. Ich denke das macht mehr Sinn als wenn da jeder seine eigene Übersetzungssoftware schreibt.

    Hi grundsätzlich wäre es natürlich super wenn die Unreal Engine auf Deutsch geben würde.


    Ich muss da Tomarr zustimmen. Im Moment gibt es verschiedene Tutorials in verschiedenen sprachen. Sie alle erklären welche Buttons und Knöpfe du auf Englisch drücken musst. Damit kommen denken ich wirklich alle Menschen klar selbst wenn sie kein Englisch können.


    Gäbe es die UE in verschieden sprachen zb in Deutsch, Spanisch und Französisch so gäbe es dann auch Französische Tutorials die nicht nur auf Französisch erklären sondern auch eine Französische Engine verwenden. Statt Build würde dort "Bâtir" oder "Construire" stehen.

    Für jemand der kein Französisch kann, wäre es unmöglich dieses Tutorial anzuschauen.


    Umso mehr Sprachen es gibt, umso mehr eigene Welten gibt es wo sich nur Franzosen, Spanier, Engländer, Deutsche usw untereinander helfen.


    Die Nächste Frage ist welche Vorteile hätte Epic games davon ?

    Im Moment bietet Epic Games seinen Support überwiegend in Englisch an. Gäbe es mehr Sprachen, dann müssten sie auch ihren Support in diesen Sprachen anbieten.

    Alle Texte in der Engine, alle Informationen müssten mehrsprachig angeboten werden.

    Grundsätzlich wäre es ein riesiger Mehraufwand.


    Für einige Begrifflichkeiten gibt es auch keine Deutscheübersetzung. Global Illumination zb wird weltweit mit GI abgekürzt und jeder der sich damit auskennt, weiß was gemeint ist. Auf Deutsche würde es Globale Beleuchtung heißen. Übersetzungstechnisch mag das korrekt sein, aber niemand weiß was da damit meinst und die Abkürzung dafür wäre dann wohl GB ? Wobei die meisten dann an Gigabyte denken würden ^^


    Und angenommen ich hätte sie fertig, wie würde ich sie einreichen ?

    Ich fürchte gar nicht. Es ist ja nicht so, dass es Epicgames nicht hinbekommt. DIe könnten die Unreal Engine locker in 200 Sprachen rausbringen wenn sie dann wollen würden. (Die Übersetzung dafür, könnte Epic Games aus der Portokasse bezahlen)

    Bitte nimm es mir nicht böse, aber wenn Epic Games eine Übersetzung haben möchte, dann werden die keine Übersetzungen von externen annehmen zumal Epic Games auch eine Zweigstelle in Berlin hat.


    BTW.: Ich hatte Kim Libreri auf der FMX 2018 oder 2019 kennengelernt, er ist zwar nicht der CEO von Epicgames aber CTO. Was ungefähr dem 2. Geschäftsführer entspricht.

    Die Pläne von Epic Games gehen in eine andere Richtung. Die Engine wird sich insgesamt in Richtung Film entwickeln. Film und Videogames werden dann wohl nicht mehr groß voneinander unterschieden. Das ist eher ein primäres Ziel in den nächsten 5 - 10 jahren. (Wobei eher 5 als 10 Jahre)

    Hi und Willkommen im Forum.


    Ich glaube man kann dein Problem in zwei Teile aufteilen.


    1. Die Höhe Objektes zb einem Würfel über eine Variable zu verändern.


    2.Das diese Höhe aus einer SQL Datenbank kommt.


    Lass uns mal mit 1. beginnen den da werfen sich bei mir ein paar Fragen auf:


    1.Die Höhe eines 3D Modells nachträglich verändern kannst du nicht. Egal ob es sich nun um einen Würfel oder einen Schrank handelt, die Höhe eines 3D Modells lässt sich nicht nachträglich ändern.

    2.Was du ändern kannst wäre der Skale. Wenn sich sich nun aber um einen Schrank handelt, würde der Schrank in der Höhe Skaliert werden.

    3.Beim Skalieren hast auch das Problem, dass sich das Mesh immer abhängig vom Pivot Skaliert. Um also ein Mesh nach oben zu skalieren, müsste der Pivot ganz unten sein.

    Wie gesagt, dass würde auch nur bei einem Würfel, einem Zylindern und vielleicht bei einer Kugel funktionieren.


    Das sind die Technischen Fragen die ich mir Stelle.


    Grundsätzlich sind 3D Meshes nicht dafür gemacht sie prozedural in der Unreal zu verändern.


    Mir fallen zwei Möglichkeiten einen:


    1.Bei einem Würfel und grundsätzlich bei solch einfachen Objekten könntest du das Mesh direkt in Unreal generieren dann ließe sich die Höhe beliebig verändern auch die UVs könntest du dynamisch anpassen bis hin zu einer Random Generierung.


    2.Das wird jetzt wahrscheinlich dein Vorhaben übertreffen, du könntest dein Mesh Prozedural bauen und auch bestimmte Regeln definieren. zb wenn Würfel1 2m hoch ist, dann soll Würfel2 immer halb so groß sein. So könntest du theoretsch ganze Städte mit Abhängigkeiten bauen.

    In Houdini kann man sowas umsetzen und die Indie Version ist kostenlos. Leider ist ein Houdini ein sehr sehr umfangreiches Tool.


    Ich beschäftige mich nun schon einige Monate mit Houdini und es wäre für mich daher ziemlich einfach dass dort umzusetzen. Aber als Neuling ist dass definitiv eine sehr große Herausforderung.


    Vielleicht ja noch jemand anderst eine bessere Idee aber mehr wie Skalierung, Mesh Generierung und Houdini fällt mir nicht ein.


    Ich bin aber gespannt was du auf diese Infos sagst.

    Ansel ist eine Nvidia Software die es erlaubt Screenshots Filme direkt auf der Grafikkarte zu speichern. Hierzu muss das Material nicht erst auf der Platte gespeichert werden.

    Externe Programme wie OBS gehen hierbei mehr auf die Performance.


    Falls du Ansel nicht nutzt würde ich es wie DJ EKI schon sagte deaktivieren.

    Tomarr hat völlig recht. Wenn du in Unreal auf "Play" drückst, wird eine virtuelle Spieleumgebung erstellt, die sich völlig vom fertigen Spiel unterscheiden kann. Um dein Spiel final zu testen, benötigst du einen richtigen Benchmark-Test.

    Hier sind einige zusätzliche Tipps, die mir einfallen:

    1. Hast du überprüft, ob dein Treiber absolut aktuell ist?
    2. Falls du den neuesten Treiber installiert hast, könnte es auch sein, dass dieser Treiber für Unreal zu neu ist. Das klingt zwar seltsam, aber ich hatte bereits Fälle, in denen Unreal den neuesten Treiber nicht unterstützte. Allerdings halte ich dieses Szenario für unwahrscheinlich, da es normalerweise zu anderen Fehlern führt, anstatt die Performance zu beeinträchtigen.
    3. Überprüfe, ob Unreal die neue Grafikkarte erkannt hat. Du kannst das unter "Edit/Editor Preferences" überprüfen. Deine neue Grafikkarte sollte dort angezeigt werden.
    4. Kontrolliere, ob in den Windows-Einstellungen die Energieeinstellung auf "Höchstleistung" eingestellt ist. Im schlimmsten Fall könnte es sein, dass du deinem Rechner gesagt hast, Strom zu sparen, während du gleichzeitig maximale Leistung von deiner Grafikkarte verlangst. Das funktioniert natürlich nicht. Allerdings würde dieses Problem wahrscheinlich auch bei Starfield auftreten, weshalb es unwahrscheinlich ist.
    5. Überprüfe die Temperaturen von CPU und GPU, um sicherzustellen, dass keine Überhitzung vorliegt.
    6. Nvidia bietet Treiberprofile an, mit denen du deine Grafikkarte für ein bestimmtes Spiel optimieren kannst. Hast du das schon einmal für Unreal gemacht? Das sollte in den Nvidia-Einstellungen möglich sein.

    Grundsätzlich muss hier jedoch kein Hardwareproblem vorliegen. Performance-Probleme können verschiedene Ursachen haben. Es ist wichtig zu verstehen, wie CPU, GPU, RAM und Festplatte zusammenarbeiten.

    Deine CPU erstellt eine Liste von Aufgaben und entscheidet, welche Aufgaben von der CPU und welche von der GPU erledigt werden. Die GPU ist besonders gut darin, grafische Berechnungen schnell durchzuführen. Die Aufgaben, die die CPU an die GPU sendet, nennt man "Draw Calls". Jedes Mesh, jedes Material und jeder Schatten ist ein Draw Call. Wenn es zu viele davon gibt, wird zuerst die CPU ausgelastet, und die GPU erhält nicht schnell genug Aufgaben von der CPU.

    Mit anderen Worten: Egal wie leistungsstark deine Grafikkarte ist, wenn deine CPU zu langsam ist, wartet die Grafikkarte. Das ist, als ob am Fließband der letzte Arbeiter der schnellste ist und alle anderen davor langsam arbeiten. Deshalb kann auch die Optimierung der CPU eine wichtige Rolle spielen.

    Weiter geht es mit dem RAM. Wenn dein RAM nicht ausreicht, müssen Informationen, die normalerweise im schnellen RAM gespeichert werden, auf die Festplatte ausgelagert werden. Wenn deine Festplatte langsam ist, kann auch der RAM nicht mithalten, und alles wird langsamer.

    Installiere Starfield auf eine SSD-Festplatte, selbst mit einem Hochleistungsrechner und einer Top-GPU wird das Spiel sonst unspielbar.

    Das Profiling in Unreal ist übrigens ein mächtiges Werkzeug, um Engpässe in der Engine zu finden. Es gibt jedoch noch viele weitere Optimierungsmöglichkeiten.

    Ein Delta von 5,32 Sekunden bedeutet, dass Frame 1 gezeichnet wird, und dann 5,32 Sekunden später wird Frame 2 gezeichnet. Unreal beschwert sich darüber, dass die Zeit zwischen den beiden Frames sehr lange ist.


    Ich vermute, dass dies der Grund für dein langes Standbild ist.


    Warum das so ist, ist schwer zu sagen, aber ich rate ins Blaue hinein:


    Da in der Fehlermeldung auch von einem 'Tick' die Rede ist, und ein Tick im Grunde genommen ein Frame ist, hängt die Geschwindigkeit davon ab, wie schnell deine Grafikkarte ist. Eine schnellere Grafikkarte kann mehr Frames pro Sekunde zeichnen, während eine langsamere Grafikkarte weniger Frames zeichnen kann. Das bedeutet, dass ein Tick schneller oder langsamer sein kann.


    Wenn du einen Tick und einen Deleay in irgendetwas integrieren würdest, würde das in etwa bedeuten:


    'Jedes Mal, wenn du ein Frame zeichnest, dann warte 2 Sekunden' (das mit einer Verzögerung von 2 Sekunden).


    Die große Frage ist: Was bewirkt dieser Tick?


    Es scheint irgendwie, dass ein Blueprint Einfluss auf das Setzen der Bäume oder deren Position hat. Wenn du einen Baum verschiebst, scheint Unreal hier eine Menge Timeouts abwarten zu müssen.


    Diese These ist jedoch wie gesagt reine Spekulation.


    Normalerweise gibt es beim Verschieben eines Baums in Unreal keine Deltasekunden. Du scheinst irgendeinen Blueprint zu verwenden, der diesen Fehler verursacht."





    Zu deiner Frage solltest du einige Hintergrundinformationen haben. Das Terrain sollte idealerweise nicht skaliert werden.

    1. Auf das Terrain wirst du später Texturen anwenden, wie zum Beispiel eine Gras-Textur. Wenn du das Terrain skalierst, musst du auch das Tileing der Texturen anpassen. Anders ausgedrückt, wenn du die Skalierung änderst, musst du alles so anpassen, dass die anderen Elemente in deiner Szene immer noch korrekt sind.
    2. Das Gleiche gilt auch für den Vertex-Paint-Pinsel. Dieser hat sowohl eine maximale als auch eine minimale Größe. Wenn du das Landscape zu winzig klein skalierst, kannst du den Pinsel nicht klein genug einstellen, um in angemessener Auflösung zu malen. Ist dein Terrain zu groß, kannst du den Pinsel nur in maximaler Größe verwenden, was dazu führen kann, dass der Pinsel auf dem Terrain winzig erscheint.
    3. Es ist besser, das Terrain selbst nicht zu skalieren, sondern die Größe des Terrains anzupassen.
    4. Visuell betrachtet, erscheint das Terrain wie ein 3D-Mesh, aber technisch gesehen ist es das nicht. Technisch gesehen ist das Terrain nur eine flache Ebene, die aus nur einem Viereck besteht und keine Dreiecke hat.

    Da das Terrain riesig ist, kann nicht einfach eine riesige Textur darauf gemappt werden. Angenommen, dein Terrain ist 4096 * 4096 Meter groß, und du verwendest eine 4k-Textur (4096²), hättest du pro Quadratmeter genau einen Pixel. Minecraft hat meiner Meinung nach 32² oder 64² Pixel pro Quadratmeter :)

    Aus diesen Gründen gibt es bei Terrains drei wichtige dinge:

    1. Die Heightmap: Das Terrain ist technisch gesehen flach, aber die Höheninformationen werden durch die Heightmap erzeugt, im Gegensatz zu einem 3D-Mesh, bei dem die Höheninformationen aus den Vertices stammen.
    2. Die Tesselierung: Dies kann als automatische Unterteilung betrachtet werden. Wenn du näher an das Terrain herangehst, wird es weiter unterteilt, und es entstehen mehr 3D-Ecken. Dadurch ist die Auflösung in deiner unmittelbaren Umgebung höher als weiter entfernt im Terrain.
    3. Das Vertex Paint: Statt eine riesige Textur auf das Terrain zu legen, wird das Vertex Paint auf das Terrain angewendet. Eine Wiesentextur wird dabei in kleinere Abschnitte aufgeteilt und überlagert sich. Welche Textur an welcher Stelle sichtbar ist, wird über das Vertex Paint definiert. Wenn du mit deinem Pinsel arbeitest und eine Wiesentextur aufträgst, malst du technisch gesehen keine Wiese auf das Mesh, sondern du erstellst eine Maske, die in den Vertex-Informationen gespeichert wird. Damit bestimmst du, welche Textur an diesem Vertex sichtbar sein soll.

    Du kannst beispielsweise einstellen: 50% Wiese, 25% Erde, 25% Stroh, um eine Mischung aus allen drei Texturen zu erhalten.

    Zusammengefasst änderst du nicht die Skalierung deines Terrains, sondern die Größe des Terrains, damit die Auflösung und die Tesselierung konstant bleiben. Wenn du dein Terrain riesig skaliertest, würde die Tesselierung nicht mehr korrekt sein, da deine Kamera im Vergleich zum Terrain winzig wäre. Du müsstest dann die Tileing aller Texturen entsprechend anpassen. Letztendlich sollte es möglich sein, deine Unreal-Texturen auf das Terrain anzuwenden, ohne die Texturen in irgendeiner Weise bearbeiten zu müssen. Nur so macht der Arbeitsablauf Spaß.


    Einfach zu skalieren ist übrigens immer keine gute Idee. Der Skale-Faktor bleibt im Mesh bestehen kann zu Fehler führen.

    In 3D prorammen kann man einen Faktor auf 1 Setzen. Sprich du skalierst ein Mesh von 1 auf 1, 4546 und setzt den Skale danach auf wieder auf 1. Unreal behandelt das Mesh dann nicht mehr als wäre es skaliert was weniger Probleme machen kann.

    EDIT: Ich probiere mal 1.) aus: Eine riesige Plane auf die anderen Collisions zu legen und dann drüber zu rollen.

    EDIT: Springt trotzdem.

    Wie? Du nutzt die große Plane und es springt trotzdem ? Wie kann dass den Sein ? Dann gibt es ja im Prinzip nichts was die Kugel springen lassen kann.

    Bist dir den Sicher, das dass springen überhaupt von den Cubes kommt? Wäre es vielleicht möglich, dass der Sprung durch die Rotation der Kugel zustande kommt ? Wie ein Rad was auf einer Seite eine Ecke und und alle 360grad springt das Rad in die Luft.


    Ich finde musst das noch mehr eingrenzen ob das Problem an der Physik, an den Cubes oder an etwas anderes Liegt.

    Solange das nicht klar ist, finde ich, brauchst du dir über Möglichkeiten keine Gedanken machen.

    Du musst erstmal die Ursache rausbekommen und dass kannst nur du in dem du verschiedene dinge testest.