Options
All
  • Public
  • Public/Protected
  • All
Menu

Class DisplacedBufferAttribute

internal

BufferAttribute decorator that displaces on the fly the coordinates in a given attribute using a specified displacement map.

Hierarchy

  • BufferAttribute
    • DisplacedBufferAttribute

Index

Constructors

constructor

  • new DisplacedBufferAttribute(originalAttribute: BufferAttribute | InterleavedBufferAttribute, m_normals: BufferAttribute | InterleavedBufferAttribute, m_uvs: BufferAttribute | InterleavedBufferAttribute, displacementMap: DataTexture): DisplacedBufferAttribute
  • Creates an instance of displaced buffer attribute.

    Parameters

    • originalAttribute: BufferAttribute | InterleavedBufferAttribute

      The buffer attribute to be displaced (e.g. the position attribute).

    • m_normals: BufferAttribute | InterleavedBufferAttribute

      The normals along which the coordinates will be displaced.

    • m_uvs: BufferAttribute | InterleavedBufferAttribute

      The uv coordinates to be used to sample the displacement map.

    • displacementMap: DataTexture

      A texture with the displacement values in 32bit floats.

    Returns DisplacedBufferAttribute

Properties

array

array: ArrayLike<number>

count

count: number
default

0

Readonly isBufferAttribute

isBufferAttribute: true

itemSize

itemSize: number

name

name: string
default

''

normalized

normalized: boolean
default

false

onUploadCallback

onUploadCallback: () => void

Type declaration

    • (): void
    • Returns void

originalAttribute

originalAttribute: BufferAttribute | InterleavedBufferAttribute

The buffer attribute to be displaced (e.g. the position attribute).

updateRange

updateRange: { count: number; offset: number }
default

{ offset: number; count: number }

Type declaration

  • count: number
  • offset: number

usage

usage: Usage
default

THREE.StaticDrawUsage

version

version: number
default

0

Accessors

needsUpdate

  • set needsUpdate(value: boolean): any

Methods

applyMatrix3

  • applyMatrix3(m: Matrix3): this

applyMatrix4

  • applyMatrix4(m: Matrix4): this

applyNormalMatrix

  • applyNormalMatrix(m: Matrix3): this

clone

  • clone(): this

copy

  • copy(source: BufferAttribute): this
  • Parameters

    • source: BufferAttribute

    Returns this

copyArray

  • copyArray(array: ArrayLike<number>): this
  • Parameters

    • array: ArrayLike<number>

    Returns this

copyAt

  • copyAt(index1: number, attribute: BufferAttribute, index2: number): this
  • Parameters

    • index1: number
    • attribute: BufferAttribute
    • index2: number

    Returns this

copyColorsArray

  • copyColorsArray(colors: Array<{ b: number; g: number; r: number }>): this
  • Parameters

    • colors: Array<{ b: number; g: number; r: number }>

    Returns this

copyVector2sArray

  • copyVector2sArray(vectors: Array<{ x: number; y: number }>): this

copyVector3sArray

  • copyVector3sArray(vectors: Array<{ x: number; y: number; z: number }>): this
  • Parameters

    • vectors: Array<{ x: number; y: number; z: number }>

    Returns this

copyVector4sArray

  • copyVector4sArray(vectors: Array<{ w: number; x: number; y: number; z: number }>): this
  • Parameters

    • vectors: Array<{ w: number; x: number; y: number; z: number }>

    Returns this

getW

  • getW(index: number): number
  • Parameters

    • index: number

    Returns number

getX

  • getX(index: number): number

getY

  • getY(index: number): number

getZ

  • getZ(index: number): number

onUpload

  • onUpload(callback: () => void): this
  • Parameters

    • callback: () => void
        • (): void
        • Returns void

    Returns this

reset

  • reset(originalAttribute: BufferAttribute | InterleavedBufferAttribute, normals: BufferAttribute | InterleavedBufferAttribute, uvs: BufferAttribute | InterleavedBufferAttribute, displacementMap: DataTexture): void
  • Resets the displaced buffer attribute to use new buffer attributes or displacement map.

    Parameters

    • originalAttribute: BufferAttribute | InterleavedBufferAttribute

      The buffer attribute to be displaced (e.g. the position attribute).

    • normals: BufferAttribute | InterleavedBufferAttribute

      The normals along which the coordinates will be displaced.

    • uvs: BufferAttribute | InterleavedBufferAttribute

      The uv coordinates to be used to sample the displacement map.

    • displacementMap: DataTexture

      A texture with the displacement values in 32bit floats.

    Returns void

set

  • set(value: ArrayLike<number> | ArrayBufferView, offset?: undefined | number): this
  • Parameters

    • value: ArrayLike<number> | ArrayBufferView
    • Optional offset: undefined | number

    Returns this

setUsage

  • setUsage(usage: Usage): this

setW

  • setW(index: number, z: number): this
  • Parameters

    • index: number
    • z: number

    Returns this

setX

  • setX(index: number, x: number): this
  • Parameters

    • index: number
    • x: number

    Returns this

setXY

  • setXY(index: number, x: number, y: number): this
  • Parameters

    • index: number
    • x: number
    • y: number

    Returns this

setXYZ

  • setXYZ(index: number, x: number, y: number, z: number): this
  • Parameters

    • index: number
    • x: number
    • y: number
    • z: number

    Returns this

setXYZW

  • setXYZW(index: number, x: number, y: number, z: number, w: number): this
  • Parameters

    • index: number
    • x: number
    • y: number
    • z: number
    • w: number

    Returns this

setY

  • setY(index: number, y: number): this
  • Parameters

    • index: number
    • y: number

    Returns this

setZ

  • setZ(index: number, z: number): this
  • Parameters

    • index: number
    • z: number

    Returns this

toJSON

  • toJSON(): { array: number[]; itemSize: number; normalized: boolean; type: string }
  • Returns { array: number[]; itemSize: number; normalized: boolean; type: string }

    • array: number[]
    • itemSize: number
    • normalized: boolean
    • type: string

transformDirection

  • transformDirection(m: Matrix4): this

Generated using TypeDoc