1.png

Games mit Roblox

Eigene Spiele entwickeln
mit Roblox Studio

Übersetzung aus dem Amerikanischen
von Knut Lorenzen

Impressum

Bibliografische Information der Deutschen Nationalbibliothek

Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie; detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar.

ISBN 978-3-7475-0439-0
1. Auflage 2022

www.mitp.de

E-Mail: mitp-verlag@sigloch.de
Telefon: +49 7953 / 7189 - 079
Telefax: +49 7953 / 7189 - 082

© 2022 mitp Verlags GmbH & Co. KG

Authorized translation from the English language edition, entitled ROBLOX DEVELOPMENT IN 24 HOURS: THE OFFICIAL ROBLOX GUIDE 1st Edition by THE ROBLOX CORPORATION published by Pearson Education, Inc, © 2021 Roblox Corporation. “Roblox,” the Roblox logo, and “Powering Imagination” are among the Roblox registered and unregistered trademarks in the U.S. and other countries.

All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from Pearson Education, Inc.

GERMAN language edition published by MITP VERLAGS GMBH & CO. KG, Copyright
© 2022.

Dieses Werk, einschließlich aller seiner Teile, ist urheberrechtlich geschützt. Jede Verwertung außerhalb der engen Grenzen des Urheberrechtsgesetzes ist ohne Zustimmung des Verlages unzulässig und strafbar. Dies gilt insbesondere für Vervielfältigungen, Übersetzungen, Mikroverfilmungen und die Einspeicherung und Verarbeitung in elektronischen Systemen.

Die Wiedergabe von Gebrauchsnamen, Handelsnamen, Warenbezeichnungen usw. in diesem Werk berechtigt auch ohne besondere Kennzeichnung nicht zu der Annahme, dass solche Namen im Sinne der Warenzeichen- und Markenschutz-Gesetzgebung als frei zu betrachten wären und daher von jedermann benutzt werden dürften.

Lektorat: Janina Bahlmann
Fachkorrektorat: Tanja Köhler
Sprachkorrektorat: Petra Heubach-Erdmann
Covergestaltung: Chuti Prasertsith, Christian Kalkert
Electronic Publishing: Petra Kleinwegen

Dieses Ebook verwendet das ePub-Format und ist optimiert für die Nutzung mit dem iBooks-reader auf dem iPad von Apple. Bei der Verwendung anderer Reader kann es zu Darstellungs­problemen kommen.

Hinweis des Verlages zum Urheberrecht und Digitalen Rechtemanagement (DRM)

Der Verlag räumt Ihnen mit dem Kauf des ebooks das Recht ein, die Inhalte im Rahmen des gel­tenden Urheberrechts zu nutzen. Dieses Werk, einschließlich aller seiner Teile, ist urheberrechtlich geschützt. Jede Verwertung außerhalb der engen Grenzen des Urheherrechtsgesetzes ist ohne Zustimmung des Verlages unzulässig und strafbar. Dies gilt insbesondere für Vervielfälti­gungen, Übersetzungen, Mikroverfilmungen und Einspeicherung  und Verarbeitung in elektroni­schen Systemen.

Der Verlag schützt seine ebooks vor Missbrauch des Urheberrechts durch ein digitales Rechtemanagement. Bei Kauf im Webshop des Verlages werden die ebooks mit einem nicht sichtba­ren digitalen Wasserzeichen individuell pro Nutzer signiert.

Bei Kauf in anderen ebook-Webshops erfolgt die Signatur durch die Shopbetreiber. Angaben zu diesem DRM finden Sie auf den Seiten der jeweiligen Anbieter.

Inhalt

Impressum

Vorwort

Über die Autorin

Über die weiteren Mitwirkenden

Über die Fachkorrektorin der deutschen Ausgabe

1 Was ist das Besondere an Roblox?

1.1 Roblox ermöglicht es, soziale Kontakte zu knüpfen

1.1.1 Roblox als soziale Website

1.1.2 Roblox als Treffpunkt für Entwickler

1.2 Roblox verwaltet Benutzerinhalte

1.2.1 Inhalte organisieren

1.2.2 Deine eigene Identität erschaffen

1.2.3 Charaktere personalisieren

1.3 Roblox ermöglicht schnelle Prototyperstellung und Iteration

