3D Extension

The 3D Extension allows you to create 3D projects with 3D models or simple shapes and lighting. The extension is not visible from the "Add Extension" in the normal editor but can be found in Live Tests. There is a physics extension for the 3D extension called 3D Physics, as well as a virtual reality extension called 3D Virtual Reality.[[File:3D example.png|thumb|479x479px|An example of the 3D extension being used in superepic3dproject by know0your0true0colorhttps://studio.penguinmod.com/editor.html?livetests]]
==Blocks==
*create 3D scene
*remove 3D scene
*set scene camera to perspective camera with fov: ()
*set scene camera to perspective camera with fov: () aspect ratio: ()
*set scene camera to perspective camera with fov: () aspect ratio: () and only render objects within () and () units of the camera
*set scene camera to orthographic camera
*set scene camera to orthographic camera with left plane: () right plane: () top plane: () bottom plane: ()
*set scene camera to orthographic camera with left plane: () right plane: () top plane: () bottom plane: () and only render objects within () and () units of the camera
*render
*move 3D scene layer to ()
*set background color to ()
*set background transparency to ()%
*show 3D scene
*hide 3D scene
*is 3D scene visible?
*move camera by ()
*set camera position to x: () y: () z: ()
*change camera position by x: () y: () z: ()
*set camera rotation to x: () y: () z: ()
*change camera rotation by x: () y: () z: ()
*set camera zoom to ()%
*camera ()
*camera () position
*camera () rotation
*camera aspect ratio
*camera zoom
*camera fov
*is scene camera a perspective camera?
*is scene camera an orthographic camera?
*object named () exists?
*existing ()
*create cube named () at x: () y: () z: ()
*create sphere named () at x: () y: () z: ()
*create mesh named () with () data: () at x: () y: () z: ()
*create () light named () at x: () y: () z: ()
*move object named () by ()
*move object named () to x: () y: () z: ()
*set rotation of object to x: () y: () z: ()
*set size of object named () to x: ()% y: ()% z: ()%
*point object named () towards object named ()
*point object named () towards x: () y: ()
*() position of object named ()
*() rotation of object named ()
*() size of object named ()
*object () touching object ()
*remove object named ()
*recolor object named () to ()
*turn () shading on object named ()
*turn () wireframe view on object named ()
*first object in raycast from x: () y: () z: () with direction x: () y: () z: ()
*raycast result from x: () y: () z: () with direction x: () y: () z: ()
*first object from raycast in camera center
*raycast result starting from the camera center 
==References==