mirror of
https://github.com/3b1b/manim.git
synced 2025-07-31 05:52:34 +08:00
Allow caching of shader program code
This commit is contained in:
@ -121,11 +121,15 @@ class ShaderWrapper(object):
|
||||
return self
|
||||
|
||||
|
||||
# Helper functions related to shader code
|
||||
# For caching
|
||||
filename_to_code_map = {}
|
||||
|
||||
|
||||
def get_shader_code_from_file(filename):
|
||||
if not filename:
|
||||
return None
|
||||
if filename in filename_to_code_map:
|
||||
return filename_to_code_map[filename]
|
||||
|
||||
try:
|
||||
filepath = find_file(
|
||||
@ -149,6 +153,7 @@ def get_shader_code_from_file(filename):
|
||||
os.path.join("inserts", line.replace("#INSERT ", ""))
|
||||
)
|
||||
result = result.replace(line, inserted_code)
|
||||
filename_to_code_map[filename] = result
|
||||
return result
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user