1.3.1 Bereit für Anpassungen

1.4 Ideen einfach umsetzen

1.4.1 Plugins

1.4.2 Veröffentlichung und Updates ohne Wartezeit

1.5 Die Funktionen der Roblox-Engine

1.5.1 Vernetzung

1.5.2 Physik

1.5.3 Rendering

1.5.4 Plattformübergreifende Entwicklung

1.6 Alles kostenlos

1.7 Unbegrenzte Möglichkeiten

1.8 Finde deinen eigenen Stil

1.9 Zusammenfassung

1.9.1 Fragen und Antworten

1.9.2 Workshop

1.9.3 Aufgaben

2 Verwendung von Roblox Studio

2.1 Installation von Roblox Studio

2.1.1 Fehlerbehebung bei der Installation

2.1.2 Roblox Studio starten

2.2 Verwendung von Studio-Templates

2.2.1 Die Registerkarte All Templates

2.2.2 Themes

2.2.3 Gameplay

2.3 Verwendung des Game-Editors

2.3.1 Einrichtung des Arbeitsbereichs im Game-Editor

2.3.2 Verwendung des Explorer-Fensters

2.3.3 Erstellen eines Parts

2.3.4 Verwendung des Properties-Fensters

2.4 Verschiebung, Skalierung und Ausrichtung von Objekten

2.4.1 Verschieben

2.4.2 Skalieren

2.4.3 Drehen

2.4.4 Transformieren

2.5 Snapping

2.6 Collisions

2.7 Verankern

2.8 Speichern und Veröffentlichung deines Projekts

2.8.1 Speichern deines Projekts

2.8.2 Veröffentlichung deines Projekts

2.8.3 Projekt wieder öffnen

2.9 Spieltest

2.9.1 Spieltest durchführen

2.9.2 Spieltest beenden

2.10 Zusammenfassung

2.10.1 Fragen und Antworten

2.10.2 Workshop

2.10.3 Aufgaben

3 Verwendung von Parts

3.1 Erstellen eines Parts

3.2 Aussehen eines Parts ändern

3.2.1 Farbe

3.2.2 Material

3.2.3 Reflexionsgrad und Transparenz

3.3 Decals und Texturen erstellen

3.3.1 Decals

3.3.2 Texturen

3.4 Zusammenfassung

3.4.1 Fragen und Antworten

3.4.2 Workshop

3.4.3 Aufgaben

4 Physik-Engine

4.1 Verwendung von Attachments und Constraints

4.2 Erstellen einer Tür

4.3 CanCollide deaktivieren, damit ein Spieler die Tür durchschreiten kann

4.4 Scharniere und Federn hinzufügen

4.4.1 Öffnen einer Tür mit Scharnieren

4.4.2 Erstellen der Federn

4.4.3 Realistisches Verhalten von Federn

4.5 Verwendung eines Motors

4.6 Zusammenfassung

4.6.1 Fragen und Antworten

4.6.2 Workshop

4.6.3 Aufgaben

5 Landschaften gestalten

5.1 Der Terrain-Editor

5.2 Die Registerkarte Edit

5.2.1 Verändern des Terrains mit dem Substract-Werkzeug

5.2.2 Terrain anheben mit dem Grow-Werkzeug

5.2.3 Terrain abtragen mit dem Erode-Werkzeug

5.2.4 Terrain mit dem Smooth-Werkzeug glätten

5.2.5 Terrain mit dem Flatten-Werkzeug einebnen

5.2.6 Materialien ändern mit dem Paint-Werkzeug

5.2.7 Wasserflächen erzeugen mit dem Sea-Level-Werkzeug

5.3 Die Registerkarte Region

5.3.1 Terrain auswählen

5.3.2 Terrain mit dem Move-Werkzeug verschieben

5.3.3 Terrain mit dem Resize-Werkzeug skalieren

5.3.4 Verwendung der Werkzeuge Copy, Paste und Delete

5.3.5 Eine Fläche mit dem Fill-Werkzeug ausfüllen

5.4 Height Maps und Color Maps

5.4.1 Height Maps

5.4.2 Color Maps

5.5 Zusammenfassung

5.5.1 Fragen und Antworten

5.5.2 Workshop

5.5.3 Aufgaben

6 Beleuchtung

6.1 Eigenschaften der Beleuchtung

