Exemple #1
0
    def __init__(self, builder="NoAccel", traverser="NoAccel", **kwargs):
        HasContextMixin.__init__(self, current_context())
        DestroyableObject.__init__(self, self._safe_context._create_accelerator(builder, traverser))
        GraphNodeMixin.__init__(self)

        for key, value in six.iteritems(kwargs):
            self._safe_native.set_property(key, value)
Exemple #2
0
    def __init__(self, builder="NoAccel", traverser="NoAccel", **kwargs):
        HasContextMixin.__init__(self, current_context())
        DestroyableObject.__init__(
            self, self._safe_context._create_accelerator(builder, traverser))
        GraphNodeMixin.__init__(self)

        for key, value in six.iteritems(kwargs):
            self._safe_native.set_property(key, value)
Exemple #3
0
    def __init__(self, buffer_type='io'):
        HasContextMixin.__init__(self, current_context())
        DestroyableObject.__init__(self, self._safe_context._create_buffer(convert_buffer_type(buffer_type)))
        BindlessMixin.__init__(self)

        self._numpy_dtype = None
        self._numpy_shape = None
        self._last_dim_dropped = False
Exemple #4
0
    def __init__(self, children=None):
        from pyoptix.acceleration import Acceleration
        from pyoptix.geometry_instance import GeometryInstance

        HasContextMixin.__init__(self, current_context())
        DestroyableObject.__init__(self, self._safe_context._create_geometry_group())
        GraphNodeMixin.__init__(self)
        ParentMixin.__init__(self, [Acceleration, GeometryInstance], children)

        self._acceleration = None
Exemple #5
0
    def __init__(self, buffer_type='io'):
        HasContextMixin.__init__(self, current_context())
        DestroyableObject.__init__(
            self,
            self._safe_context._create_buffer(
                convert_buffer_type(buffer_type)))
        BindlessMixin.__init__(self)

        self._numpy_dtype = None
        self._numpy_shape = None
        self._last_dim_dropped = False
Exemple #6
0
    def __init__(self, children=None):
        from pyoptix.geometry_group import GeometryGroup
        from pyoptix.group import Group
        from pyoptix.transform import Transform

        HasContextMixin.__init__(self, current_context())
        DestroyableObject.__init__(self, self._safe_context._create_selector())
        GraphNodeMixin.__init__(self)
        ParentMixin.__init__(self, [GeometryGroup, Group, Selector, Transform], children)

        self._visit_program = None
Exemple #7
0
    def __init__(self, children=None):
        from pyoptix.geometry_group import GeometryGroup
        from pyoptix.group import Group
        from pyoptix.selector import Selector

        HasContextMixin.__init__(self, current_context())
        DestroyableObject.__init__(self, self._safe_context._create_transform())
        GraphNodeMixin.__init__(self)
        ParentMixin.__init__(self, [GeometryGroup, Group, Selector, Transform], children)

        self._transpose = False
Exemple #8
0
    def __init__(self, children=None):
        from pyoptix.acceleration import Acceleration
        from pyoptix.geometry_instance import GeometryInstance

        HasContextMixin.__init__(self, current_context())
        DestroyableObject.__init__(self,
                                   self._safe_context._create_geometry_group())
        GraphNodeMixin.__init__(self)
        ParentMixin.__init__(self, [Acceleration, GeometryInstance], children)

        self._acceleration = None
Exemple #9
0
    def __init__(self, children=None):
        from pyoptix.acceleration import Acceleration
        from pyoptix.geometry_group import GeometryGroup
        from pyoptix.selector import Selector
        from pyoptix.transform import Transform

        HasContextMixin.__init__(self, current_context())
        DestroyableObject.__init__(self, self._safe_context._create_group())
        GraphNodeMixin.__init__(self)
        ParentMixin.__init__(self, [GeometryGroup, Group, Selector, Transform, Acceleration], children)

        self._acceleration = None
