Graal3D Scripting Manual: Difference between revisions

From Graal Bible
No edit summary
(Added a section to link to the form to get access to testbed3d server to start development.)
 
(One intermediate revision by one other user not shown)
Line 22: Line 22:
'''Unity 2020.2.2f1:''' <nowiki>https://unity3d.com/get-unity/download/archive</nowiki>
'''Unity 2020.2.2f1:''' <nowiki>https://unity3d.com/get-unity/download/archive</nowiki>


'''The Worlds Client:''' https://www.graalonline.com/playerworlds/downloads/file?name=WorldsSetup64-516.exe
'''The Worlds Client:''' <nowiki>https://www.graalonline.com/playerworlds/downloads/file?name=WorldsSetup64-518.exe</nowiki>


'''RC:''' http://fp4.ca/windows_rc3_beta.zip
'''RC:''' More here ([[Creation/Management/Remote Control|RC]]) or download directly here http://fp4.ca/windows_rc3_beta.zip
 
==== Get Started With Testbed3D Development: ====
After downloading Unity, the worlds client, and RC3, you can now submit through the google form below to be given access to testbed3D and start your GS2 and Graal3D scripting journey.
 
[http://fp4.ca/windows_rc3_beta.zip https://forms.gle/4oYnmKzQ85MVDyB99]
[[File:RC3 testbed3D.png|center|frameless|388x388px]]
 
 
Once you login in RC3 and see "Testbed3d" in your server list congratulations you have been accepted and can now start development on the Testbed3D server.


==== Tools ====
==== Tools ====

Latest revision as of 11:33, 1 December 2021

Intro

Graal kart start.jpg

Welcome to the Graal3D Scripting Manual!

This Manual comes in handy for beginners wanting to learn Graal3D Scripting, and advanced developers looking to expand their knowledge, as it contains documentation, examples, tutorials and much more...

What we will focus on in this Manual is programming our gameplay (scripting the behavior of our GameObjects, their interactions, the components attached to them...)

How things work in Unity:

Unity is the leading platform for building 2D, 3D, VR and augmented reality games. It offers a scripting API in C#, allowing us to interact with the unity editor and the games we want to build.

In the Unity editor, we create and add GameObjects to our scene, we then attach C# scripts to each that will all run upon starting the scene. Unity sort of runs everything for you, it reads through all the lights, cameras, meshes, behaviors… and processes it for you.

How things work in Graal3D:

Since we will be using the Graal Unity Binding, things will be a bit different.

The Graal Unity Binding is a binding between GraalScript and Unity, it is actually still in alpha, but most functionalities needed are present. The goal of this binding is to mimic the Unity C# scripting system (functions and classes). So if you are familiar with Unity and C#, everything should be easy. If not, then do not worry, I will go over everything step by step and include examples done in C# and compare them to GraalScript for each topic.

The Worlds Client (which you will have to download) will serve as the Unity base scene where you instantiate your GameObjects and manipulate them with your GraalScripts.

Required Downloads:

Unity 2020.2.2f1: https://unity3d.com/get-unity/download/archive

The Worlds Client: https://www.graalonline.com/playerworlds/downloads/file?name=WorldsSetup64-518.exe

RC: More here (RC) or download directly here http://fp4.ca/windows_rc3_beta.zip

Get Started With Testbed3D Development:

After downloading Unity, the worlds client, and RC3, you can now submit through the google form below to be given access to testbed3D and start your GS2 and Graal3D scripting journey.

https://forms.gle/4oYnmKzQ85MVDyB99

RC3 testbed3D.png


Once you login in RC3 and see "Testbed3d" in your server list congratulations you have been accepted and can now start development on the Testbed3D server.

Tools

In-game Unity Tools (mimic the Unity Editor) & Game Functionality Tools (warping, fixing graphics, starting minigames...): Tools

Documentation

Unity

AssetBundles

Examples and Tutorials

Classes, Functions and Variables