Revision: 14539 http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=14539 Author: blendix Date: 2008-04-24 22:21:33 +0200 (Thu, 24 Apr 2008)
Log Message: ----------- Apricot Branch: material GLSL shaders ===================================== - Currently only supports node-based materials, with some nodes, main purpose of this commit is to get the infrastructure in place, more material options will be added in the following weeks. - Supported shader nodes: camera, curves, geometry (everything except global and front/back), curves (partially), huesatval, invert, mapping, math, mix/add/mult/sub/div, math, vector math, normal, output, rgb, separate/combine rgb, squeeze, basic image textures, value and output. - Lights and shaders are still missing, but since the SoC project had these working quite far it should be possible to reuse that code. - Enable using "GL Shaded Mode" in the user preferences. It will replace regular shaded mode with glsl shaders. - If the material is not node based or has an error in it, it will revert to solid shading. Need to do this kind of error handling better and make it posssible to still run even with some functionality not supported. - Integration with texture loading in textured mode is very poor, needs to be revised. - Only added support for Scons and Makefiles. - Added GLEW in extern/. There were some conflicts with the game engine opengl extensions but managed to solve them. Still, it would be good to use single mechanism for opengl extensions. - Added a "gpu" module in source/blender. It has quite a lot of code with much of it uncommented as well, some of that will become used and some it will be removed later. - OpenGL shader code is currently converted to a C file with datatoc (which now 0-terminates the arrays), but this has to be done manually still, need to figure out a better way or integrate it into the build systems. Modified Paths: -------------- branches/apricot/extern/Makefile branches/apricot/extern/SConscript branches/apricot/release/datafiles/datatoc.c branches/apricot/source/Makefile branches/apricot/source/blender/Makefile branches/apricot/source/blender/SConscript branches/apricot/source/blender/blenkernel/BKE_DerivedMesh.h branches/apricot/source/blender/blenkernel/BKE_node.h branches/apricot/source/blender/blenkernel/SConscript branches/apricot/source/blender/blenkernel/intern/DerivedMesh.c branches/apricot/source/blender/blenkernel/intern/Makefile branches/apricot/source/blender/blenkernel/intern/cdderivedmesh.c branches/apricot/source/blender/blenkernel/intern/image.c branches/apricot/source/blender/blenkernel/intern/material.c branches/apricot/source/blender/blenkernel/intern/node.c branches/apricot/source/blender/blenkernel/intern/subsurf_ccg.c branches/apricot/source/blender/blenloader/intern/readfile.c branches/apricot/source/blender/include/BDR_drawobject.h branches/apricot/source/blender/include/BIF_gl.h branches/apricot/source/blender/makesdna/DNA_image_types.h branches/apricot/source/blender/makesdna/DNA_material_types.h branches/apricot/source/blender/makesdna/DNA_userdef_types.h branches/apricot/source/blender/nodes/SConscript branches/apricot/source/blender/nodes/intern/CMP_nodes/Makefile branches/apricot/source/blender/nodes/intern/Makefile branches/apricot/source/blender/nodes/intern/SHD_nodes/Makefile branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_camera.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_curves.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_dynamic.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_geom.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_hueSatVal.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_invert.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_mapping.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_material.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_math.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_mixRgb.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_normal.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_output.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_rgb.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_sepcombRGB.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_squeeze.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_texture.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_valToRgb.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_value.c branches/apricot/source/blender/nodes/intern/SHD_nodes/SHD_vectMath.c branches/apricot/source/blender/nodes/intern/SHD_util.h branches/apricot/source/blender/python/SConscript branches/apricot/source/blender/python/api2_2x/Makefile branches/apricot/source/blender/radiosity/SConscript branches/apricot/source/blender/radiosity/intern/source/Makefile branches/apricot/source/blender/src/Makefile branches/apricot/source/blender/src/SConscript branches/apricot/source/blender/src/buttons_shading.c branches/apricot/source/blender/src/drawmesh.c branches/apricot/source/blender/src/drawobject.c branches/apricot/source/blender/src/previewrender.c branches/apricot/source/blender/src/sculptmode.c branches/apricot/source/blender/src/space.c branches/apricot/source/blender/src/usiblender.c branches/apricot/source/blender/yafray/SConscript branches/apricot/source/creator/Makefile branches/apricot/source/creator/SConscript branches/apricot/source/gameengine/BlenderRoutines/KX_BlenderGL.cpp branches/apricot/source/gameengine/BlenderRoutines/Makefile branches/apricot/source/gameengine/BlenderRoutines/SConscript branches/apricot/source/nan_definitions.mk Added Paths: ----------- branches/apricot/extern/glew/ branches/apricot/extern/glew/ChangeLog branches/apricot/extern/glew/README.txt branches/apricot/extern/glew/SConscript branches/apricot/extern/glew/doc/ branches/apricot/extern/glew/doc/advanced.html branches/apricot/extern/glew/doc/basic.html branches/apricot/extern/glew/doc/credits.html branches/apricot/extern/glew/doc/glew.css branches/apricot/extern/glew/doc/glew.html branches/apricot/extern/glew/doc/glx.txt branches/apricot/extern/glew/doc/glxew.html branches/apricot/extern/glew/doc/gpl.txt branches/apricot/extern/glew/doc/index.html branches/apricot/extern/glew/doc/install.html branches/apricot/extern/glew/doc/log.html branches/apricot/extern/glew/doc/sgi.txt branches/apricot/extern/glew/doc/wglew.html branches/apricot/extern/glew/include/ branches/apricot/extern/glew/include/GL/ branches/apricot/extern/glew/include/GL/glew.h branches/apricot/extern/glew/include/GL/glxew.h branches/apricot/extern/glew/include/GL/wglew.h branches/apricot/extern/glew/src/ branches/apricot/extern/glew/src/Makefile branches/apricot/extern/glew/src/glew.c branches/apricot/source/blender/gpu/ branches/apricot/source/blender/gpu/GPU_extensions.h branches/apricot/source/blender/gpu/GPU_material.h branches/apricot/source/blender/gpu/GPU_node.h branches/apricot/source/blender/gpu/Makefile branches/apricot/source/blender/gpu/SConscript branches/apricot/source/blender/gpu/intern/ branches/apricot/source/blender/gpu/intern/Makefile branches/apricot/source/blender/gpu/intern/gpu_codegen.c branches/apricot/source/blender/gpu/intern/gpu_codegen.h branches/apricot/source/blender/gpu/intern/gpu_composite.c branches/apricot/source/blender/gpu/intern/gpu_extensions.c branches/apricot/source/blender/gpu/intern/gpu_material.c branches/apricot/source/blender/gpu/intern/gpu_nodes.c branches/apricot/source/blender/gpu/intern/gpu_nodes.h branches/apricot/source/blender/gpu/intern/gpu_temp.glsl branches/apricot/source/blender/gpu/intern/material_shaders.glsl branches/apricot/source/blender/gpu/intern/material_shaders.glsl.c branches/apricot/source/blender/gpu/intern/material_vertex_shader.glsl branches/apricot/source/blender/gpu/intern/material_vertex_shader.glsl.c Modified: branches/apricot/extern/Makefile =================================================================== --- branches/apricot/extern/Makefile 2008-04-24 20:10:01 UTC (rev 14538) +++ branches/apricot/extern/Makefile 2008-04-24 20:21:33 UTC (rev 14539) @@ -30,7 +30,7 @@ SOURCEDIR = extern DIR = $(OCGDIR)/extern -DIRS = qhull/src solid +DIRS = qhull/src solid glew/src ifeq ($(WITH_FREETYPE2), true) DIRS += bFTGL/src Modified: branches/apricot/extern/SConscript =================================================================== --- branches/apricot/extern/SConscript 2008-04-24 20:10:01 UTC (rev 14538) +++ branches/apricot/extern/SConscript 2008-04-24 20:21:33 UTC (rev 14539) @@ -2,6 +2,8 @@ Import('env') +SConscript(['glew/SConscript']) + if env['WITH_BF_GAMEENGINE']: SConscript(['qhull/SConscript', 'solid/SConscript']) Added: branches/apricot/extern/glew/ChangeLog =================================================================== --- branches/apricot/extern/glew/ChangeLog (rev 0) +++ branches/apricot/extern/glew/ChangeLog 2008-04-24 20:21:33 UTC (rev 14539) @@ -0,0 +1,1703 @@ +2005-05-16 00:35 ikits + + * auto/src/template.html, doc/advanced.html, doc/basic.html, + doc/credits.html, doc/index.html, doc/install.html, doc/log.html: + getting ready for the release + +2005-05-16 00:14 ikits + + * auto/Makefile: Added option for splitting the source into + multiple files + +2005-05-16 00:13 ikits + + * auto/bin/update_ext.sh: Fixed GL_ARB_transpose_matrix bug + +2005-04-22 18:47 ikits + + * auto/: bin/update_ext.sh, core/GL_VERSION_2_0: fixed bugs 1185517 + and 1182116 + +2005-04-04 23:49 ikits + + * auto/src/: glew_head.c, glew_init_gl.c: fix for OGL 2.0 problem + +2005-03-16 21:49 ikits + + * config/version: bump version number + +2005-03-16 21:48 ikits + + * auto/src/glew_init_gl.c: minor issue + +2005-03-16 21:04 ikits + + * doc/advanced.html, doc/basic.html, doc/credits.html, + doc/index.html, doc/install.html, doc/log.html, + auto/src/template.html: getting ready for the release + +2005-03-16 20:49 ikits + + * ChangeLog: it's that time again + +2005-03-16 20:48 ikits + + * TODO.txt: fix it when there is time + +2005-03-16 20:45 ikits + + * auto/src/glew_init_gl.c: added check for crippled hardware + +2005-03-14 23:50 ikits + + * auto/src/template.html: documentation update + +2005-03-14 23:38 ikits + + * doc/log.html: update log + +2005-03-14 23:24 ikits + + * TODO.txt: done + +2005-03-14 23:21 ikits + + * doc/: advanced.html, basic.html, credits.html, index.html, + install.html, log.html, glew.css: changes for html 4.01 + compliance + +2005-03-14 00:13 ikits + + * TODO.txt: oops + +2005-03-14 00:10 ikits + + * TODO.txt: some more + +2005-03-14 00:08 ikits + + * TODO.txt: the road ahead + +2005-03-14 00:00 ikits + + * config/: Makefile.mingw, Makefile.mingw32: fixed bug #1161790 + +2005-03-13 23:09 ikits + + * auto/core/: GL_APPLE_pixel_buffer, GL_EXT_framebuffer_object, + GL_SGIX_shadow: cleanup and bug fixes; thanks to Stephane for + these + +2005-02-05 02:17 ikits + + * auto/core/GL_VERSION_2_0: fixed bug 1116569 + +2005-02-03 00:25 ikits + + * ChangeLog: version bump + +2005-02-03 00:21 ikits + + * config/version: version bump + +2005-02-03 00:13 ikits + + * doc/log.html: oops + +2005-02-02 23:28 ikits + + * doc/index.html: added reference + +2005-02-02 22:49 ikits + + * doc/install.html: ready for release + +2005-02-02 22:34 ikits + + * auto/Makefile, auto/src/template.html, doc/advanced.html, + doc/basic.html, doc/credits.html, doc/glew.css, doc/index.html, + doc/install.html, doc/log.html: prepare for release + +2005-01-30 17:26 ikits + + * doc/advanced.html, doc/basic.html, doc/credits.html, + doc/index.html, doc/install.html, doc/log.html, + auto/src/template.html: , + +2005-01-30 17:12 ikits + + * doc/install.html: corrected VS.NET install location + +2005-01-30 01:46 ikits + + * auto/src/: glew.rc, glewinfo.rc, visualinfo.rc: added description + fields + +2005-01-30 01:35 ikits + + * ChangeLog, doc/log.html: update logs + +2005-01-29 20:48 ikits + + * auto/Makefile, auto/src/glew.rc, auto/src/glewinfo.rc, + auto/src/visualinfo.rc, build/vc6/glew_shared.dsp, + build/vc6/glew_static.dsp, build/vc6/glewinfo.dsp, + build/vc6/visualinfo.dsp: added resource files for win32 + versioning + +2005-01-29 18:39 ikits + + * config/version: changed versioning to make it easier to follow + +2005-01-29 11:59 ikits + + * auto/src/glew_head.h: fix borland compilation problem + +2005-01-28 23:36 ikits + + * auto/bin/parse_spec.pl: fixed GLhalf bug + +2005-01-21 09:04 ikits + + * auto/core/GL_EXT_framebuffer_object: ubercomplete + +2005-01-20 19:53 ikits + + * auto/core/GL_VERSION_2_0: fixed bugs + +2005-01-11 18:03 mem + + * auto/lib/OpenGL/Spec.pm: Clean up a little + +2005-01-11 15:40 mem + + * auto/lib/OpenGL/Spec.pm: Modularized parser + +2005-01-06 01:53 ikits + + * doc/: advanced.html, basic.html, credits.html, index.html, + install.html, log.html, ogl_sm.jpg, new.png: sync up webpage and + docs + +2005-01-06 01:26 ikits + + * TODO.txt: one more item + +2005-01-06 01:25 ikits + + * auto/bin/update_ext.sh: fixed GLhandleARB + +2005-01-05 15:37 mem + + * config/version: Forgot to bump GLEW version + +2005-01-05 15:35 mem + + * TODO.txt: Expanded TODO item about autoinitialization + +2005-01-05 15:27 mem + + * ChangeLog: Added ChangeLog. The file is generated with cvs2cl. + +2005-01-05 15:19 mem + + * Makefile, auto/Makefile, config/Makefile.darwin, + config/Makefile.freebsd, config/Makefile.irix, + config/Makefile.linux, config/Makefile.solaris, config/version: + Fix soname, ABI broke + +2005-01-04 20:55 ikits + + * doc/gpl.txt: documentation update + +2005-01-04 20:32 ikits + + * doc/index.html: documentation update + +2005-01-04 20:17 ikits + + * doc/glew.css: documentation update + +2005-01-04 20:10 ikits + + * auto/src/template.html, doc/README.html, doc/advanced.html, + doc/basic.html, doc/credits.html, doc/index.html, + doc/install.html, doc/log.html: documentation update + +2005-01-04 20:01 ikits + + * README.txt, auto/src/template.html, doc/glew.css: documentation + update + +2005-01-04 10:02 ikits + + * auto/src/glew_head.c: bug fixes + +2005-01-04 01:00 ikits + + * auto/src/template.html: web crap + +2005-01-04 00:30 ikits + + * auto/: bin/make_str.pl, src/glew_head.c, src/glew_str_glx.c, + src/glew_str_head.c, src/glew_str_tail.c, src/glew_str_wgl.c, + src/glew_utils.c, src/glew_utils.h: extended glewIsSupported + +2005-01-03 23:17 ikits + + * config/: Makefile.solaris, Makefile.sunos: makefile fixes + +2005-01-03 23:11 ikits + + * Makefile, config/Makefile.cygwin, config/Makefile.mingw32: + makefile fixes + +2005-01-03 22:57 ikits + + * Makefile, config/Makefile.darwin: added darwin makefile + +2005-01-03 22:29 ikits + + * auto/: Makefile, bin/make_info.pl, bin/make_list.pl, + bin/make_str.pl: bug fixes + +2005-01-03 22:05 ikits + + * auto/: Makefile, bin/make_init.pl, src/glew_head.c, + src/glew_utils.c, src/glew_utils.h: bug fixes + +2005-01-03 02:32 ikits + + * Makefile, TODO.txt, auto/Makefile, + auto/bin/fix_OML_sync_control.sh, auto/bin/make.pl, + auto/bin/make_def_fun.pl, auto/bin/make_def_var.pl, + auto/bin/make_header.pl, auto/bin/make_html.pl, + auto/bin/make_info.pl, auto/bin/make_info_list.pl, + auto/bin/make_init.pl, auto/bin/make_list.pl, + auto/bin/make_str.pl, auto/bin/make_struct_fun.pl, + auto/bin/make_struct_var.pl, auto/bin/parse_spec.pl, + auto/bin/update_ext.sh, auto/bin/update_registry.sh, + auto/src/glew_head.html, auto/src/glew_tail.html, + auto/src/glxew_head.html, auto/src/wglew_head.html, + auto/src/wglew_tail.html, src/visualinfo.c: Year bump in + copyright message. Removed obsolete files from auto/src. + +2005-01-03 02:09 ikits + + * build/vc6/: glew_shared.dsp, glew_static.dsp: Single file now + compiles with VC71. Kept multi-file split for future use. + +2005-01-03 02:05 ikits + + * auto/Makefile, auto/bin/make_header.pl, auto/bin/make_html.pl, + auto/src/glew_gl_fun.c, auto/src/glew_gl_head.c, + auto/src/glew_gl_init.c, auto/src/glew_gl_tail.c, + auto/src/glew_gl_var.c, auto/src/glew_glx_fun.c, + auto/src/glew_glx_head.c, auto/src/glew_glx_init.c, + auto/src/glew_glx_tail.c, auto/src/glew_glx_var.c, + auto/src/glew_head.c, auto/src/glew_head.h, + auto/src/glew_init_gl.c, auto/src/glew_init_glx.c, + auto/src/glew_init_tail.c, auto/src/glew_init_wgl.c, + auto/src/glew_license.h, auto/src/glew_str_head.c, + auto/src/glew_utils.c, auto/src/glew_utils.h, + auto/src/glew_wgl_head.c, auto/src/glew_wgl_init.c, + auto/src/glew_wgl_tail.c, auto/src/glew_wgl_var.c, + auto/src/glewinfo_head.c, auto/src/glx_license.h, + auto/src/glxew_head.h, auto/src/sgi_license.h, + auto/src/template.html, auto/src/wglew_head.h, + build/vc6/glew_shared.dsp, build/vc6/glew_static.dsp, + src/glew_utils.c, src/glew_utils.h: Single file now compiles with + VC71. Kept multi-file split for future use. + +2004-12-31 03:49 ikits + + * auto/Makefile, auto/bin/make_def_fun.pl, + auto/bin/make_def_var.pl, auto/bin/make_header.pl, + auto/bin/make_html.pl, auto/bin/make_info.pl, + auto/bin/make_info_list.pl, auto/bin/make_init.pl, + auto/bin/make_list.pl, auto/bin/make_str.pl, + auto/bin/make_struct_fun.pl, auto/bin/make_struct_var.pl, + auto/custom.txt, TODO.txt: added customized subset selection + +2004-12-29 22:11 ikits + + * auto/src/glew_tail.h: added longer alias + +2004-12-29 22:05 ikits + + * auto/core/GL_VERSION_2_0: bug fixes + +2004-12-29 21:59 ikits + + * auto/core/GL_VERSION_2_0: added core 2.0 spec file + +2004-12-29 02:45 ikits + + * auto/core/WGL_ATI_render_texture_rectangle: the drivers seem to + support it; no public spec yet, though + +2004-12-29 02:22 ikits + + * auto/Makefile, auto/src/glew_gl_head.c, auto/src/glew_gl_tail.c, + auto/src/glew_glx_head.c, auto/src/glew_glx_init.c, + auto/src/glew_glx_tail.c, auto/src/glew_str_glx.c, + auto/src/glew_str_tail.c, auto/src/glew_str_wgl.c, + auto/src/glxew_tail.h, auto/src/wglew_tail.h, build/vc6/Makefile, + build/vc6/glew_shared.dsp, build/vc6/glew_static.dsp, + auto/bin/make_def.pl, auto/bin/make_def_fun.pl, + auto/bin/make_def_var.pl, auto/src/glew_gl_fun.c, + auto/src/glew_gl_var.c, auto/src/glew_glx_fun.c, + auto/src/glew_glx_var.c, auto/src/glew_wgl_var.c: fixed problems + with mx builds; update project files + +2004-12-29 00:42 ikits + @@ Diff output truncated at 10240 characters. @@ _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org http://lists.blender.org/mailman/listinfo/bf-blender-cvs