6.1.1 Eigenschaften des Erscheinungsbilds

6.1.2 Die Eigenschaften Data und Exposure

6.2 Beleuchtungseffekte

6.2.1 SpotLight, PointLight und SurfaceLight

6.3 Zusammenfassung

6.3.1 Fragen und Antworten

6.3.2 Workshop

6.3.3 Aufgaben

7 Atmosphäre

7.1 Eigenschaften der Atmosphäre

7.1.1 Density

7.1.2 Offset

7.1.3 Haze

7.1.4 Color

7.1.5 Glare

7.1.6 Decay

7.2 Anpassen der Skybox

7.2.1 Erstellen einer Skybox

7.2.2 Anpassen der Himmelskörper

7.2.3 Anpassen der Beleuchtungsfarben

7.3 Zusammenfassung

7.3.1 Fragen und Antworten

7.3.2 Workshop

7.3.3 Aufgabe

8 Effekte

8.1 Partikel

8.1.1 Anpassen der Partikel

8.1.2 Ändern der Farbe von Partikeln

8.1.3 Eigenschaften eines ParticleEmitters

8.2 Beams

8.2.1 Krümmung

8.2.2 Segments

8.2.3 Width

8.2.4 Lichtern mit einem Beam einen Strahleneffekt hinzufügen

8.3 Zusammenfassung

8.3.1 Fragen und Antworten

8.3.2 Workshop

8.3.3 Aufgaben

9 Objekte importieren

9.1 Einfügen und Hochladen kostenloser Modelle

9.1.1 Hochladen des Modells bei Roblox

9.1.2 Zugriff auf Modelle

9.1.3 Einfügen kostenloser Modelle

9.2 Importieren mit MeshParts und Asset Manager

9.2.1 Mehrere Meshes auf einmal importieren mit dem Asset Manager

9.3 Importieren von Texturen

9.3.1 Importieren von Decals mit dem Asset Manager

9.4 Sounds importieren

9.5 Zusammenfassung

9.5.1 Fragen und Antworten

9.5.2 Workshop

9.5.3 Aufgaben

10 Spielstruktur und Zusammenarbeit

10.1 Einem Spiel Places hinzufügen

10.2 In Roblox Studio zusammenarbeiten

10.2.1 Zusammenarbeit bei Gruppenspielen

10.2.2 Konfiguration der Rollen

10.2.3 Zuweisung der Rollen

10.2.4 Team Create aktivieren

10.2.5 Hinzufügen und Verwalten von Benutzern in Team Create

10.2.6 Zugriff auf die Team-Create-Sitzung

10.2.7 Verwendung von Roblox Studio Chat

10.2.8 Team Create deaktivieren

10.3 Erstellen von Roblox-Packages und darauf zugreifen in Roblox Studio

10.3.1 Objekte in Packages konvertieren

10.3.2 Zugriff auf die Package-Toolbox

10.3.3 Zugriff auf Packages im Asset Manager

10.3.4 Aktualisieren eines Packages

10.3.5 Eine größere Anzahl von Packages aktualisieren

10.4 Zusammenfassung

10.4.1 Fragen und Antworten

10.4.2 Workshops

10.4.3 Aufgaben

11 Lua – ein Überblick

11.1 Der Coding Workspace

11.1.1 Erstellen des ersten Scripts

11.2 Eigenschaften ändern mithilfe von Variablen

11.2.1 Überblick über Variablen

11.2.2 Verwendung von Variablen

11.2.3 Erstelle eine halb durchsichtige Bombe

11.3 Kommentare zum Code hinzufügen

11.4 Funktionen und Events

11.4.1 Erstellen einer Funktion

11.4.2 Verwendung einer Funktion, um eine Bombe explodieren zu lassen

11.4.3 Der Einsatz von Events

11.4.4 Verwendung eines Events, um einen Part explodieren zu lassen, wenn er berührt wird

11.5 Verwendung bedingter Anweisungen

11.6 Arrays und Dictionarys

11.7 Verwendung von Schleifen

11.8 Gültigkeitsbereiche

11.9 Benutzerdefinierte Events

11.10 Debugging des Codes

11.10.1 Debugging mit Strings

11.10.2 Lua-Debugger

11.10.3 Log-Dateien

11.11 Zu einem besseren Spieleentwickler werden

