3D Extension: Difference between revisions

no edit summary
m (remove unnecessary mention)
No edit summary
 
(31 intermediate revisions by 14 users not shown)
Line 1:
{{Stub}}{{WIP|extension}}{{Extension|extension_img=3dextension.png|extension_desc=Use the magic of 3D to spice up your project.}}
The 3D extension is W.I.P extension for PenguinMod.[[File:3D example.png|thumb|479x479px|An example of the 3D extension being used in [https://studio.penguinmod.site/#15314302]superepic3dproject by know0your0true0color]]
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 [https://studio.penguinmod.com/editor.html?livetests 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]].
 
== Units ==
Units are a scale of measurement in the 3d space. However, units are not pixels, instead, think of 1 unit being the same as 100 pixels, though pixels do not exist in the 3d space. Most blocks that use position and scaling will use units. This doesn't apply to object and camera rotations however.
 
== Setting up a 3d Project ==
[[File:3dExample.png|thumb]]
Some people struggle with creating a 3d project. The image to the right shows the basics for setting up your 3d space. Of course, you can set the fov (field of view) and the background color to whatever you'd like, but this is the recommended.
 
==Blocks==
[[File:3D example.png|thumb|479x479px|An example of the 3D extension being used in [https://studio.penguinmod.site/#15314302][https://studio.penguinmod.com/#15314302 superepic3dproject] by know0your0true0color<ref>https://studio.penguinmod.com/editor.html?livetests</ref>]]This is a list of all blocks in the extension.
{| class="wikitable"
|+
!Image
!Name
|-
|[[File:create3dscene.png|150px]]
|[[create 3D scene]]
|-
|[[File:remove3dscene.png|150px]]
|[[remove 3D scene]]
|-
|[[File:3d perspective1.png|150px]]
|[[set scene camera to perspective camera with fov: ()]]
|-
|[[File:3d perspective2.png|150px]]
|[[set scene camera to perspective camera with fov: () aspect ratio: ()]]
|-
|[[File:3d perspective3.png|150px]]
|[[set scene camera to perspective camera with fov: () aspect ratio: () and only render objects within () and () units of the camera]]
|-
|[[File:3d_orthographic1.png|150px]]
|[[set scene camera to orthographic camera]]
|-
|[[File:3d_orthographic2.png|150px]]
|[[set scene camera to orthographic camera with left plane: () right plane: () top plane: () bottom plane: ()]]
|-
|[[File:3d_orthographic3.png|150px]]
|[[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]]
|-
|[[File:3drender.png|150px]]
|[[render]]
|-
|[[File:move3dlayer.png|150px]]
|[[move 3D scene layer to ()]]
|-
|[[File:set3dbackground.png|150px]]
|[[set background color to ()]]
|-
|[[File:set3dbackgroundtrans.png|150px]]
|[[set background transparency to ()%]]
|-
|[[File:show3d.png|150px]]
|[[show 3D scene]]
|-
|[[File:hide3d.png|150px]]
|[[hide 3D scene]]
|-
|[[File:3dvisible.png|150px]]
|[[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==
<references />
{{ExtensionsNav}}