C# Standard
Unity 3D – Game Engine
Folders
Folder Organization
Initial Setup – Folder Structure – Import New Asset
Projects and Packages – Import – Export – Save – Delete
Prefabs – Pre Configurated GameObjects

GUI
Scene View Navigation
Hierarchies
Pixel Perfect 2D Game

2D Scene
2D – How to create a scene
2D – Sprite Sheet Animation

Builds
Performance Test and Benchmarks
Build Executable
Build Optimization
Build Flash Player
Build Web Player – Streaming Optimization
Build Android

Particles
Particle System – Basic
Standard Assets

Physic
Physic 2D – Basic
Physic 3D – Basic
Physic 3D – Joints
Physics Materials – Standard Assets

Mesh
Import 3D Static Mesh – Basic
3DS MAX Biped to Unity Game Engine
Character Controller – Standard Assets

Cloth
Cloth Simulation – Basic

Lights
Manage 3D Lights
Lights Cookies
Lights Flares

Materials
Materials – Basic
DX11 Tasselation Shaders
Glass Refraction
Water
Unlit/Texture Material
Toon

Nature
Skyboxes
Terrain Editor
Trees – Grass

Navigation – Path Finding
001 – NavMesh Baking
002 – NavMesh Agent
003 – Offmesh Links
004 – NavMesh Obstacles
JS – Adventure – Point ‘n Click

Animation
001 – Animator Component
002 – Animator Controller
003 – Blend Tree
004 – Humanoid Avatars
005 – Animation Properties
006 – Animation Curve and Events
007 – Animation Controller – Layers
008 – Avatar Masks
009 – Animator Scripting
010 – Animation View

CS – Basics
Basic Syntax
Event Functions – Inizialization – Update – GUI – Mouse – Physics
Script Lifecycle Flowchart
Access GameObjects and Components

JS – Basics
Scripts – Standard Assets
Basic Structure
Variables – Data Types
Strings Operations
Debug

Arrays
Array Lists
Multidimensional Arrays – Jagged Arrays
2D Array – 2D Grid of GameObjects
Generic List
Enumerations
Shuffle an Array – Fisher-Yates shuffle
Inventory System – Basic
Inventory System – Send and Search into Inventory

If Statements
Ternary Operator

Loops – for while each
Switch

Functions
Time.deltaTime
GameObjects – Activate

JS – Save Data – Manage Levels
Local DB with SQLite
Save Data Multiplatform
Load Next Level
Passing Data Between Levels

JS – Add/Get Components
Components – Destroy
AddComponent
Components – Enabling Disabling Component
Get Components from THIS Object: GameObjects /Light /GuiText /Camera /AudioClip
Get Components from OTHER Object: Find.name / FindWithTag / FindGameObjectsWithTag
Get Script Component from THIS Object
Get Script Component from OTHER Object
Get VARIABLES from script attached to ANOTHER GameObject
Send VARIABLES between Scripts attached to DIFFERENT GameObjects

JS – Movement
GameObjects – Get Position

Be or not be kinematic?
Be or not be kinematic…

Movement – Is Kinematic-check (it does not use physic engine)
transform.position
Destroy if … transform.position
transform.Translate
transform.Rotate
PickUp – Rotator

Movement – Is Kinematic-unckeck (it use physic engine)
rigidbody.AddForce – rigidbody.useGravity
rigidbody.AddForce
rigidbody.AddTorque

JS – Intermediate
Create a Class – Easy Example
Classes and Object Oriented programming
Properties
Statics
Method Overloading
Inheritance (Ereditarietà)
Polymorphism / Upcasting / Downcasting
Warning: Implicit Downcast
Overriding
Interfaces
Coroutines
Quaternion
Attributes Range
Execute in Edit Mode
extends System.Object

CS – Intermediate
What is Object Pooling?
Object Pooling – Bullets
Classes
Nested Classes
Overloading
Inheritance
Polymorphism – Downcasting
Member Hiding
Overriding
Interfaces
Extensions Methods
Lists
Coroutines
Multicasting
Attributes