12 Kollisionen, Humanoide, Punktzahl

12.1 Kollisionen

12.1.1 CollisionFidelity

12.1.2 Anzeige und Verbesserung der Kollisionsgeometrie

12.1.3 Collision Groups Editor

12.1.4 Direkte Verwendung des Collision Groups Editors

12.1.5 Verwendung des Collision Group Editors per Script

12.2 Kollisionserkennung

12.2.1 Verwendung von .Touched

12.2.2 debounce

12.3 Humanoid

12.3.1 Humanoid innerhalb der Hierarchie

12.3.2 Eigenschaften, Funktionen und Events

12.4 Zusammenfassung

12.4.1 Fragen und Antworten

12.4.2 Workshop

12.4.3 Aufgaben

13 Interaktion mit der Benutzeroberfläche (GUI)

13.1 Erstellen von GUIs

13.1.1 PlayerGui

13.1.2 SurfaceGui

13.2 Grundlegende GUI-Elemente

13.3 Programmierung interaktiver GUIs

13.4 Tweening

13.5 Layouts

13.6 Erstellen einer GUI mit Countdown

13.7 Zusammenfassung

13.7.1 Fragen und Antworten

13.7.2 Workshop

13.7.3 Aufgaben

14 Programmierung von Animationen

14.1 Position und Rotation

14.1.1 Bewegen eines Objekts von Punkt A nach Punkt B

14.1.2 Rotation von Parts mit CFrames

14.2 Ruckelfreies Bewegen von Objekten mit Tween

14.2.1 Tweening zwischen zwei Punkten

14.2.2 EasingStyle und EasingDirection

14.3 Bewegen des gesamten Modells

14.4 Zusammenfassung

14.4.1 Fragen und Antworten

14.4.2 Workshop

14.4.3 Aufgaben

15 Sounds und Musik

15.1 Einen Soundtrack erstellen

15.2 Importieren von Musik und Sounddateien

15.3 Umgebungsgeräusche hinzufügen

15.4 Sounds via Code abspielen

15.5 Gruppieren von Sounds

15.6 Zusammenfassung

15.6.1 Fragen und Antworten

15.6.2 Workshop

15.6.3 Aufgaben

16 Animation-Editor

16.1 Einführung in den Animation-Editor

16.1.1 Anforderungen an das Modell

16.1.2 Öffnen des Animation-Editors

16.2 Erstellen von Posen

16.3 Speichern und Exportieren von Animationen

16.4 Easing

16.5 Inverse Kinematik

16.5.1 IK aktivieren

16.5.2 Parts anheften

16.6 Einstellungen für Animationen

16.6.1 Wiederholungen

16.6.2 Priorität

16.7 Animation-Events

16.7.1 Events hinzufügen

16.7.2 Verschieben und Löschen von Events

16.7.3 Events klonen

16.7.4 Implementierung von Events in Scripts

16.7.5 Standardanimationen ersetzen

16.8 Zusammenfassung

16.8.1 Fragen und Antworten

16.8.2 Workshop

16.8.3 Aufgaben

17 Kämpfe, Teleportation und Datenspeicher

17.1 Einführung in Tools

17.1.1 Grundlagen

17.1.2 Ein Tool erstellen

17.1.3 Tool-Handle

17.1.4 Tool-Ausrichtung

17.2 Teleportation

17.2.1 Teleportation innerhalb eines Place

17.2.2 Teleportieren zwischen verschiedenen Places

17.2.3 Spieluniversen

17.3 TeleportService

17.3.1 Funktionen

17.3.2 Abrufen der PlaceID

17.3.3 Beispiel: Client

17.3.4 Beispiel: Server

17.4 Verwendung des dauerhaften Datenspeichers

17.4.1 Unterstützte Datentypen und Beschränkungen

17.5 Funktionen des Datenspeichers

17.5.1 UpdateAsync() und SetAsync()

17.6 Fehlerbehandlung

17.6.1 Was ist ein pcall?

17.6.2 Schutz vor Datenverlust

17.7 Zusammenfassung

17.7.1 Fragen und Antworten

17.7.2 Workshop

17.7.3 Aufgaben

18 Mehrspieler-Code und das Client-Server-Modell

18.1 Das Client-Server-Modell

18.1.1 Scripts und LocalScripts

