Wie wir anderthalb Jahre lang die Engine und das Spiel darauf gemacht haben

Hallo allerseits, liebe Freunde! Hier sitze ich, schaue auf das endlose Codeblatt und führe eine Überprüfung mit einem Glas rotem Bu durch. Ein Jahr ist vergangen. Ein Jahr, verdammt noch mal, nur ein Jahr - so viele und so wenige gleichzeitig. Wir hatten napoleonische Pläne für dieses Jahr, und jetzt scheinen wir nicht viel Zeit zu haben. Auf der anderen Seite haben wir es geschafft, etwas zu tun, das es wert war, in die Annalen von ayty mit der Aufschrift "Demenz und Mut" einzutreten. Ich würde diese Geschichte "Wie Sie Ihren Motor mit Werkzeugen beschädigen und in nur einem Jahr von Grund auf neu rendern können" nennen. Die Veröffentlichung wird in mehreren Bänden veröffentlicht, aber wo Sie hingehen sollen, müssen Sie irgendwo anfangen. Also lass uns gehen!

Vor genau einem Jahr haben wir mit einem Projekt begonnen, über das ich jetzt ausführlich schreiben möchte. Aus der Höhe der Erfahrung kann ich mit Sicherheit sagen: Dies ist eines der riskantesten und ehrgeizigsten Dinge, die wir je begonnen haben. Ich denke, die Erfahrung unseres Teams wird für andere Spieleentwickler nützlich sein, aber er wird zumindest die Spieler amüsieren.

Hier sollte ich mich vorstellen: Mein Name ist Ivan, ich bin der technische Direktor eines jungen, aber ehrgeizigen Unternehmens. In den letzten 5 Jahren habe ich kommerzielle Motoren entwickelt. In den letzten 7 Jahren arbeitete er in einer großen Spielefirma, wo er an einer Engine für ein plattformübergreifendes Session-Multiplayer-Spiel arbeitete. Nun, vorher hat er an allen früheren Arbeitsplätzen entweder Engines oder das ganze Spiel erstellt. Und eine wichtige Klarstellung: So kam es, dass fast meine gesamte Erfahrung in der Entwicklung von Engines mit mobilen Plattformen zusammenhängt.

Das erste Projekt, an dem ich teilgenommen habe, war die Entwicklung einer OpenGL-kompatiblen 3D-Engine für mobile Geräte für Motorola. Dann gab es die Engine für Casual Games, bei der unsere Kunden Electronic Arts, Chillingo, Big Fish Games und andere bedeutende und nicht sehr bedeutende Unternehmen waren. Anschließend wurde diese Engine für ein großes Spielprojekt verwendet.

Im Allgemeinen hat sich der Motor, an dem ich gearbeitet habe, im Laufe der Jahre weiterentwickelt. Es war eine Open-Source-Technologie, und wir begannen mit der Entwicklung, als das Unternehmen, unter dessen Schirmherrschaft wir Spiele für unsere Kunden herstellten, noch recht klein war. Wir haben es weiter fertiggestellt und schließlich eines der ersten Shooter-MMOs für iOS / Android veröffentlicht, was eine Art Durchbruch im noch aufstrebenden Markt der mobilen Shooter darstellt.

Vor ungefähr einem Jahr nahm ich mein Herz und beschloss, die Firma zu verlassen, das Projekt so geliebt und lieb zu meinem Herzen zu lassen, um ein freies Bad zu nehmen. Es war nicht einfach, bezweifelte ich lange, aber die gesammelten Erfahrungen und das Wissen, das ich über die Jahre der Arbeit gesammelt hatte, deuteten darauf hin, dass mein gesamtes Gepäck in etwas nicht weniger oder vielleicht kühlerem verpackt werden konnte. Ich hatte sogar eine Idee, wie dies getan werden könnte, aber ich war mir nicht sicher, ob wir es mit Hilfe eines kleinen Teams schaffen könnten, dass wir in kurzer Zeit qualitativ hochwertige und marktfähige Technologie herstellen könnten. Aber wie Sie wissen, begünstigt das Glück die Tapferen, und es ist uns gelungen. Ziemlich schnell haben wir ein Team von Fachleuten zusammengestellt, das von dem gemeinsamen Wunsch getrieben wurde, eine neue, völlig einzigartige Technologie zu entwickeln, die dem Markt zeigt, wie man das Eisen moderner Mobilgeräte optimal nutzen kann.

