Skip to content

Commit 0027035

Browse files
committed
Save meta instance in modelgl programs and textures in extra attribute
1 parent a091db3 commit 0027035

File tree

3 files changed

+11
-2
lines changed

3 files changed

+11
-2
lines changed

demosys/loaders/texture/array.py

+1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ def load(self):
2323
components,
2424
data,
2525
)
26+
texture.extra = {'meta': self.meta}
2627

2728
if self.meta.mipmap:
2829
texture.build_mipmaps()

demosys/loaders/texture/t2d.py

+1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ def load(self):
1515
components,
1616
data,
1717
)
18+
texture.extra = {'meta': self.meta}
1819

1920
if self.meta.mipmap:
2021
texture.build_mipmaps()

demosys/opengl/program.py

+9-2
Original file line numberDiff line numberDiff line change
@@ -110,7 +110,12 @@ def from_separate(cls, meta: ProgramDescription, vertex_source, geometry_source=
110110
return instance
111111

112112
def create(self):
113-
"""Return create arguments to the Contex.program function in moderngl"""
113+
"""
114+
Creates a shader program.
115+
116+
Returns:
117+
ModernGL Program instance
118+
"""
114119
# Get out varyings
115120
out_attribs = []
116121

@@ -123,14 +128,16 @@ def create(self):
123128
else:
124129
out_attribs = self.vertex_source.find_out_attribs()
125130

126-
return self.ctx.program(
131+
program = self.ctx.program(
127132
vertex_shader=self.vertex_source.source,
128133
geometry_shader=self.geometry_source.source if self.geometry_source else None,
129134
fragment_shader=self.fragment_source.source if self.fragment_source else None,
130135
tess_control_shader=self.tess_control_source.source if self.tess_control_source else None,
131136
tess_evaluation_shader=self.tess_evaluation_source.source if self.tess_evaluation_source else None,
132137
varyings=out_attribs,
133138
)
139+
program.extra = {'meta': self.meta}
140+
return program
134141

135142

136143
class ShaderSource:

0 commit comments

Comments
 (0)