The AnimationMixer is a player for animations on a particular object in
the scene. When multiple objects in the scene are animated independently,
one AnimationMixer may be used for each object.
name can be used in order to efficiently render a scene with a
predefined set of cameras. This is an important performance aspect for
rendering VR scenes.
name is a geometry class for a rectangular cuboid with a given width,
height, and depth. On creation, the cuboid is centred on the origin,
with each edge parallel to one of the axes.
This class stores data for an attribute (such as vertex positions, face
indices, normals, colors, UVs, and any custom attributes ) associated with
a BufferGeometry, which allows for more efficient passing of data
to the GPU. See that page for details and a usage example. When working
with vector-like data, the .fromBufferAttribute( attribute, index )
helper methods on Vector2,
Vector3,
Vector4, and
Color classes may be helpful.
A representation of mesh, line, or point geometry. Includes vertex
positions, face indices, normals, colors, UVs, and custom attributes
within buffers, reducing the cost of passing all this data to the GPU.
Loader loads FBX file and generates Group representing FBX scene.
Requires FBX file to be >= 7.0 and in ASCII or >= 6400 in Binary format
Versions lower than this may load but will probably have errors
CircleGeometry is a simple shape of Euclidean geometry. It is constructed from a
number of triangular segments that are oriented around a central point and
extend as far out as a given radius. It is built counter-clockwise from a
start angle and a given central angle. It can also be used to create
regular polygons, where the number of segments determines the number of
sides.
CubeTextureLoader can be used to load cube maps. The loader returns an instance of CubeTexture and expects the cube map to
be defined as six separate images representing the sides of a cube. Other cube map definitions like vertical and horizontal cross,
column and row layouts are not supported.
DecalGeometry can be used to create a decal mesh that serves different kinds of purposes e.g. adding unique details
to models, performing dynamic visual environmental changes or covering seams.
A light that gets emitted in a specific direction. This light will behave
as though it is infinitely far away and the rays produced from it are all
parallel. The common use case for this is to simulate daylight; the sun is
far enough away that its position can be considered to be infinite, and
all light rays coming from it are parallel.
Loader loads FBX file and generates Group representing FBX scene.
Requires FBX file to be >= 7.0 and in ASCII or >= 6400 in Binary format
Versions lower than this may load but will probably have errors
A low level class for loading resources with Fetch, used internally by
most loaders. It can also be used directly to load any file type that does
not have a loader.
FlyControls enables a navigation similar to fly modes in DCC tools like Blender. You can arbitrarily transform the camera in
3D space without any limitations (e.g. focus on a specific target).
This class contains the parameters that define exponential squared fog,
which gives a clear view near the camera and a faster than exponentially
densening fog farther from the camera.
Class for loading a font in JSON format. Returns a font, which is an
array of Shapes representing the font.
This uses the FileLoader internally for loading files.
This class can only be used in combination with
WebGLRenderer.copyFramebufferToTexture.
final pixelRatio = devicePixelRatio;
final textureSize = 128 * pixelRatio;
This buffer attribute class does not construct a VBO. Instead, it uses
whatever VBO is passed in constructor and can later be altered via the
buffer property.
glTF (GL Transmission Format) is an
open format specification
for efficient delivery and loading of 3D content. Assets may be provided either in JSON (.gltf)
or binary (.glb) format. External files store textures (.jpg, .png) and additional binary
data (.bin). A glTF asset may deliver one or more scenes, including meshes, materials,
textures, skins, skeletons, morph targets, animations, lights, and/or cameras.
A special version of Mesh with instanced rendering support. Use
name if you have to render a large number of objects with the same
geometry and material but with different world transformations. The usage
of name will help you to reduce the number of draw calls and thus
improve the overall rendering performance in your application.
A KeyframeTrack is a timed sequence of
keyframes, which are
composed of lists of times and related values, and which are used to
animate a specific property of an object.
A Layers object assigns an Object3D to 1 or more of 32
layers numbered 0 to 31 - internally the layers are stored as a
bit mask, and by
default all Object3Ds are a member of layer 0.
Light probes are an alternative way of adding light to a 3D scene. Unlike
classical light sources (e.g. directional, point or spot lights), light
probes do not emit light. Instead they store information about light
passing through 3D space. During rendering, the light that hits a 3D
object is approximated by using the data from the light probe.
Handles and keeps track of loaded and pending data. A default global
instance of this class is created and used by loaders if not supplied
manually - see DefaultLoadingManager.
Create a MTLLoader.MaterialCreator
@param baseUrl - Url relative to which textures are loaded
@param options - Set of options on how to construct the materials
side: Which side to apply the material
FrontSide (default), THREE.BackSide, THREE.DoubleSide
wrap: What type of wrapping to apply for textures
RepeatWrapping (default), THREE.ClampToEdgeWrapping, THREE.MirroredRepeatWrapping
normalizeRGB: RGBs need to be normalized to 0-1 from 0-255
Default: false, assumed to be already normalized
ignoreZeroRGBs: Ignore values of RGBs (Ka,Kd,Ks) that are all 0's
Default: false
@constructor
The Material Template Library format (MTL) or .MTL File Format is a companion file format to .OBJ that describes surface shading
(material) properties of objects within one or more .OBJ files.
The OBJ file format is a simple data-format
that represents 3D geometry in a human readable format as the position of each vertex, the UV position of
each texture coordinate vertex, vertex normals, and the faces that make each polygon defined as a list of
vertices, and texture vertices.
A polyhedron is a solid in three dimensions with flat faces. This class
will take an array of vertices, project them onto a sphere, and then
divide them up to the desired level of detail. This class is used by
DodecahedronGeometry, IcosahedronGeometry,
OctahedronGeometry, and TetrahedronGeometry to generate
their respective geometries.
Create a smooth 2d quadratic bezier curvehttp://en.wikipedia.org/wiki/B%C3%A9zier_curve#mediaviewer/File:B%C3%A9zier_2_big.gif),
defined by a startpoint, endpoint and a single control point.
Create a smooth 3d quadratic bezier curvehttp://en.wikipedia.org/wiki/B%C3%A9zier_curve#mediaviewer/File:B%C3%A9zier_2_big.gif),
defined by a startpoint, endpoint and a single control point.
This class works just like ShaderMaterial, except that definitions
of built-in uniforms and attributes are not automatically prepended to the
GLSL shader code.
This class is designed to assist with
raycasting. Raycasting is
used for mouse picking (working out what objects in the 3d space the mouse
is over) amongst other things.
RectAreaLight emits light uniformly across the face a rectangular plane.
This light type can be used to simulate light sources such as bright
windows or strip lighting.
A material rendered with custom shaders. A shader is a small program
written in
GLSL
that runs on the GPU. You may want to use a custom shader if you need to:
Defines an arbitrary 2d shape plane using paths with optional holes. It
can be used with ExtrudeGeometry, ShapeGeometry, to get
points, or to get triangulated faces.
A class for generating text as a single geometry. It is constructed by providing a string of text, and a set of
parameters consisting of a loaded font and settings for the geometry's parent ExtrudeGeometry.
See the FontLoader page for additional details.
Creates a torus knot, the particular shape of which is defined by a pair
of coprime integers, p and q. If p and q are not coprime, the result will
be a torus link.
TrackballControls is similar to OrbitControls. However, it does not maintain a constant camera up vector.
That means if the camera orbits over the “north” and “south” poles, it does not flip to stay "right side up".
Requires opentype.js to be included in the project.
Loads TTF files and converts them into typeface JSON that can be used directly
to create THREE.Font objects.
Requires opentype.js to be included in the project.
Loads TTF files and converts them into typeface JSON that can be used directly
to create Font objects.
This class generates a Prefiltered, Mipmapped Radiance Environment Map
(PMREM) from a cubeMap environment texture. This allows different levels of
blur to be quickly accessed based on material roughness. It is packed into a
special CubeUV format that allows us to perform custom interpolation so that
we can support nonlinear formats such as RGBE. Unlike a traditional mipmap
chain, it only goes down to the lodMin level (above), and then creates extra
even more filtered 'mips' at the same lodMin resolution, associated with
higher roughness levels. In this way we maintain resolution to smoothly
interpolate diffuse lighting while limiting sampling computation.