Und hier begann der Spaß. Innerhalb eines Monats nach dem Start unseres Spielestarts wurde ein Plan erstellt. Etwas völlig Neues und Einzigartiges, das alle bestehenden Lösungen übertrifft. Klingt sehr ehrgeizig und cool, oder? So ist es! Aber es gab Risiken. Wir haben uns zum Ziel gesetzt, unsere unbescheidene Idee in nur einem Jahr zu verwirklichen und in anderthalb Jahren unser erstes Spiel zu starten.

Ich weiß, ich weiß, in diesem Moment klingt es absurd. Aber - unerwartet - fand diese verrückte Idee in unserem Team viele Unterstützer (und dies bewies erneut, wie wichtig es ist, Berge zu drehen, um die Unterstützung derselben abenteuerlustigen Gleichgesinnten zu gewinnen). Es ist eine Sünde, sich zu verstecken. Die Idee, die eigene Engine zu reduzieren, motiviert Programmierer wirklich zu Exploits. Viele erinnerten sich an die lange Geschichte von 4A Games, in der die Entwickler, nachdem sie das GSC verlassen hatten, eine Engine für das gefeierte Metro-Spiel von Grund auf neu entwickelten. Es scheint mir, dass der Erfolg der Jungs von 4A mehr als ein Team von Fortschritten motiviert, so wie er uns inspiriert hat.

Im Allgemeinen haben wir uns entschieden. Das wird meine Geschichte sein. In unserem Blog werde ich Ihnen zusammen mit meinen Kollegen erzählen, in welcher Qual unsere Technologie geboren wurde, durch welche Dornen wir uns auf den Weg zu den Sternen gemacht haben und warum wir genau die Entscheidungen getroffen haben, die wir letztendlich getroffen haben. Ich werde Ihnen in chronologischer Reihenfolge die Geschichte der Blitz Engine vom ersten Tag der Entwicklung bis zur endgültigen Veröffentlichung erzählen. Ohne Verschönerung der inneren Küche nur reine Wahrheit.



Die erste Frage, die Sie wahrscheinlich stellen werden, lautet: „Warum nicht Einheit oder Unwirklichkeit?“ Nun, die Frage ist ziemlich logisch und richtig.

Im Allgemeinen stehen alle Indie-Entwickler bei der Wahl der Dream Engine - der Engine, mit der genau das Spiel gemacht wird, mit dem Millionen verdient werden - vor der Wahl: Unity oder Unreal. Eigentlich haben beide ihre Vor- und Nachteile, aber warum passten sie nicht zu uns?

Beginnen wir mit der Einheit. Es gibt nur wenige Fragen, mit einer Ausnahme: Es ist C #, und wir sägen in C ++. Dementsprechend verschwindet die Einheit. Wenn Sie uns zu Unity beraten möchten, weil es sich um eine hervorragende Technologie handelt, mit der Sie mit großem Wunsch in C ++ schreiben können, dann seien wir ehrlich: Es handelt sich nicht um vollwertiges C ++. Und wir sind keine C # -Entwickler und planen noch nicht, sie zu werden. Das zweite Problem ist, dass es trotz der Bemühungen der Unity-Entwickler nicht die schnellste Technologie in Bezug auf die Leistung ist. Die getroffenen Entscheidungen unterliegen Einschränkungen, einschließlich der Leistung.

