Virtual Environments A course about how to program virtual environments.

Description

In this course we would learn the basics of how to create a virtual environments on the web, using standard Web Technologies.

Requirements

No previous knowledge required besides programming and basic shell commands.

Material

Content

What's a Virtual Environment

Introduction to the course and the concepts related to it, like virtual spaces, communities, shared spaces, etc.

The Basics

Introduction to HTML + CSS + Javascript

Learn the foundation technologies of the web, learn the basics to create a simple web.

Javascript crash course

Crash course about how to code in Javascript, its syntax and how to use it in a web.

Communications in Javascript

How to use Javascript to communicate between clients.

Asynchronous Javascript

How to master the flow execution when using asynchronous code.

First Assignment: The Chat

In the first assigment you must create a working chat from what you already know.

Your Backend

Server-side in Javascript

How to use NodeJS to construct your own back-end and communicate with your client.

Databases

An introduction to the most common databases used in backends.

Virtual Space

Real-time on the web

How to create interactive applications on the web.

World Synchronization

How to synchronize your clients so they have the impression of inhabit the same space.

Second Assignment: The Virtual Space

In the second assigment you must create a working virtual space, from the client to the server.

Editor

How to construct your own editor.

3D Spaces

Virtual Spaces

How to build your own virtual space.

3D on the web

How to use 3D technologies in the web to build more interesting spaces.

3D content for your worlds

How to create or find 3D assets to use in your 3D app.

Improving your 3D world

Some useful tips to make your 3D world more interesting.

Final Project

Model View Controller

A good paradigm when creating applications.

Modern Javascript

How frameworks can change your workflow.

The Open Web

The importance of open standards for the web.

The Future of the Web

Some final technologies worth checking them out.

Beyond the course

Some final thoughts about how to move forward.

Extras

Modern APIs

Some interesting Javascript APIs available in the browsers.

WebGPU

Presentation about WebGPU.