import sys
-ext=sys.argv[1]
+ext = sys.argv[1]
-funcs=[]
-cur_func=None
+funcs = []
+cur_func = None
for line in file("gl.spec"):
if line[0]=='#' or line.find(':')>=0:
continue
elif line[0]=='\t' and cur_func:
- parts=line.split()
+ parts = line.split()
if parts[0]=="category" and parts[1]==ext:
funcs.append(cur_func)
else:
- paren=line.find('(')
+ paren = line.find('(')
if paren>0:
- cur_func=line[:paren]
+ cur_func = line[:paren]
-out=file(ext.lower()+".h", "w")
+out = file(ext.lower()+".h", "w")
out.write("#ifndef MSP_GL_%s_\n"%ext.upper())
out.write("#define MSP_GL_%s_\n"%ext.upper())
#endif
""")
-out=file(ext.lower()+".cpp", "w")
+out = file(ext.lower()+".cpp", "w")
out.write("#include \"extension.h\"\n")
out.write("#include \"%s.h\"\n"%ext.lower())
""")
for f in funcs:
- out.write("PFNGL%sPROC gl%s=0;\n"%(f.upper(), f))
+ out.write("PFNGL%sPROC gl%s = 0;\n"%(f.upper(), f))
out.write("\nvoid init_%s()\n{\n"%ext.lower())
for f in funcs:
- out.write("\tgl%s=reinterpret_cast<PFNGL%sPROC>(get_proc_address(\"gl%s\"));\n"%(f, f.upper(), f))
+ out.write("\tgl%s = reinterpret_cast<PFNGL%sPROC>(get_proc_address(\"gl%s\"));\n"%(f, f.upper(), f))
out.write("}\n")
out.write("""
#!/usr/bin/python
def convert_def(fn):
- src=file(fn)
+ src = file(fn)
- line=src.readline()
- tw,th,fh,fa,fd=map(int, line.split())
+ line = src.readline()
+ tw, th, fh, fa, fd = map(int, line.split())
- result="native_size %d;\n"%fh
- result+="ascent %.3f;\n"%(float(fa)/fh)
- result+="descent %.3f;\n"%(float(fd)/fh)
+ result = "native_size %d;\n"%fh
+ result += "ascent %.3f;\n"%(float(fa)/fh)
+ result += "descent %.3f;\n"%(float(fd)/fh)
for line in src.readlines():
- g,x,y,w,h,ox,oy,a=map(int, line.split())
- result+="glyph %d\n{\n"%g
- result+="\ttexcoords %f %f %f %f;\n"%(float(x)/tw, float(th-y-h)/th, float(x+w)/tw, float(th-y)/th)
- result+="\tsize %.3f %.3f;\n"%(float(w)/fh, float(h)/fh)
- result+="\toffset %.3f %.3f;\n"%(float(ox)/fh, float(oy)/fh)
- result+="\tadvance %.3f;\n"%(float(a)/fh)
- result+="};\n"
+ g, x, y, w, h, ox, oy, a = map(int, line.split())
+ result += "glyph %d\n{\n"%g
+ result += "\ttexcoords %f %f %f %f;\n"%(float(x)/tw, float(th-y-h)/th, float(x+w)/tw, float(th-y)/th)
+ result += "\tsize %.3f %.3f;\n"%(float(w)/fh, float(h)/fh)
+ result += "\toffset %.3f %.3f;\n"%(float(ox)/fh, float(oy)/fh)
+ result += "\tadvance %.3f;\n"%(float(a)/fh)
+ result += "};\n"
return result
if os.system("ttf2png \"%s\" -o makefont-tmp.png -d makefont-tmp.def -t -p -s %d"%(fn, size)):
raise Exception("Could not execute ttf2png")
- result="texture\n{\n"
- result+="wrap CLAMP_TO_EDGE;\n"
- result+=maketex.make_tex("makefont-tmp.png")
- result+="};\n"
- result+=convert_def("makefont-tmp.def")
+ result = "texture\n{\n"
+ result += "wrap CLAMP_TO_EDGE;\n"
+ result += maketex.make_tex("makefont-tmp.png")
+ result += "};\n"
+ result += convert_def("makefont-tmp.def")
os.unlink("makefont-tmp.png")
os.unlink("makefont-tmp.def")
import os
print "Usage: %s <font.ttf> <outfile> <size>"%os.path.basename(sys.argv[0])
else:
- out=file(sys.argv[2], "w")
+ out = file(sys.argv[2], "w")
out.write(make_font(sys.argv[1], int(sys.argv[3])))
#!/usr/bin/python
def escape(str):
- result=""
+ result = ""
for c in str:
if c=='"':
- result+='\\"'
+ result += '\\"'
elif c=='\\':
- result+='\\\\'
+ result += '\\\\'
elif ord(c)<0x20:
- result+="\\%03o"%ord(c)
+ result += "\\%03o"%ord(c)
else:
- result+=c
+ result += c
return result;
def make_tex(fn):
import Image
- img=Image.open(fn)
+ img = Image.open(fn)
- fmt="".join(img.getbands())
+ fmt = "".join(img.getbands())
if fmt=="LA":
- fmt="LUMINANCE_ALPHA"
+ fmt = "LUMINANCE_ALPHA"
elif fmt=="L":
- fmt="LUMINANCE"
+ fmt = "LUMINANCE"
- result="storage %s %d %d;\n"%(fmt, img.size[0], img.size[1])
- result+="min_filter LINEAR;\n"
- result+="raw_data \""
- data=list(img.getdata())
+ result = "storage %s %d %d;\n"%(fmt, img.size[0], img.size[1])
+ result += "min_filter LINEAR;\n"
+ result += "raw_data \""
+ data = list(img.getdata())
for y in range(img.size[1]):
- i=(img.size[1]-1-y)*img.size[0]
- result+=escape("".join(["".join([chr(v) for v in p]) for p in data[i:i+img.size[0]]]))
- result+="\";\n"
+ i = (img.size[1]-1-y)*img.size[0]
+ result += escape("".join(["".join([chr(v) for v in p]) for p in data[i:i+img.size[0]]]))
+ result += "\";\n"
return result
if len(sys.argv)<2:
print "Usage: %s <image>"%sys.argv[0]
else:
- out=file(os.path.splitext(sys.argv[1])[0]+".tex", "w")
+ out = file(os.path.splitext(sys.argv[1])[0]+".tex", "w")
out.write(make_tex(sys.argv[1]))
public:
virtual ~Effect() { }
- virtual void prepare() =0;
- virtual void cleanup() =0;
+ virtual void prepare() = 0;
+ virtual void cleanup() = 0;
};
} // namespace GL
namespace Msp {
namespace GL {
-PFNGLBLITFRAMEBUFFEREXTPROC glBlitFramebufferEXT=0;
+PFNGLBLITFRAMEBUFFEREXTPROC glBlitFramebufferEXT = 0;
void init_ext_framebuffer_blit()
{
- glBlitFramebufferEXT=reinterpret_cast<PFNGLBLITFRAMEBUFFEREXTPROC>(get_proc_address("glBlitFramebufferEXT"));
+ glBlitFramebufferEXT = reinterpret_cast<PFNGLBLITFRAMEBUFFEREXTPROC>(get_proc_address("glBlitFramebufferEXT"));
}
} // namespace GL
namespace Msp {
namespace GL {
-PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC glRenderbufferStorageMultisampleEXT=0;
+PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC glRenderbufferStorageMultisampleEXT = 0;
void init_ext_framebuffer_multisample()
{
- glRenderbufferStorageMultisampleEXT=reinterpret_cast<PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC>(get_proc_address("glRenderbufferStorageMultisampleEXT"));
+ glRenderbufferStorageMultisampleEXT = reinterpret_cast<PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC>(get_proc_address("glRenderbufferStorageMultisampleEXT"));
}
} // namespace GL
namespace Msp {
namespace GL {
-PFNGLPRIMITIVERESTARTNVPROC glPrimitiveRestartNV=0;
-PFNGLPRIMITIVERESTARTINDEXNVPROC glPrimitiveRestartIndexNV=0;
+PFNGLPRIMITIVERESTARTNVPROC glPrimitiveRestartNV = 0;
+PFNGLPRIMITIVERESTARTINDEXNVPROC glPrimitiveRestartIndexNV = 0;
void init_nv_primitive_restart()
{
- glPrimitiveRestartNV=reinterpret_cast<PFNGLPRIMITIVERESTARTNVPROC>(get_proc_address("glPrimitiveRestartNV"));
- glPrimitiveRestartIndexNV=reinterpret_cast<PFNGLPRIMITIVERESTARTINDEXNVPROC>(get_proc_address("glPrimitiveRestartIndexNV"));
+ glPrimitiveRestartNV = reinterpret_cast<PFNGLPRIMITIVERESTARTNVPROC>(get_proc_address("glPrimitiveRestartNV"));
+ glPrimitiveRestartIndexNV = reinterpret_cast<PFNGLPRIMITIVERESTARTINDEXNVPROC>(get_proc_address("glPrimitiveRestartIndexNV"));
}
} // namespace GL
PrimitiveType get_type() const;
protected:
virtual void vertex_(const Vector4 &);
- virtual void begin_() =0;
- virtual void end_() =0;
- virtual void element_(unsigned) =0;
+ virtual void begin_() = 0;
+ virtual void end_() = 0;
+ virtual void element_(unsigned) = 0;
};
} // namespace GL
public:
virtual ~Uniform() { }
- virtual void apply(int) const =0;
- virtual Uniform *clone() const =0;
+ virtual void apply(int) const = 0;
+ virtual Uniform *clone() const = 0;
};