Fix error in GLSL #include code

This commit is contained in:
Saracen 2016-05-02 12:46:40 +01:00
parent 6c0071be96
commit 3717bafa4a

View File

@ -665,43 +665,42 @@ def build_hlsl_dx9_headers( target, source, env ):
class LegacyGLHeaderStruct: class LegacyGLHeaderStruct:
vertex_lines=[] def __init__(self):
fragment_lines=[] self.vertex_lines=[]
uniforms=[] self.fragment_lines=[]
attributes=[] self.uniforms=[]
fbos=[] self.attributes=[]
conditionals=[] self.fbos=[]
enums={} self.conditionals=[]
texunits=[] self.enums={}
texunit_names=[] self.texunits=[]
ubos=[] self.texunit_names=[]
ubo_names=[] self.ubos=[]
self.ubo_names=[]
vertex_included_files=[]
fragment_included_files=[] self.vertex_included_files=[]
self.fragment_included_files=[]
line_offset=0
vertex_offset=0 self.reading=""
fragment_offset=0 self.line_offset=0
self.vertex_offset=0
self.fragment_offset=0
def include_file_in_legacygl_header( filename, header_data, depth ): def include_file_in_legacygl_header( filename, header_data, depth ):
fs = open(filename,"r") fs = open(filename,"r")
line=fs.readline() line=fs.readline()
reading=""
while(line): while(line):
if (line.find("[vertex]")!=-1): if (line.find("[vertex]")!=-1):
reading="vertex" header_data.reading="vertex"
line=fs.readline() line=fs.readline()
header_data.line_offset+=1 header_data.line_offset+=1
header_data.vertex_offset=header_data.line_offset header_data.vertex_offset=header_data.line_offset
continue continue
if (line.find("[fragment]")!=-1): if (line.find("[fragment]")!=-1):
reading="fragment" header_data.reading="fragment"
line=fs.readline() line=fs.readline()
header_data.line_offset+=1 header_data.line_offset+=1
header_data.fragment_offset=header_data.line_offset header_data.fragment_offset=header_data.line_offset
@ -713,11 +712,11 @@ def include_file_in_legacygl_header( filename, header_data, depth ):
import os.path import os.path
included_file = os.path.relpath(os.path.dirname(filename) + "/" + includeline) included_file = os.path.relpath(os.path.dirname(filename) + "/" + includeline)
if (not included_file in header_data.vertex_included_files and reading=="vertex"): if (not included_file in header_data.vertex_included_files and header_data.reading=="vertex"):
header_data.vertex_included_files+=[included_file] header_data.vertex_included_files+=[included_file]
if(include_file_in_legacygl_header( included_file, header_data, depth + 1 ) == None): if(include_file_in_legacygl_header( included_file, header_data, depth + 1 ) == None):
print "Error in file '" + filename + "': #include " + includeline + "could not be found!" print "Error in file '" + filename + "': #include " + includeline + "could not be found!"
elif (not included_file in header_data.fragment_included_files and reading=="fragment"): elif (not included_file in header_data.fragment_included_files and header_data.reading=="fragment"):
header_data.fragment_included_files+=[included_file] header_data.fragment_included_files+=[included_file]
if(include_file_in_legacygl_header( included_file, header_data, depth + 1 ) == None): if(include_file_in_legacygl_header( included_file, header_data, depth + 1 ) == None):
print "Error in file '" + filename + "': #include " + includeline + "could not be found!" print "Error in file '" + filename + "': #include " + includeline + "could not be found!"
@ -808,9 +807,9 @@ def include_file_in_legacygl_header( filename, header_data, depth ):
#line=line.replace("\"","\\\"") #line=line.replace("\"","\\\"")
#line=line+"\\n\\" #line=line+"\\n\\"
if (reading=="vertex"): if (header_data.reading=="vertex"):
header_data.vertex_lines+=[line] header_data.vertex_lines+=[line]
if (reading=="fragment"): if (header_data.reading=="fragment"):
header_data.fragment_lines+=[line] header_data.fragment_lines+=[line]
line=fs.readline() line=fs.readline()