Exemple #10
0
    def __init__(self, children=None):
        from pyoptix.geometry_group import GeometryGroup
        from pyoptix.group import Group
        from pyoptix.transform import Transform

        HasContextMixin.__init__(self, current_context())
        DestroyableObject.__init__(self, self._safe_context._create_selector())
        GraphNodeMixin.__init__(self)
        ParentMixin.__init__(self, [GeometryGroup, Group, Selector, Transform],
                             children)

        self._visit_program = None
Exemple #11
0
    def __init__(self, children=None):
        from pyoptix.geometry_group import GeometryGroup
        from pyoptix.group import Group
        from pyoptix.selector import Selector

        HasContextMixin.__init__(self, current_context())
        DestroyableObject.__init__(self,
                                   self._safe_context._create_transform())
        GraphNodeMixin.__init__(self)
        ParentMixin.__init__(self, [GeometryGroup, Group, Selector, Transform],
                             children)

        self._transpose = False
Exemple #12
0
    def __init__(self,
                 buffer,
                 wrap_mode=None,
                 indexing_mode=None,
                 read_mode=None,
                 filter_mode=None,
                 max_anisotropy=1):
        HasContextMixin.__init__(self, current_context())
        DestroyableObject.__init__(
            self, self._safe_context._create_texture_sampler())
        BindlessMixin.__init__(self)

        self._buffer = None
        self._filtering_mode_minification = None
        self._filtering_mode_magnification = None
        self._filtering_mode_mipmapping = None

        if indexing_mode is not None:
            self.set_indexing_mode(indexing_mode)

        if wrap_mode is not None:
            self.set_wrap_mode(0, wrap_mode)
            self.set_wrap_mode(1, wrap_mode)
            self.set_wrap_mode(2, wrap_mode)

        if read_mode is not None:
            self.set_read_mode(read_mode)

        if filter_mode is not None:
            if OPTIX_VERSION >= 3090 and buffer.get_mip_level_count() > 1:
                self.set_filtering_modes(filter_mode, filter_mode, filter_mode)
            else:
                self.set_filtering_modes(filter_mode, filter_mode,
                                         FilterMode.none)

        self._safe_native.set_max_anisotropy(max_anisotropy)

        if OPTIX_VERSION < 3090:
            # required with OptiX < 3.9.0
            self._safe_native.set_mip_level_count(1)
            self._safe_native.set_array_size(1)

        self.set_buffer(0, 0, buffer)
Exemple #13
0
    def __init__(self, buffer, wrap_mode=None, indexing_mode=None,
                 read_mode=None, filter_mode=None, max_anisotropy=1):
        HasContextMixin.__init__(self, current_context())
        DestroyableObject.__init__(self, self._safe_context._create_texture_sampler())
        BindlessMixin.__init__(self)

        self._buffer = None
        self._filtering_mode_minification = None
        self._filtering_mode_magnification = None
        self._filtering_mode_mipmapping = None

        if indexing_mode is not None:
            self.set_indexing_mode(indexing_mode)

        if wrap_mode is not None:
            self.set_wrap_mode(0, wrap_mode)
            self.set_wrap_mode(1, wrap_mode)
            self.set_wrap_mode(2, wrap_mode)

        if read_mode is not None:
            self.set_read_mode(read_mode)

        if filter_mode is not None:
            if OPTIX_VERSION >= 3090 and buffer.get_mip_level_count() > 1:
                self.set_filtering_modes(filter_mode, filter_mode, filter_mode)
            else:
                self.set_filtering_modes(filter_mode, filter_mode, FilterMode.none)

        self._safe_native.set_max_anisotropy(max_anisotropy)

        if OPTIX_VERSION < 3090:
            # required with OptiX < 3.9.0
            self._safe_native.set_mip_level_count(1)
            self._safe_native.set_array_size(1)

        self.set_buffer(0, 0, buffer)
Exemple #14
0
 def __init__(self, native):
     DestroyableObject.__init__(self, native)
     self._variables = {}