A loader for loading a .obj resource.
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.
// instantiate the loader
let loader = new THREE.OBJLoader2();
// function called on successful load
function callbackOnLoad ( object3d ) {
scene.add( object3d );
}
// load a resource from provided URL synchronously
loader.load( 'obj/female02/female02.obj', callbackOnLoad, null, null, null );
[example:webgl_loader_obj2] - Simple example
[page:LoadingManager manager] - The [page:LoadingManager loadingManager] for the loader to use. Default is [page:LoadingManager THREE.DefaultLoadingManager].
Creates a new [name]. Use it to load OBJ data from files or to parse OBJ data from arraybuffer or text.
See the base [page:Loader] class for common properties.
See the base [page:Loader] class for common methods.
[[page:arraybuffer content]|[page:String content]] OBJ data as Uint8Array or String
Parses OBJ data synchronously from arraybuffer or string and returns the [page:Object3D baseObject3d].
[page:String url] - A string containing the path/URL of the file to be loaded.
[page:Function onLoad] - A function to be called after loading is successfully completed. The function receives loaded [page:Object3D] as an argument.
[page:Function onProgress] - (optional) A function to be called while the loading is in progress. The argument will be the XMLHttpRequest instance, which contains [page:Integer total] and [page:Integer loaded] bytes.
[page:Function onError] - (optional) A function to be called if an error occurs during loading. The function receives the error as an argument.
[page:Function onMeshAlter] - (optional) A function to be called after a new mesh raw data becomes available for alteration.
Use this convenient method to load a file at the given URL. By default the fileLoader uses an ArrayBuffer.
[page:Boolean enabled] True or false.
[page:Boolean debug] True or false.
Enable or disable logging in general (except warn and error), plus enable or disable debug logging.
[page:boolean materialPerSmoothingGroup]
Tells whether a material shall be created per smoothing group.
[page:boolean useOAsMesh]
Usually 'o' is meta-information and does not result in creation of new meshes, but mesh creation on occurrence of "o" can be enforced.
[page:Boolean useIndices]
Instructs loaders to create indexed [page:BufferGeometry].
[page:Boolean disregardNormals]
Tells whether normals should be completely disregarded and regenerated.
[page:String modelName]
Set the name of the model.
[page:Object3D baseObject3d - Object already attached to scenegraph where new meshes will be attached to
Set the node where the loaded objects will be attached directly.
[page:Object materials] - materials Object with named [page:Material Materials]
Add materials as associated array.
[page:Function onLoad]
Register a function that is called when parsing was completed.
[page:Function onAssetAvailable]
Register a function that is called once an asset (mesh/material) becomes available.
[page:Function onProgress]
Register a function that is used to report overall processing progress.
[page:Function onError]
Register an error handler function that is called if errors occur. It can decide to just log or to throw an exception.
[page:Function onMeshAlter]
Register a function that is called once a single mesh is available and it could be altered by the supplied function.
[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/loaders/OBJLoader2.js examples/jsm/loaders/OBJLoader2.js]