warp.Texture1D#

class warp.Texture1D(*args, **kwargs)[source]#

1D texture class.

Experimental

The texture API is experimental and subject to change without a formal deprecation cycle. See Texture for details.

This is a specialized version of Texture with dimensionality fixed to 1. Use this for explicit 1D texture creation and as a type hint in kernel parameters.

Example:

import warp as wp
import numpy as np

data = np.random.rand(256, 4).astype(np.float32)
tex = wp.Texture1D(data, device="cuda:0")


@wp.kernel
def sample_kernel(tex: wp.Texture1D, output: wp.array(dtype=float)):
    tid = wp.tid()
    output[tid] = wp.texture_sample(tex, 0.5, dtype=float)
Parameters:
__init__(
data=None,
width=0,
num_channels=0,
dtype=None,
filter_mode=TextureFilterMode.LINEAR,
address_mode=TextureAddressMode.CLAMP,
address_mode_u=None,
normalized_coords=True,
device=None,
surface_access=False,
cuda_array=0,
)[source]#
Parameters:

Methods

__init__([data, width, num_channels, dtype, ...])

copy_from(src)

Copy texture data from a source.

copy_from_array(src)

Copy from a CUDA Warp array into this texture's CUDA array.

copy_to(dst)

Copy texture data to a destination.

copy_to_array(dst)

Copy from this texture's CUDA array into a CUDA Warp array.

Attributes

address_mode_u

Address mode for U axis.

address_mode_v

Address mode for V axis.

address_mode_w

Address mode for W axis (3D only).

cuda_array

CUDA array handle backing this texture.

cuda_surface

CUDA surface object handle backing this texture.

cuda_texture

CUDA texture object handle.

depth

Texture depth in pixels (1 for 2D textures).

dtype

Data type of the texture.

height

Texture height in pixels.

id

Device-independent texture identifier.

ndim

Texture dimensionality (1, 2, or 3).

normalized_coords

Whether texture uses normalized coordinates.

num_channels

Number of channels.

vars

width

Texture width in pixels.

vars: ClassVar[dict[str, _Var]] = {'width': <warp._src.codegen.Var object>}#