18.1.2 Replikation

18.2 Was sind RemoteFunctions und RemoteEvents?

18.2.1 Verwendung von RemoteEvent und RemoteFunction

18.2.2 Erstellen eines RemoteEvents

18.3 Serverseitige Validierung

18.4 Teams

18.4.1 Hinzufügen von Teams

18.4.2 Automatische Zuordnung von Spielern zu einem Team

18.4.3 Manuelle Zuordnung von Spielern zu einem Team

18.5 Network-Ownership

18.6 Zusammenfassung

18.6.1 Fragen und Antworten

18.6.2 Workshop

18.6.3 Aufgaben

19 Module-Scripts

19.1 Kurz vorgestellt: Das Module-Script

19.1.1 Aufbau eines Module-Scripts

19.1.2 Hinzufügen von Code, der überall verwendet werden kann

19.1.3 Verwendung eines Module-Scripts

19.2 Clientseitige und serverseitige Module-Scripts

19.3 Der Einsatz von Module-Scripts: Game-Loop

19.3.1 Einstellungen

19.3.2 Erstellen wiederverwendbarer Funktionen für Spielrunden

19.3.3 Die Game-Loop

19.4 Zusammenfassung

19.4.1 Fragen und Antworten

19.4.2 Workshop

19.4.3 Aufgaben

20 Programmierung von Kamerabewegungen

20.1 Einführung in die Verwendung von Kameras

20.1.1 Kameraeigenschaften

20.1.2 Handhabung der Kamera

20.2 Programmierung einer Kamerabewegung

20.3 Verwendung von Render-Step

20.4 Versetzen der Kamera

20.4.1 Dauerhafte Verknüpfung mit dem Render-Step

20.4.2 deltaTime

20.5 Zusammenfassung

20.5.1 Fragen und Antworten

20.5.2 Workshop

20.5.3 Aufgaben

21 Plattformübergreifende Entwicklung

21.1 Verbesserung der Performance

21.1.1 Speicherbedarf

21.1.2 Optimierung

21.1.3 Vereinfachung des physikalischen Verhaltens

21.1.4 Inhalte streamen

21.1.5 Diverse weitere Optimierungen

21.2 Verbesserung der Scripts

21.2.1 Zuweisung des Parents bei Objekten

21.2.2 Blindes Vertrauen in Server/Client

21.2.3 Schleifen sparsam verwenden

21.3 Kompatibilität mit Mobilgeräten

21.3.1 Erscheinungsbild

21.3.2 Steuerung

21.3.3 Simulation von Mobilgeräten

21.4 Spielkonsolen und VR

21.4.1 Xbox-Richtlinien

21.4.2 VR Best Practices

21.5 Zusammenfassung

21.5.1 Fragen und Antworten

21.5.2 Workshop

21.5.3 Aufgaben

22 Globale Community

22.1 Einführung in Lokalisierung

22.1.1 Texte für die Übersetzung erfassen

22.1.2 Übersetzung der erfassten Texte

22.1.3 Einsetzen der Übersetzung

22.2 Globale Regelkonformität

22.3 Datenschutzgesetze: DSGVO und CCPA

22.3.1 Allgemeine Richtlinien

22.3.2 Löschen von Spielerdaten

22.4 Zusammenfassung

22.4.1 Fragen und Antworten

22.4.2 Workshop

22.4.3 Aufgaben

23 Monetarisierung

23.1 Game Pass: Einmalige Käufe

23.2 Game Passes im Spiel verkaufen

23.2.1 Game-Pass-Vorteile aktivieren

23.3 Developer Products: Consumables

23.4 Roblox Premium

23.5 Developer Exchange: Verdiene richtiges Geld mit deinem Spiel

23.6 Zusammenfassung

23.6.1 Fragen und Antworten

23.6.2 Workshop

23.6.3 Aufgaben

24 Spieler auf das Spiel aufmerksam machen

24.1 Icons, Vorschaubilder und Trailer

24.2 Updates

24.3 Anzeigen und Benachrichtigungen

24.3.1 Sponsoranzeigen

24.3.2 Benutzeranzeigen

24.3.3 Benachrichtigungen

24.4 Analytics

24.5 Zusammenfassung

24.5.1 Fragen und Antworten

24.5.2 Workshop

