Beiträge von Engel

    Unreal kann bis zu einem Umsatz von 1000000$ Millionen kostenlos genutzt werden danach zahlst du 5% solange solange dein Umsatz über einer Million liegt was immerhin 50000$ auf einen Schlag sind. Für 50000 Euro kannst du ne ganze Menge Unity Lizenzen kaufen.

    Die 5 % werden ab 1 Mill$ Umsatz bezahlt. Daher bei einem Umsatz von 1,1 Mill$ verlanagt Epic 5000 $ (1,1 Mill - 1 Mill = 100k * 5% = 5k).

    Dazu habe ich diese Stelle gefunden: "

    Die veranschlagten Entwicklungskosten eines Prototyps müssen mindestens 30.000 € und können maximal 400.000 € betragen."

    Ah verstehe, du möchtest einen Prototyp (30k€) entwickeln. :) Fördergelder für Produktion sind 100k€.
    Mit einem Prototyp kommt man nicht weit. Ein Publisher kann man meistens nur mit einem umfangreichen Prototypen oder fortgeschrittene Produktion überzeugen.

    Geht man von einem schlechten Bruttogehalt von 2600 Euro in Steuerklasse 1 aus sind das Netto ca 1800 Euro pro Mitarbeiter.

    Bei 4 leuten die am Projekt arbeiten sind das 10400 € Monat reine Lohnkosten im Monat und hierbei ist der Arbeitgeber Anteil nicht mal mit rein gerechnet.

    Wenn du es schaffst mit deinen 4 Mann Team innerhalb eines jahres dein Spiel zu Releasen hast du bereits Lohnkosten von 124800€

    Sleepy, neben dem Arbeitgeberanteil von ca. 24 % kommen zusätzlich noch Steuerbürokosten, Lohnbuchhaltungskosten und die Umlage U1 und U2 https://de.wikipedia.org/wiki/Umlage_U1 und eventuell Kranktage der Mitarbeiter.


    Dann muss man ca. eine halbe Stelle opfern die sich nur um die Verwaltung mit den Behörden und Dokumente für die Computerspielförderung des Bundes kümmert.

    Butter Fly Games Die zwei Kritiken beziehen sich aus ihren Augen auf die ungenügende Grafik.
    Ich habe dein Spiel ausprobiert. Es ist wie "Dungeon Defenders", musste es aber nach 0,5h beenden, da ich Kopfschmerzen bekommen habe.

    Ein fantastisches Gerne, was ich auch gerne in der Freizeit spiele. Aus eigener Erfahrung würde ich sagen, dass dies programmiertechnisch aufwendig ist.

    Die Spielfeatures sollten einfach gehalten werden, um erstmal eine solide Basis zu erstellen. Wenn das Grundkonzept umgesetzt wurde, kann man das fertige Spiel durch Ideen aus der Community erweitern.

    Hallo Ihr Lieben.


    Ich habe ein neues System, um in Zukunft mehr Dynamik in die Städte zu bringen:love:.

    Gebietseffekte

    In jeder cm der Landschaft können Parameter wie Kriminalität, Landwert, Umweltverschmutzung, ... abgefragt werden. Die verschiedenen Parameter werden über ein
    TextureRenderTarget2D visualisiert.


    Die verschiedenen Servicegebäude für die Bewohner verwenden dieses neue System. Servicegebäude erzeugen in der Umgebung verschiedene Effekte. Jeder Effekt hat einen Radius. Zum Rand nimmt der Effekt allmählich ab. Effekte können sich addieren.


    Das nachfolgende Bild zeigt den Brandschutz der Feuerwehren. Der Farbklecks in der Mitte symbolisiert gelb=geringer, glau=hohern Brandschutz.


    Personen und Gebäude fragen an beliebigen Koordinaten den dort herrschenden Zustand ab und reagieren entsprechend.


    Das Aktualisieren der Texture kann live mitverfolgt werden. Wenn man ein neues Gebäude bauen möchte, befindet es sich zuvor auf dem Mauszeiger um den Bauort zu bestimmen. Vor dem Bau eines Servicegebäudes sieht man auf der Karte, welche Effekte das Gebäude bei Vollauslastung hat. Das heißt aber auch wenn eine Feuerwehr nur zu 50 % besetzt ist, die Effektivität darunter leidet.


    Sleepy brachte mich auf die Idee:*.

    Was ich ja spannend finden würde wäre mehr Beeinflussung von außerhalb durch verschiedene Ereignisse.

    Damit ist es möglich, lokal durch Ereignisse die Brandgefahr zu erhöhen (z.B. weil Jugendliche mit dem Feuer spielen). Mit einer gewissen Wahrscheinlichkeit kann dann dort ein Haus brennen und die Feuerwehr muss anrücken. Hoffentlich ist auf dem Weg kein Stau;).


    Das System funktioniert prima. Abfragen sind super schnell und Multithread-fähig. Das Aktualisieren der TextureRenderTarget2D erfolgt Asynchron. Der Nachteil ist, das ca. 150 MB mehr RAM benötigt werden.

    Statistiken


    Um mehr über seine Stadt zu erfahren, können Graphen für eine Vielzahl von Werten angezeigt werden^^.

    Die Graphen aktualisieren sich live. Damit kann zum Beispiel Tendenzen zu den Rohstoffen angesehen und gegebenenfalls eine weitere Fischerhütte bauen werden (Fisch ist die rote Linie im Fenster Graph;)). Der Graph wird mit dem kostenlosen Plugin "Kantan Charts" gezeichnet.

    https://www.unrealengine.com/m…-US/product/kantan-charts


    "Kantan Charts" ist modifiziert um auch Asynchron Daten empfangen zu können.


    Aller n-Spielsekunden werden Messwerte gespeichert. Damit die Savegames nicht endlos groß werden, werden nur die wichtigsten Punkte gespeichert. Zum Erkennen der wichtigsten Punkte nutze ich den "Swinging Door Algorithmus".
    https://support.industry.sieme…s-in-pcs-7?dti=0&lc=de-WW


    Für Messwertaufzeichnungen ist dieser Algorithmus nahezu perfekt. Einfach umzusetzen, performant, Streaming-fähig, aber auch verlustbehaftet.


    Die wichtigen Punkte werden dann im Savegame zusätzlich komprimiert.



    Im Englischen UE4 Beitrag habe ich ein Bild gemacht, wie die Vertices der Straßen aussehen:
    https://forums.unrealengine.co…-than-1-million-residents

    Straßen sind Procedural Meshs. Je nach Untergrund und Kurvenradien liegen die Segmente unterschiedlich nah beieinander. Im Bild kann man es gut am Hügel sehen, dass die Abstände kleiner werden.

    Ich möchte euch ein elementares Feature vorstellen. Vielleicht eines der wichtigsten Features eines city builders.


    Gebäude


    Es gibt zwei grundlegende Arten, von Gebäuden:


    Zonengebäude:

    Diese Art Gebäude funktioniert wie beim klassischen "Sim City".

    Der Spieler platziert Wohn- und Büro-Zonen. Je nach Bedarf und Umgebungsbedingungen und die allgemeine Lage der Stadt entstehen automatisch neue Häuser.

    Grün = Wohnzonen, blau = Bürozonen


    Zonen kosten Geld und Ressourcen wie Holz, Stein, Eisen, Stahl, Glas und Werkzeuge:D

    Es ist möglich Zonen zu verbessert, so das größere Gebäude entstehen. Der Spieler muss sich durch die höhere Bevölkerungsdichte mehr und mehr Gedanken um das Verkehrsmanagement machen.


    Gebäude und deren Bewohner haben Bedürfnisse. Am Anfang benötigen Bewohner vor allem Nahrungsmittel. Wurden die Zonen verbessert verlangen die Bewohner mehr und mehr Luxusgüter wie zum Beispiel Bücher, Wein, Schmuck und Medizingeräte. Sind die Bewohner unzufrieden, dann verlassen sie die Stadt.


    Werden diese Bedürfnisse befriedigen, zahlen die Bewohner mehr Geld in die Stadtkasse ein.

    Um die Bedürfnisse erfüllen zu können komme ich zur zweiten Gebäudegruppe^^:


    Industriegebäude /Servicegebäude:

    Diese Kategorie von Gebäuden sind an keinen Zonen gebunden und können frei, daher ohne Raster platziert werden. Fast alle Gebäude benötigen Arbeiter um zu funktionieren haben laufende Unterhaltskosten.


    Servicegebäude bieten in einem Radius um das Gebäude einen Service an (zum Beispiel anbieten von Freizeitmöglichkeiten, Bildung und Gesundheitsversorgung, Reduktion Kriminalität und Brandgefahr, ... ). Unter dieser Kategorie fallen auch "Buff-Gebäude", die umliegende Gebäude verstärken.


    Industriegebäude produzieren Ressourcen und Waren. Ressourcen können in Produktionsketten weiterverarbeitet werden. Am Anfang einer Spielpartie sind die Produktionsketten noch recht einfach und werden später umfangreicher.

    Beispiel für Herstellung von Möbel und Wein:


    Industriegebäude haben ein eigenes lokales-Lager für Ressourcen. Ein LKW transportiert Holz zur Möbelfabrik. Das lokale Holz-Lager der Möbelfabrik wird gefüllt. Die fertigen Möbelstücke haben auch ein lokales Lager. Ein LKW holt die Möbel ab und liefert es zur Spedition. Erst dann sind die Waren für die Bewohner und dem Bürgermeister verfügbar.


    Das nachfolgende Video zeigt die umfangreichen Informationen einer ausgewählten Eisenschmelze:

    Einige Gebäude wie zum Beispiel die Eisenschmelze gibt es in mehreren Größen. Die größere Eisenschmelze kann viel mehr Eisenerz in Eisen verarbeiten. Das ist auch nötig im späteren Spielverlauf. Große hochwertigere Gebäude benötigen viel mehr Baumaterialien.

    Manche Industriegebäude funktionieren nicht überall. Zum Beispiel funktioniert eine Lehmgrube nur dort, wo auch Lehm abgebaut werden kann. Aus Lehm werden Ziegel hergestellt.

    Innerhalb brauner Flächen kann Lehm gefördert werden.


    Ich mag die Kombination aus Zonengebäuden und eigens geplanten Industrieketten:love:
    Es ist spannend, in einem city builder nicht nur Geld als Ressource zu haben.

    Die "Texture Sample" sind in einem Material auf 16 begrenzt. Die Limitierung kommt von "Direct X".

    In den Material Stats steht die Anzahl "Texture Sample".


    Es können mehrere Texturen zu einem LookUp zusammengefasst werden. Die Anzahl "Texture Sample" werden reduziert.


    UE4 schafft durchaus +100 4k Texturen in einer Szene darzustellen.

    Je weiter das Objekt von der Kamera entfernt ist, des so geringer wählt UE4 die Auflösung einer 4k Texture. Das spart viel Video-Ram und erhöht die Perfomence.

    Das Verfahren nennt sich Mip Mapping: https://de.wikipedia.org/wiki/Mip_Mapping


    Damit Mip Map in UE4 verwendet werden kann, muss die Texture-Auflösung = 2n entsprechen (z.B. 512x1024, 1024x1024, 4096, 4096)
    UE4 unterstützt eine maximale Auflösung von 8192x 8192.
    In den Texture-Einstellungen muss Mip Map aktiv sein.

    Inhaltsverzeichnis [VerbergenAnzeigen]
    1. Farmen

    Farmen

    Ich möchte euch ein Feature vorstellen was mir am Herzen<3 liegt: Farmen


    In City Next können große Städte gebaut werden. Wenn alle Gebäude Wolkenkratzern sind, sieht das Stadtbild eher ungewöhnlich aus. Farmen eignen sich ziemlich gut um auch ländliche Regionen darzustellen.


    Beim Bauen von Farmen soll der Spieler viele Freiheiten genießen. Um die Farm ist immer eine Straße oder Feldweg. Mit den flexiblen Straßenbautools kann die Kontur der Farm frei definiert werden. City Next erkennt automatisch, wo Farmen sinnvoll platzierbar sind.


    Das Video zeigt, wie flexibel das Bauen von Farmen ist:


    Farmen Produzieren Grundrohstoffe wie Obst, Gemüse, Wolle, Weizen (für Bier^^ und Brot), …

    Je größer die Farm ist, des so mehr Waren werden pro Tag produziert.


    Der Farmboden ändert seine Textur zu einem Acker und es werden tausende bis zehntausende Pflanzen:love: platziert (HISM macht es möglich).


    Farmen verbrauchen im Vergleich zu anderen Gebäuden recht viel Platz. Ist aus einem Städtchen eine größere Stadt entstanden und die Stadtkasse gefüllt, dann könnte der Spieler ein Teil der Grundrohstoffe importieren und so mehr Platz für die Stadtexpansion zur Verfügung haben. Achtung: Importieren von Waren kostet mehr als in Eigenproduktion.


    Diese Möglichkeiten gibt es den Farmertrag zu erhöhen und damit die Versorgung von größeren Städte zu ermöglichen:

    -          Forschungen, welche die Produktivität der Farmen steigert

    -          Buff-Gebäude, die andere Gebäude in der Nähe Verbessern



    Der Spieler wägt daher strategisch ab:/, ob er z.B. lieber die eigene Produktion verbessern, Waren importiert, Forschungen betreibt, umliegende Gebäude verbessert oder neue Wohnungen für die wachsende Bevölkerung baut.

    Vielleicht als Idee:
    Im Level ist ein Postprocess-Material standardmäßig aktiv und macht den Bildschirm schwarz. Dann kannst du dir Zeit nehmen alles zu laden. Zum Schluss das Material entfernen oder die Material-Parameter ändern das alles sichtbar wird (mit schicken Übergangseffekten). ^^

    Viele Personen mit Animation darstellen:


    UE4 bietet die wahrscheinlich besten Animations-Tools in Spielen. Diese sind jedoch mit relativ hohen Rechnenaufwand verbunden (wenn es viele Objekte werden).


    Wenn man Szenen mit vielen Personen hat, ist das eine Herausforderung für Grafikkarte und Prozessor.

    Mit City Next ist eins meiner Ziele, die GPU und CPU Kosten so gering wie möglich zu halten. Bei Animationen mit den "Skeletal Meshes" sind nach ca. 500 Personen Schluss. Die CPU Zeit kann durch einige Tricks wie "Multi Threaded Animation Update" und "Animation Sharing Plugin" reduziert werden. Bei der GPU sollen die Draw Calls gering bleiben. Jeder Static Mesh erzeugt min. 2 Draw Calls (1x Mesh x Material). Beim "Skeletal Meshes" weiß nicht gerade nicht wie viele Draw Calls es min. erzeugt werden. (Das sind recht viele Fachbegriffe:D)


    City Next kann mehrere 10.000 Personen gleichzeitig darstellen (mit Animation:love:).

    - Szene mit 0 Personen: 17,9 ms

    - Szene mit 20.000 Personen: 21,3 ms (+19 %) (die Personen erzeugen auch Schatten ;))

    Alle Personen haben folgende Variationen:
    - Kleidungs- und Hautfarben
    - Animationen
    - Animationengeschwindigkeiten
    - Position, Scale Rotation


    Wie das geht das?
    - Hierarchical Instanced Static Meshes (HISM)

    - Vertex-Animation

    - Instance-custom Parameter


    HISM fasst mehrere gleiche static meshs zu Instancen eines static mesh zusammen. Vorteil: Draw Calls können verringert werden. Link

    Vertex-Animation können die Vertices eines static meshs mithilfe einer Offset-Text manipuliert werden. Animation sind damit möglich, obwohl das Objekt wie ein static mesh verwendet wird. Diese Art Animation wird nur von der Grafikkarte berechnet. Die CPU muss nichts machen.^^

    Das Erzeugen von Vertex-Animation können u.a. mit diesen Plugin realisiert werden: Link
    (In Blender geht das Erzeugen der Vertex-Animation auch Link)

    Seit der UE4.25 können für HISM und ISM Materialien zusätzliche Instance-Parameter erhalten.
    Jede Instance kann damit etwas verändert werden, obwohl es sich auf ein static mesh bezieht.

    Mit diesen Parametern werden die Animationssets und Kleidungs- und Hautfarben gewählt.


    City Next verwendet dieses System für die Fußgänger auf dem Bürgersteig. Im Gebäudeeditor können neben Gebäuden auch Personen platziert werden. Die Gebäude fühlen sich viel lebendiger an (ähnlich wie in Anno 1800 wo die Gebäude ringsherum voller leben sind).

    (Bild: Personen bewegen sich)

    Vielleicht ist das für den einen eine Inspiration für das eigene Spiel.
    Ein Stadion voller Personen? Ja das geht.^^