diff --git a/doc/makepanda/makepanda.py b/doc/makepanda/makepanda.py index 87bc70c749..fd6eef4085 100755 --- a/doc/makepanda/makepanda.py +++ b/doc/makepanda/makepanda.py @@ -37,7 +37,7 @@ VERBOSE=1 COMPRESSOR="zlib" PACKAGES=["PYTHON","ZLIB","PNG","JPEG","TIFF","VRPN","FMOD","NVIDIACG","HELIX","NSPR", "OPENSSL","FREETYPE","FFTW","MILES","MAYA5","MAYA6","MAYA65","MAX5","MAX6","MAX7", - "BISON","FLEX","PANDATOOL","PANDAAPP"] + "BISON","FLEX","OPENCV","PANDATOOL","PANDAAPP"] OMIT=PACKAGES[:] WARNINGS=[] DIRECTXSDK = None @@ -617,6 +617,17 @@ if (OMIT.count("HELIX")==0): WARNINGS.append("I have automatically added this command-line option: --no-helix") OMIT.append("HELIX") +########################################################################################## +# +# Disable OpenCV under linux. +# +########################################################################################## + +if (OMIT.count("OPENCV")==0): + WARNINGS.append("OPENCV doesn't work yet") + WARNINGS.append("I have automatically added this command-line option: --no-opencv") + OMIT.append("OPENCV") + ########################################################################################## # # See if there's a "MILES" subdirectory under 'thirdparty' @@ -1370,6 +1381,9 @@ def CompileLinkMSVC7(wdll, wlib, wobj, opts, dll, ldef): cmd = cmd + ' "' + MAXSDK[max] + '/lib/mesh.lib"' cmd = cmd + ' "' + MAXSDK[max] + '/lib/maxutil.lib"' cmd = cmd + ' "' + MAXSDK[max] + '/lib/paramblk2.lib"' + if (PkgSelected(opts,"OPENCV")): + cmd = cmd + " /LIBPATH:thirdparty/win-libs-vc7/opencv/lib" + cmd = cmd + " cv.lib cxcore.lib cvaux.lib trs.lib highgui.lib" oscmd(cmd) def CompileLinkLINUXA(wdll, obj, wobj, opts, dll, ldef): @@ -1699,6 +1713,7 @@ DTOOLDEFAULTS=[ ("HAVE_NET", 'UNDEF', 'UNDEF'), ("HAVE_CG", 'UNDEF', 'UNDEF'), ("HAVE_CGGL", 'UNDEF', 'UNDEF'), + ("HAVE_OPENCV", 'UNDEF', 'UNDEF'), ] def CalculateDtoolConfig(): @@ -2416,7 +2431,7 @@ EnqueueIgate(ipath=IPATH, opts=OPTS, outd='libtext.in', obj='libtext_igate.obj', # IPATH=['panda/src/grutil'] -OPTS=['BUILDING_PANDA', 'NSPR'] +OPTS=['BUILDING_PANDA', 'NSPR', 'OPENCV'] CopyAllHeaders('panda/src/grutil') EnqueueCxx(ipath=IPATH, opts=OPTS, src='multitexReducer.cxx', obj='grutil_multitexReducer.obj') EnqueueCxx(ipath=IPATH, opts=OPTS, src='grutil_composite.cxx', obj='grutil_composite.obj') @@ -2551,7 +2566,7 @@ CopyAllHeaders('panda/src/wgldisplay') CopyAllHeaders('panda/src/physics') CopyAllHeaders('panda/src/particlesystem') IPATH=['panda/metalibs/panda'] -OPTS=['BUILDING_PANDA', 'ZLIB', 'VRPN', 'JPEG', 'PNG', 'TIFF', 'NSPR', 'FREETYPE', 'HELIX', 'FFTW', +OPTS=['BUILDING_PANDA', 'ZLIB', 'VRPN', 'JPEG', 'PNG', 'TIFF', 'NSPR', 'FREETYPE', 'HELIX', 'FFTW', 'OPENCV', 'ADVAPI', 'WINSOCK2', 'WINUSER', 'WINMM'] INFILES=['librecorder.in', 'libpgraph.in', 'libgrutil.in', 'libchan.in', 'libpstatclient.in', 'libchar.in', 'libcollide.in', 'libdevice.in', 'libdgraph.in', 'libdisplay.in', 'libevent.in', diff --git a/panda/src/glstuff/glShaderContext_src.cxx b/panda/src/glstuff/glShaderContext_src.cxx index 78afc6695d..0da1c46364 100755 --- a/panda/src/glstuff/glShaderContext_src.cxx +++ b/panda/src/glstuff/glShaderContext_src.cxx @@ -287,7 +287,12 @@ update_shader_vertex_arrays(CLP(ShaderContext) *prev, GSG *gsg) gsg->_state._texture->get_on_stages(); if (texslot < (int)active_stages.size()) { TextureStage *stage = active_stages[texslot]; - name = name->append(stage->get_texcoord_name()->get_name()); + InternalName *texname = stage->get_texcoord_name(); + if (name == InternalName::get_texcoord()) { + name = texname; + } else if (texname != InternalName::get_texcoord()) { + name = name->append(texname->get_basename()); + } } } if (gsg->_vertex_data->get_array_info(name, @@ -696,7 +701,7 @@ compile_cg_parameter(CGparameter p) return true; } if (pieces[1].substr(0,8)=="texcoord") { - bind.name = InternalName::get_root(); + bind.name = InternalName::get_texcoord(); bind.append_uv = atoi(pieces[1].c_str()+8); _cg_varying.push_back(bind); return true;