These files typically have one buffer holding all the binary data for a scene.
new()Buffer$new(json = NULL, binfile = NULL)jsonlist read from glTF file.
binfileoptional External binary filename, or raw vector
uriWhich file to load.
bufWhich buffer number to load.
saveOpenBuffer()Write open buffer to connection.
Buffer$saveOpenBuffer(con, buf = 0)conOutput connection.
bufBuffer number.
getBuffer()Get buffer object.
Buffer$getBuffer(buf, default = list(byteLength = 0))bufBuffer number.
defaultDefault buffer object if buf not found.
A list containing components described here: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#reference-buffer.
setBuffer()Set buffer object.
Buffer$setBuffer(buf, buffer)bufBuffer number.
bufferNew value to insert.
openBuffer()Open a connection for the data in a buffer.
Buffer$openBuffer(buf)bufBuffer number.
An open binary connection.
writeBuffer()Write data to buffer.
Buffer$writeBuffer(values, type, size, buf = 0)valuesValues to write.
typeType to write.
sizeByte size of each value.
bufWhich buffer to write to.
Byte offset of start of bytes written.
closeBuffer()Close the connection in a buffer.
If there was a connection open, this will save the
contents in the raw vector bytes within the buffer object.
Buffer$closeBuffer(buf)bufThe buffer number.
closeBuffers()Close any open buffers.
Call this after working with a GLTF file to avoid warnings from R about closing unused connections.
Buffer$closeBuffers()
getBufferview()Get bufferView object.
Buffer$getBufferview(bufv)bufvbufferView number.
A list containing components described here: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#reference-bufferview.
addBufferView()Add a new buffer view.
Buffer$addBufferView(values, type, size, target = NULL, buf = 0)valuesValues to put in the view.
typeType of values.
sizeSize of values in bytes.
targetOptional target use for values.
bufWhich buffer to write to.
New bufferView number.
openBufferview()Open a connection to a buffer view.
Buffer$openBufferview(bufv)bufvWhich bufferView.
A connection.
setBufferview()Set bufferView object.
Buffer$setBufferview(bufv, bufferView)bufvbufferView number.
bufferViewNew value to insert.
getAccessor()Get accessor object
Buffer$getAccessor(acc)accAccessor number
A list containing components described here: https://registry.khronos.org/glTF/specs/2.0/glTF-2.0.html#reference-accessor
setAccessor()Set accessor object.
Buffer$setAccessor(acc, accessor)accAccessor number.
accessorNew value to insert.
readAccessor()Read data given by accessor number.
Buffer$readAccessor(acc)accAccessor number.
A vector or array as specified in the accessor. For the MATn types, the 3rd index
indexes the element.
readAccessor0()Read data given by accessor object.
Buffer$readAccessor0(accessor)accessorAccessor object
A vector or array as specified in the accessor. For the MATn types, the 3rd index
indexes the element.
addAccessor()Write values to accessor, not including min and max.
Buffer$addAccessor(
values,
target = NULL,
types = "anyGLTF",
normalized = FALSE
)valuesValues to write.
targetOptional target use for values.
typesWhich types can be used?
normalizedAre normalized integers allowed?
useDoubleWhether to write doubles or singles.
New accessor number
dataURI()Convert buffer to data URI.
Buffer$dataURI(buf = 0)bufBuffer to convert.
String containing data URI.
List suitable for writing using JSON.
clone()The objects of this class are cloneable with this method.
Buffer$clone(deep = FALSE)deepWhether to make a deep clone.