Unwirklich - es scheint, sowohl in ++, als auch die Jungs haben vernünftig geschrieben. Aber der Motor wurde vor ungefähr 10 Jahren geschrieben. Die dort verwendeten architektonischen Lösungen sind modernste Lösungen dieser Zeit. Aber die Welt hat sich verändert und über 10 Jahre sind viele neue und fortschrittliche Ideen aufgetaucht. Vielleicht nicht so originell, um UE5 zu schreiben, aber genug, um einen anständigen Durchbruch zu erzielen. Wir haben uns entschlossen, auf diese neuen architektonischen Lösungen und Ansätze zu setzen.

"Ja, Unreal Engine ist cool, es wurde von Profis in C ++ geschrieben", wird der aufmerksame Leser sagen. Natürlich ist es das. Aber ich möchte Sie daran erinnern: Unser Ziel ist es, das Beste aus mobilen Geräten herauszuholen und die Branche voranzubringen. Unreal Engine ist eine Allzweck-Engine, und das ist nicht schlecht, sie gibt der Universalität ein Plus. Solche Technologien wurden für Spiele in verschiedenen Genres entwickelt, und dieser Vorteil bringt architektonische Einschränkungen für die Entwickler der Engine mit sich. Und zu Beginn wollten wir Grenzen und Stereotypen auflösen und nicht in sie passen.

Am Ende: Wählen Sie Einheit - wählen Sie eine Umgebung, die uns fremd ist, wählen Sie Unwirklich - machen Sie ein durchschnittliches Projekt.

Jeder weiß, dass die modernen Top-Shooter auf dem PC mit ihren eigenen Studio-Engines hergestellt werden. EA hat DICE und eine Frostbyte-Engine, Activision und Ubisoft haben ihre eigenen technologischen Lösungen, 4A Games hat auch eine eigene Engine gebaut, id Software hat id Tech. Entwickler von Top-Shootern auf Konsolen tun dasselbe. Ja, natürlich kostet Arbeit, Zeit, Geld und alles andere in dieser Situation mehr. Auf der anderen Seite haben Sie die volle Kontrolle über die Technologie: Sie können Lösungen auswählen, die "für alle" schneller und effektiver sind als vorgefertigte Lösungen. Das Ganze ist in der Tat in der Anpassung: Sie entscheiden, was für Sie wichtig ist, und legen Wert darauf. Exklusivprodukte für Konsolen sind so konzipiert, dass sie das Beste aus dem leistungsstarken Cantilever-Eisen herausholen. Und das brauchen wir nicht nur von Konsolen, sondern auch von Handys!

Wir haben uns jedoch für das Gegenteil entschieden: Versuchen Sie nicht, eine Lösung für erstklassiges Eisen zu entwickeln, sondern schauen Sie sich zunächst die schwächsten Geräte an, die wir definitiv unterstützen müssen. Wir haben ihre Eigenschaften berücksichtigt und nach Technologien gesucht, mit denen wir diese Geräte in hoher Qualität ausführen können. Das heißt, drücken Sie ein Maximum an coolem Bild aus einem Minimum an Eigenschaften heraus. Und ja, natürlich mussten die Lösungen so sein, dass wir uns später problemlos ohne Einschränkungen für Top-End-Mobilgeräte bis hin zur Konsolen- und PC-Qualität verbessern konnten.

Fast alle modernen mobilen Schützen basieren auf Unity oder Unreal. Sie haben bereits alles über unsere ehrgeizigen Pläne zur Umkehrung der Branche verstanden. Die Tatsache, dass wir uns bereits zu diesem Zeitpunkt für die Einführung von Innovationen entschieden haben, wird Sie nicht überraschen. Wir ignorierten das traditionelle Dilemma zwischen Einheit und Unwirklichkeit und begannen, unseren Motor abzustellen.