JS – Math
Math Functions
Random Numbers
2D Vector Math

JS – Desktop User Input
Get Key – GetButton – returns boolean
GetKey – key mouse joy
Get Key – Arrow Key – Advanced
GetKey – Load Scene – GetButton
Keys Combination
Keys Sequence – Basic
Keys Sequence – Advanced

GetAxis – returns float
GetAxis – Movement Behaviour – Pro
GetAxis – WASD – Basic
GetAxis – Horizontal Vertical – Pro
GetAxis – Car Driving
GetAxis – AddTorque
Get Axis – rigidbody.AddForce
Get Axis – rigidbody.velocity

OnMouse – Get Mouse
OnMouse
GetMouse – Buttons Codes

Physic.Raycast
Physic.Raycast – Hit GameObject
Physic.Raycast – Destroy GameObject
Physic.Raycast – Get GameObject name
Physic.Raycast – Get GameObject tag
Physic.Raycast – Get GameObject script Component

Misc
Get Mouse Position
Look At Mouse Position 2D
Look At Mouse Position 3D
Object Follows Cursor Pointer
Particles Follow Cursor Pointer
On Click – Emit Particles
On Click – Counter
On Click – Add Gravity-Force
On Click – Add Torque
On Click – Play an Animation Clip
GetMouseButtonDown – Drag Rigid Body
Get Mouse – Draw Line
Drag Mouse – Rotate GameObject
Hide Mouse Cursor

JS – Android User Input
TouchPhase – Screen – Began-Moved-Stationary-Ended-Canceled
Tap Single – Basic
Get Finger Position
Tap Single – Destroy Object
Tap Single – New Object – Instantiate
Tap Single – Counter Increase
Tap Single – Specific Object (Tagged) – Counter Increase
Long Touch – Counter Increase
Long Touch – Counter Increase Decrease
Swipe – Screen – Detection
Swipe – Screen – Move Object
Touch Drag – Moving a 3D Object
Touch – Draw Line
Multi Touch – Basics
Multi Touch – Pich to Zoom
Accelerometer – RAW Data – Translate and Object
Accelerometer – Shake

JS – Android
Mobile – Standard Assets
Device Vibrate
Get GPS coordinates
Take a Screenshot
Native Camera Access
Native Microphone Access
Save Data local

CS – Android
CardboardVR – GearVR – Basics

JS – OnCollision – OnTrigger
OnCollision – Events
OnTrigger – Events
OnCollision – Destroy
OnTrigger – Destroy

JS – Physic
Drivable Vehicle – Super Easy
Explosion Force
OnMouseDown – Disable all Springs in Scene

JS – Camera
Manage 3D Cameras
Image Effects – Standard Assets
Swap Multi Cameras – On Click
Camera Orbit – Mouse
Look At Camera Target
Third Person Control – Basic
Follow the Player
Follow the Player & Indipendent LookAt
2D Platform – Smooth Follow
3D Platform – Smooth Follow
Camera Facing Billboard

JS – Materials
Get Material Name
Fade between Base Colors
Switch Materials
Set Material Transparency
Fade Out Material Transparency
SetTextureScale
Texture Mover
Materials Array

Projectors
Projectors – Basic

JS – OnGui UI and Text
onGUI – Buttons
onGUI – Toggle – Use images as buttons
onGUI – Box
onGUI – Text Area
onGUI – Input Text
onGUI – Label – No Interaction
onGUI – Settings
onGUI – Text 2D (get from gui and code it)
onGUI – Texture (get from gui and code it)
GUI Text – New Line Break
Responsive / Adaptive – Basic
Style Dynamic Fonts and Custom Bitmap Fonts
Text Rotator
Scrolling Typewriter Effect

UI – Responsive BG Image Setup
UI – Responsive Button Setup
UI – Responsive Text
UI – Responsive Slider
UI – Responsive 16:9
UI – Scroll Rect – Image
UI – Scroll Rect – Text
UI – Input Field
UI – Button – OnClick
UI – Button – Custom Graphic
UI – Event System