24.5.3 Aufgaben

A Lua-Scripting

A.1 Änderung von Eigenschaften (Datentyp und Enumerationen)

A.2 Bedingte Anweisungen und Verzweigungen

A.3 Ausbau der Lua-Kenntnisse

B Eigenschaften und Funktionen von Humanoid

                                

Vorwort

Stelle dir ein virtuelles Universum vor, das von einer weltweiten Community entwickelt wurde, der Künstler, Programmierer, Geschichtenerzähler und die verschiedensten anderen Leute angehören. In diesem Traum würden Menschen aus allen Teilen der Welt zusammenkommen, um Millionen Erlebnisse zu erschaffen und mit ihren Freunden zu teilen und um voneinander zu lernen. Es wäre ein Universum, das auf der Vorstellungskraft beruht, in dem alles möglich wäre, unabhängig vom verwendeten Gerät, dem Aufenthaltsort oder der Zeit. Und wenn ich nun feststelle, dass es diese digitale Utopie schon seit mehr als einem Jahrzehnt gibt?

Als Erik Cassel und ich 2004 Roblox mitgründeten, wollten wir einen immersiven, dreidimensionalen, physikalisch simulierten Raum für mehrere Spieler erschaffen, mit dem sich jeder verbinden kann, um zusammen mit anderen Spaß zu haben. In den Anfangstagen von Roblox waren wir davon fasziniert, was die Leute alles anstellten. Sie wollten ihr eigenes Restaurant managen, eine Naturkatastrophe überleben oder erfahren, wie es ist, ein Vogel zu sein. Wenn ich nun, siebzehn Jahre später, in die Zukunft blicke, ist es offensichtlich, dass diese Plattform noch viel mehr zu bieten hat.

Roblox stellt eine neue Kategorie für Erlebnisse mit anderen Menschen dar, in der die Grenzen zwischen Spiel, sozialem Netzwerk und Medien verschwimmen. Unser Team hat festgestellt, dass sich die Millionen täglichen Roblox-User nicht nur zum Spielen anmelden, sondern sich zusammenfinden, um eine Community aufzubauen, Geschichten zu erzählen und sowohl mit Freunden als auch mit Fremden etwas zu erleben.

Wir fahren damit fort, unsere Plattform weiterzuentwickeln, die es Milliarden von Benutzern ermöglicht, Erfahrungen mit anderen zu teilen – es gab nie einen besseren Zeitpunkt, einer weltweiten Community kreativer Menschen beizutreten, die so erstaunliche Beiträge zu unserer Plattform leisten. 3-D-Erlebnisse zu entwickeln, macht nicht nur Spaß, sondern bietet auch die Möglichkeit, Fähigkeiten und Kenntnisse zu sammeln, die für eine Laufbahn in den Bereichen Informatik, Design, Kunst und vielen anderen erforderlich sind. Viele der besten Entwickler unserer Plattform haben das Geld, das sie mit Roblox verdient haben, verwendet, um ihr Studium zu finanzieren, ein eigenes Studio für Spieleentwicklung zu gründen oder um eine Anzahlung für das Haus ihrer Eltern zu leisten.

Ich bin davon überzeugt, dass Roblox letzten Endes zur Entstehung des Metaverse führt, einer allumfassenden digitalen Realität, die durch unsere physische ergänzt wird. Wir sehen den Tag kommen, an dem die Menschen Roblox nicht nur aufsuchen, um zu spielen und Kontakte zu knüpfen, sondern auch, um geschäftliche Treffen abzuhalten oder die Schule zu besuchen. Die Möglichkeiten, die das Metaverse bietet, nehmen mit jedem Tag zu. Das gilt auch für den Bedarf an innovativen und kreativen Entwicklern, die für die Erlebnisse sorgen, von denen wir in der Science-Fiction seit Jahren träumen.

Ich lade dich herzlich dazu ein, an der Welt von Roblox teilzunehmen, nicht nur als Spieler, sondern auch als Entwickler. Zu lernen, Spiele und immersive 3-D-Erlebnisse zu entwerfen, trägt dazu bei, weltweit Millionen von Menschen durch die Spiele zu verbinden und eine Community aufzubauen, die nicht durch Grenzen, Sprachen oder Geografie definiert ist. Wenn du am Programmieren, an Game Design oder der immersiven 3-D-Welt von Roblox interessiert bist, solltest du dieses Buch lesen und deine verrücktesten und kreativsten Ideen verfolgen. Das Meta­verse braucht Entwickler wie dich.