Zunächst - ich werde Ihnen das Video zeigen. Das ist in einem Jahr passiert. Wir haben unser Bestes getan, um das Maximum aus mobilen Geräten herauszuholen und ein Produkt zu entwickeln, das, wenn es nicht mit Desktop-Spielen konkurriert, diesen zumindest qualitativ näher kommt. Wie ich bereits sagte, besteht unser Hauptziel, egal wie erbärmlich es auch klingen mag, darin, mobile Spiele viel besser zu machen und die Branche voranzubringen.


Es gibt eine solche Regel "Kenne deine Hardware". Ihre Bedeutung ist schwer zu überschätzen. Wir haben oft gesehen, wie Top-Teams etwas Unmögliches für Konsolen tun - weil sie wissen, worauf sie aufbauen müssen, und im Voraus entscheiden, dass sie versuchen werden, zu übertreffen. Wir wollten schon immer Schützen machen, aber wir haben unsere Stärken nüchtern eingeschätzt: Heute ist der Schützenmarkt für Konsolen und PCs riesig und voller hochwertiger Produkte. Gleichzeitig wird dem Mobilfunkmarkt zu Unrecht die Aufmerksamkeit entzogen, obwohl dort viel getan werden kann. Im Allgemeinen kam alles zusammen: Wir beschlossen, die Situation zu korrigieren.

Zusammenfassend haben wir diese allgemeine Richtung gebildet:

  • Eigene Technologie
  • Konsolenqualitätsniveau auf mobilen Plattformen
  • Das Hauptaugenmerk liegt auf Schützen
  • Session Game Network Engine
  • Infrastruktur für den Betrieb des Spiels
  • Und in der Tat ein cooles Spiel.

All dies wollten wir in 1,5 Jahren umsetzen.

Natürlich haben wir von unseren Kollegen in der Werkstatt ständig gehört, dass es Demenz ist (und ohne viel Mut), mit Unity und Unreal einen eigenen Motor zu bauen. Uns wurde eine Vielzahl von vorgefertigten Lösungen angeboten, an denen bereits jemand etwas unternahm. Aber wir hatten eine ganz andere Meinung. Wir haben beschlossen, es zu versuchen, und jetzt kann ich stolz sagen, dass es uns gut geht. Der Motor ist schon da und es ist sehr vielversprechend. Genau so, wie wir es wollten. Wir arbeiten aktiv an unserem neuen Spiel, wir planen, es bereits in diesem Jahr zu starten.

Ich werde mich nicht verstecken, die Leute stehen unserer Idee immer noch skeptisch gegenüber, wenn wir uns treffen und unsere Pläne teilen. Aber alles ändert sich, wenn wir das iPad herausnehmen und die besten Praktiken und Trailer zeigen. Die Leute verstehen, worum es ging. Wir zeigen den Zeitplan unseres Spiels bei den Interviews mit neuen Mitarbeitern, und sie glauben nicht, dass dies ein Produkt für Mobiltelefone ist. Manchmal geben sie dreimal an, ob wir scherzen. Ein revolutionäres Produkt erfordert innovative Lösungen. Ja, dieses Jahr war schwierig, wir mussten viel arbeiten. Aber jetzt haben wir eine revolutionäre Engine, ein exzellentes BattlePrime-Spiel und eine lustige Geschichte, die für viele Entwickler interessant sein wird.


Normalerweise wird uns nach dem Anschauen dieses Videos gesagt, dass sie nicht glauben. Was in der endgültigen Version wahrscheinlich ist, wird alles anders sein. Im Allgemeinen ist es in unserer Branche nicht üblich, Anhängern zu vertrauen ... Aber Sie glauben es wirklich. Und sag uns in den Kommentaren, wie es dir geht!

Wir möchten erzählen, wie wir die Blitz Engine entwickelt haben, und dafür werde ich eine Reihe von Artikeln über das Jahr unserer Entwicklung veröffentlichen.

Der zweite Teil: habr.com/de/post/465343

Source: https://habr.com/ru/post/de461623/


All Articles