Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
textureBinder.h
1
//
2
// Copyright 2020 Pixar
3
//
4
// Licensed under the Apache License, Version 2.0 (the "Apache License")
5
// with the following modification; you may not use this file except in
6
// compliance with the Apache License and the following modification to it:
7
// Section 6. Trademarks. is deleted and replaced with:
8
//
9
// 6. Trademarks. This License does not grant permission to use the trade
10
// names, trademarks, service marks, or product names of the Licensor
11
// and its affiliates, except as required to comply with Section 4(c) of
12
// the License and to reproduce the content of the NOTICE file.
13
//
14
// You may obtain a copy of the Apache License at
15
//
16
// http://www.apache.org/licenses/LICENSE-2.0
17
//
18
// Unless required by applicable law or agreed to in writing, software
19
// distributed under the Apache License with the above modification is
20
// distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21
// KIND, either express or implied. See the Apache License for the specific
22
// language governing permissions and limitations under the Apache License.
23
//
24
#ifndef PXR_IMAGING_HD_ST_TEXTURE_BINDER_H
25
#define PXR_IMAGING_HD_ST_TEXTURE_BINDER_H
26
27
#include "
pxr/pxr.h
"
28
#include "pxr/imaging/hdSt/api.h"
29
#include "pxr/imaging/hdSt/shaderCode.h"
30
31
PXR_NAMESPACE_OPEN_SCOPE
32
33
using
HdBufferSpecVector = std::vector<struct HdBufferSpec>;
34
44
class
HdSt_TextureBinder {
45
public
:
46
using
NamedTextureHandle =
47
HdStShaderCode::NamedTextureHandle
;
48
using
NamedTextureHandleVector =
49
HdStShaderCode::NamedTextureHandleVector;
50
57
static
void
58
GetBufferSpecs(
59
const
NamedTextureHandleVector &textures,
60
bool
useBindlessHandles,
61
HdBufferSpecVector * specs);
62
74
static
void
75
ComputeBufferSources(
76
const
NamedTextureHandleVector &textures,
77
bool
useBindlessHandles,
78
HdBufferSourceSharedPtrVector * sources);
79
85
static
void
86
BindResources(
87
HdSt_ResourceBinder
const
&binder,
88
bool
useBindlessHandles,
89
const
NamedTextureHandleVector &textures);
90
96
static
void
97
UnbindResources(
98
HdSt_ResourceBinder
const
&binder,
99
bool
useBindlessHandles,
100
const
NamedTextureHandleVector &textures);
101
};
102
103
PXR_NAMESPACE_CLOSE_SCOPE
104
105
#endif // PXR_IMAGING_HD_ST_TEXTURE_BINDER_H
HdStShaderCode::NamedTextureHandle
Information necessary to bind textures and create accessor for the texture.
Definition:
shaderCode.h:136
pxr.h
pxr
imaging
hdSt
textureBinder.h
Generated on Thu Jul 15 2021 00:08:59 by
1.8.5