Deine Fantasie wartet schon!

David »Builderman« Baszucki
Gründer und Geschäftsführer
Roblox Corporation

                                

Über die Autorin

Genevieve Johnson ist als Senior Instrucional Designer bei Roblox tätig, der weltweit größten sozialen Spiele-Plattform mit benutzergenerierten Inhalten. Sie betreut die Erstellung von Bildungsinhalten und berät Pädagogen rund um den Globus dabei, wie man Roblox in STEAM-basierten Lernprogrammen einsetzen kann. Ihre Arbeit ermöglicht es Schülern, Laufbahnen als Unternehmer, Ingenieur und Designer einzuschlagen. Bevor sie zu Roblox kam, war Johnson für bildungsrelevante Inhalte bei ID Tech verantwortlich, einem technischen Ausbildungsprogramm, das jährlich mehr als 50.000 Schülerinnen und Schüler zwischen 6 und 18 Jahren nutzen. Bei ID Tech war sie an der Einrichtung eines erfolgreichen STEAM-­Programms nur für Mädchen beteiligt. Ihr Team hat Ausbildungsinhalte für mehr als 60 technologiebezogene Kurse für eine Vielfalt von Themen entwickelt, von der Programmierung über Robotik bis hin zum Game Design.

Über die weiteren Mitwirkenden

Ashan Sarwar ist ein Roblox-Entwickler, der seit 2013 Roblox Studio verwendet. Von ihm ist LastShot, ein Shooter, der auf Roblox verfügbar ist.

Raymond Zeng ist ein Roblox-Entwickler, der das Programmieren liebt und andere Programmierer auf jedem Niveau unterrichtet. Unter der Bezeichnung MacAnd­Swiss betreibt er einen YouTube-Kanal, auf dem er Lua unterrichtet, über Neuigkeiten zu Roblox berichtet und seine Programmierprojekte vorstellt.

Theo Docking ist seit vier Jahren als Spieleprogrammierer tätig. Er mag es, an spannenden Projekten zu arbeiten, die Roblox richtig ausreizen und dabei inte­ressante Menschen zu treffen. Außerdem liebt er es, mit Roblox’ Physik-Engine zu experimentieren und Code für NFCs, Autos und mehr zu schreiben. Wenn er nicht programmiert, zeichnet er Pläne für neue Spiele oder spielt Ultimate Driving, um sich zu entspannen.

Joshua Wood hat Roblox 2013 entdeckt und ein Jahr später angefangen, seine eigenen Spiele zu erstellen. Er ist der Entwickler von Game Dev Life, das mehr als eine Million mal gespielt wurde. Zudem ist er Entwickler von DoubleJGames.

Swathi Sutrave ist ein selbsternanner Technik-Geek. Sie war als Expertin für verschiedene Programmiersprachen, unter anderem auch Lua, für Unternehmen, Start-ups und Universitäten tätig.

Henry Chang ist ein Computergrafikdesigner, der sich verschiedener Medien bedient, unter anderem zwei- und dreidimensionaler Grafiken und Animationen. Er ist Autodidakt und hat verschiedene Möglichkeiten interaktiver Medien ausgelotet. Weitere Information sind unter https://www.henrytcgweb.com zu finden.

Über die Fachkorrektorin der deutschen Ausgabe

Tanja Köhler hat Architektur studiert und war für verschiedene Architekturbüros im In- und Ausland tätig. Als 3D-Artistin vertiefte sie ihre 3D-Software-Kenntnisse in der Computerspiele-Branche bei Opus Studio Inc. (Tokio) und Bluebyte/Ubisoft. Unter anderem visualisierte sie die Gebäude für Die Siedler VI – Aufstieg eines Königreiches. Heute lebt und arbeitet sie als freie Architektin bei München und ist Lehrbeauftragte an der TU München. Dort unterrichtet sie Studierende der Architekturinformatik und Games Engineering. Zudem betreibt sie ein Studio für Programmierung und Computerspieledesign für Kinder und Jugendliche; weitere Informationen unter www.nextlevel-gauting.de.

  Kapitel 1