Erste Schritte bei Xenko

Jeder, der sich für die Welt der Spiele-Engines interessiert, weiß, dass das frühere Paradox3D ab dem 1. Dezember 2015 seinen Namen in Xenko geändert hat. Da es jedoch weder beim ersten noch beim zweiten Tutorials zu Habr gibt, habe ich beschlossen, einen kurzen Artikel für diejenigen zu verfassen, die versuchen möchten, was etwas Neues (oder nicht) und über die Funktionen von Xenko sprechen. Wenn Sie interessiert sind, willkommen bei cat!



Lizenz


Die Engine ist fast Open Source ( GitHub ), lizenziert unter der GPL v3, ihre Verwendung ist in zwei Fällen kostenlos:

  • Wenn Sie von verwenden. In Releases können Sie so viele Spiele erstellen, wie Sie möchten, ohne den Quellcode zu öffnen
  • Sie können die Engine auch ändern und kompilieren, aber dann müssen Sie zusammen mit dem Spiel auch den Quellcode auslegen

Für andere Lizenzoptionen müssen Sie sich an die Entwickler wenden.

Entwicklungsfunktionen


Die neueste Version von Xenko (zum Zeitpunkt des Schreibens - 1.5 Beta) unterstützt die Ausführung nur unter der 64-Bit-Version von Windows 7 SP1 + / 8 + / 10. Zum Schreiben von Skripten ist eine der folgenden IDEs erforderlich:

  • Visual Studio 2012, 2013 oder 2015 (beginnend mit Professional)
  • Visual Studio Community 2013 oder 2015
  • Visual Studio 2012/2013 Express
  • Xamarin Studio

Unterstützung für Plattformen, für die Sie Spiele erstellen können, ist erwünscht. Jetzt ist es möglich, für die Windows- Familie (Desktop, Store, 10 Universal, Phone) sowie für Android und iOS (nur mit der Xamarin-Lizenz) zu entwickeln, aber Silicon Studio sagt, dass es bald unter MacOSX, Linux und sogar verfügbar sein wird Konsolen der nächsten Generation.

Erste Schritte


Zunächst müssen Sie die Engine selbst sowie zusätzliche Elemente für die Arbeit mit .NET installieren. Die Installation und das Herunterladen der gesamten Software dauert ca. 25 Minuten. Mit Xenko Launcher können Sie entweder eine neue Version installieren oder zwischen installierten Versionen wechseln.



Wir starten die gewünschte Option, erstellen ein neues Projekt (alle Einstellungen können standardmäßig beibehalten werden) und warten, bis unser Xenko Studio geladen ist.

Wir werden von einer ziemlich gewöhnlichen Benutzeroberfläche empfangen, die vage an Visual Studio erinnert.



  1. Szenenelemente
  2. Projektmappen-Explorer (alle Ordner und Dateien, die sich auf das Projekt beziehen)
  3. Ressourcen (Assets) anzeigen. Bei der Auswahl einer Ressource wird diese für einen Moment hervorgehoben.
  4. Ressourcenvorschau; Aktionsgeschichte; Abhängigkeiten (hier sind zwei Registerkarten: Referenzen - zeigt alle Assets an, die für die aktuelle Ressource benötigt werden; Referencer - zeigt im Gegenteil alle Assets, die von der aktuellen abhängig sind)
  5. Eigenschaften-Editor

Um das Spiel zu starten, drücke einfach F5 - dein Projekt wird kompiliert und verwendet MSBuild (was übrigens nicht sehr schnell ist).
Sie können neue Entitäten mit dem " + " auf der linken Seite und neuen Ressourcen unten hinzufügen .



Nachdem Sie ein Objekt ausgewählt haben, können alle seine Eigenschaften im Fenster rechts (Eigenschaftenraster) angezeigt werden. Hier und Transformation und Textur und Physik und andere Komponenten.

Ohne eine Texturressource wird unser Modell übrigens nicht angezeigt (dies kann durch Klicken auf eine kleine „Hand“ auf der Registerkarte Material erfolgen.

Hier enden die visuellen Fähigkeiten fast. Unter den Nachteilen der Navigation ist die Steuerung im 3D-Raum schwierig (die Hauptfunktionen werden mit WASD ausgeführt) und Shift / Alt + LMB / RMB / SCM) und die Unfähigkeit, das Kollisionsvolumen anzuzeigen, was die Situation in einigen Fällen erheblich verschärft.