JS – WWW – Get Web Datas
WWW – Get an Image from Web
WWW – Get Audio from Web
WWW – Open URL – OnClick
MD5 Encrypt
Server Side Highscores

CS – Get External Datas
Get JPG local-www apply to Texture-UIImage

JS – Audio
Add BG Music
Audio EFX – OnClick – GetKey
Add Multiple Audio Sources
AAA Sound Manager
Walking Footsteps – Intermediate
Play a sound in sync with a countdown

CS – Audio
Walking Footsteps – Advanced

Ray Casting
Ray Casting – Basics

JS – Character Controllers
Basic
Move – Basic
Detect Collision
Get Velocity
isGrounded

Advanced
1st Person
3rd Person
Platform – 3rd Person

Misc
LookAt Object
Orbit Around an Object
Point and Click Movement – No NavMesh

JS – Particles
Shuriken
OnMouseDown – set Color,Speed,Size,Gravity
OnMouseDown – SetActive

JS – Animations
Animation calls Functions – Animation Events

JS – Snippets
Timers
Countdown – Seconds
In Game Real Time Clock
Timer – Basic
Stop and Resume Timer
DateTime

Functions
Delay Function Execution
Repeiting a Function

OS
Get ScreenShot – Desktop
Get OS Language

Preloaders – Loaders
Unity3D 4.x – Custom Web Player Preload
Custom Web Player – Remove Right Click Context Menu
Loading and Downloading Screen

Misc
Frames per Seconds Script

Artificial Intelligence in Videogames
Overview

Multiplayer
Client-Server Communication Socket-Based in Videogames – Basic Concepts
UN – Multiplayer Introduction
UN – Multiplayer – LAG Compensation
PUN – Multiplayer Introduction – LAG Compensation

Space Shooter (official lesson) – Resume
001 – JS – Spaceship
002 – JS – Laser Bolt
003 – JS – Asteroid
004 – JS – Game Controller
005 – JS – Clear Exploded GameObjects
006 – JS – Audio
007 – JS – Scores
008 – JS – Game Over

Roll a Ball (official lesson) – Resume
001 – JS – Get Axis – rigidbody.AddForce
002 – JS – Camera Controller
003 – JS – PickUp – Rotator
004 – JS – PickUp – Collecting

Stealth Game (official lesson) – Resume
001 – Environment Setup
002 – JS – Alarm Light
003 – JS – Advanced Tags Management
004 – JS – Screen Fader
005 – JS – gameController
006 – JS – Video Surveillance – CCTV Camera
007 – JS – Laser Grids-Switch Unit
008 – JS – Player Setup
009 – JS – Player Animator Controller
010 – JS – HashIDs
011 – JS – Player Movement
012 – JS – Player Health
013 – JS – Camera Movement
014 – JS – Player Inventory
015 – JS – Single Doors
016 – JS – Double Doors
017 – JS – The lift

Game Concepts
MMORPG Develop

Resources
Unity 3D – Best Resources

Our Best Shots for Unity3D Coders

Code Snippets ready to Copy and Paste!

C++ Standard
Unreal – Game Engine

For Unreal Fighters Only!

Unreal Engine Rules!

Web Game Development – JS-JQuery

CrAzY Videogame Develop with JQuery!

JQuery - King of Fighters!

Bananas for Monkey Coders

Are you a Monkey Coder?

Do you need Bananas?

Luce Digitale, who?

I am Andrea Tonin, the founder of Luce Digitale. I have been working in multimedia industry since 1996.
"Luce Digitale" means Digital Light. The name says that I love digital arts. If you are a digital artist you will need light first, to have silouette, colors, sensations. We need light, we are nothing without it!
I am creative. I am a skilled photographer - 3D graphic - web designer and videogames maker. My sister Erica and my co-workers are creative and extreme skilled too.
We are the professional consultants of big companies, but we love small startup business too. We always make us work very hard to improve our client business using new technologies and the best marketing strategies. Contact us for a free quote! It will not cost anything and we can get to know each other better.

Best Hardware for Professionals and Gamers

Under the Hood of your PC

Increse your productivity with the Best Hardware!