Code Roboter


Da Xenko Studio in Verbindung mit Visual Studio gut funktioniert, verwende ich es. Durch Auswahl von VS oben im Menü wird unser Projekt in Visual Studio geöffnet.



Im selben Projektmappen-Explorer können Sie sehen, dass es nur noch eine Datei gibt ( in meinem Fall MyGameApp.cs ), die unser Spiel startet. Wenn Sie beim Erstellen eines Projekts mehr Plattformen ausgewählt haben, verfügen Sie für jede Plattform über separate Verzeichnisse.

Bewegen Sie beispielsweise unser Modell. Zuerst müssen Sie eine separate Moving.cs- Klasse erstellen und den folgenden Code hinzufügen.



using System;
using SiliconStudio.Xenko.Engine;
namespace MyGame
{
    public class Moving : SyncScript //скрипт должен запускаться со Студии, поэтому делаем его public
    {
        public override void Update() //наш код будет выполняться каждый фрейм
        {
            if (Game.IsRunning) //проверяем, запущена ли игра
            {
//если нажали стрелку влево/вправо - двигаем по оси X
                if (Input.IsKeyDown(SiliconStudio.Xenko.Input.Keys.Right))
                {
                    this.Entity.Transform.Position.X += 0.1f;
                }
                if (Input.IsKeyDown(SiliconStudio.Xenko.Input.Keys.Left))
                {
                    this.Entity.Transform.Position.X -= 0.1f; 
                }
//если нажали стрелку вверх/вниз - двигаем по оси Z (не Y, т.к. это вертикальная ось)
                if (Input.IsKeyDown(SiliconStudio.Xenko.Input.Keys.Up))
                {
                    this.Entity.Transform.Position.Z += 0.1f;
                }
                if (Input.IsKeyDown(SiliconStudio.Xenko.Input.Keys.Down))
                {
                    this.Entity.Transform.Position.Z -= 0.1f;
                }
            }
        }
    }
}

Wir speichern im Ordner MyGame.Game ; Wir prüfen auf Fehler ( Strg + Umschalt + B erstellt das Projekt).



Wählen Sie in Xenko Studio unsere Kugel aus, klicken Sie auf Komponente hinzufügen -> Skripte und fügen Sie unser Skript hinzu.

Bauen (warten) und wir sehen, dass sich unsere Kugel bewegt, wenn wir auf die Pfeile klicken. Wenn Sie unser Skript nicht in der Liste haben, müssen Sie das Projekt höchstwahrscheinlich neu laden ( Datei -> Projekt neu laden ), oder Sie haben Fehler im Code.



PS Wenn sich Ihre Kugel in die falsche Richtung bewegt, ändern Sie sie im Code - = in + = und umgekehrt. Dies hängt vom Standort der Kamera ab.

Support, Community und Dokumentation


Leider gibt es nicht so viele Dokumentationen , die oft falsch sind oder einfach fehlen, und die Engine ist zu roh, um eine große Community zu haben.



Verlassen Sie sich daher nur auf Ihre eigenen Stärken und die Hilfe des Publikums .

Fazit


Xenko ist ein ziemlich interessanter Motor, aber weil in der Beta-Phase - kann der Welt von GameDev noch nichts sehr Neues bieten. Wenn Sie in Unity gearbeitet haben, können Sie problemlos in Xenko arbeiten. Für Anfänger wird es zu kompliziert und unverständlich erscheinen, aber ich denke, das wird in den nächsten Versionen behoben.

Vorteile:

  • Open Source
  • Kostenlose Nutzung in 99% der Fälle
  • Großartige Engine zum Rendern "out of the box"
  • C # ist eine großartige Sprache für Skripte (subjektiv)

Nachteile:

  • Unterstützung für nur wenige Plattformen, und Xenko Studio selbst funktioniert nur unter Windows (Versprechen zu beheben)
  • Für die Entwicklung unter Android / iOS benötigen Sie eine Xamarin-Lizenz (im zweiten Fall - Business und höher + MacBook).
  • Nicht genügend Dokumentation und eine kleine Community, weshalb es nicht für Anfänger geeignet ist
  • Es gibt keinen Grund, von einer anderen kostenlosen Engine zu Xenko zu wechseln (subjektiv; ich denke, das ist nur für den Moment).

Jetzt auch beliebt: