Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2008-08-27Apricot Branch: bugfix for crash in shadow buffer renderingBrecht Van Lommel
combined with the shadow option for texfaces.
2008-08-19Apricot Branch: two bugfixes for issues with game engine drawBrecht Van Lommel
state switching textures and object color, showed as flickering.
2008-08-18Apricot BranchBrecht Van Lommel
============== * Added support for the realtime image "Anim" option for GLSL textures. Note that "Tiles" is not supported, i.e. it doesn't scale the texture for you, but that may even be desirable. * Further there was some refactoring to remove duplicated and unused opengl texture code for GLSL.
2008-08-13Apricot BranchBrecht Van Lommel
============== Various cleanups and optimizations in the game engine: * Remove some duplication in the RAS_RenderTools, and sync the blender and game player versions. Also avoid some opengl state changes. * Don't make separate materials for triangles and quads, this distinction was moved to the mesh level. Also don't take some other irrelevant tface settings into account to avoid making more materials. * Refactoring of mesh storage, should fix wrong normals on meshes that are reused. It also allows for joining together nearby meshes for speed, though that's disabled still because it doesn't work together correct yet with ome features. * Added a distinction for game objects to be either culled or set invisible, previously there was only one flag, which couldn't work correct. * For parenting to bones, where_is_pose was executed multiple times per frame, now should be once per armature. * Fix uninitialized intertia value in the physics system. * Various warning fixes. * Removed some conditionals in GLSL and other minor optimizations in the code. Also cache opengl uniform locations, and fix an invalid memory read. * Avoid doing some math for GLSL lamps if it is not required.
2008-07-24Apricot Branch: GLSLBrecht Van Lommel
==================== * Added ObColor support, though it works different than for TexFaces. It used a new ObColor option in the materials, which will modulate the final color/alpha with the object color and alpha, also works in the render engine. * Made GLSL check the ZTransp flag. A material is now only drawn transparent if this flag is enabled, a bit more consistent with the render engine. * Fix for bug #17359: crash related subsurf + editmode GLSL.
2008-07-16Apricot: GLSLBrecht Van Lommel
============= * Moved GLSL setting switching functions into the game engine python API so they work in the blender player, and can do better state switching. * Also fixes bug #17331, error compiling with cmake. * For the makers of test builds: it would be great if builds of this revision or newer for various platforms could be made available. We want to release a file to test and benchmark GLSL on different graphics cards, and we need test builds for this. Thanks!
2008-07-16Apricot BranchBrecht Van Lommel
============== * Made in game switching of GLSL options work. There is still a one frame flicker that needs to be fixed. * Added access to the estimated average framerate in the game engine: GameLogic.getAverageFrameRate(). * Added acces to the blender build info from python: Blender.Get("buildinfo") * Various GLSL optimizations to allow more constant folding in the glsl compiler, use glsl shadow functions to do shadow, instead of own code, and fix an issue with opengl texture color range.
2008-07-15Apricot: GLSLBrecht Van Lommel
============= * Added options to disable lights, shaders, shadows, ramps, nodes and textures other than col/alpha for GLSL, in the Game menu. * These have python access too to switch them in game, but it doesn't work correct yet with display lists enabled. * Fix issue with light lagging behind, debug stats drawing in wrong color, and a number of other small fixes.
2008-07-09Apricot Branch: GLSLBrecht Van Lommel
==================== * Some optimizations in the glsl shader code to avoid some matrix multiplications, and other floating point ops. * Optimized game engine mesh deforming code a bit, and removed a bunch of unneeded/duplicated code. * Fix for bugs #17289 and #17295, glsl compile errors.
2008-07-07Apricot Branch: two minor optimizations to avoid unneeded shaderBrecht Van Lommel
and opengl light state changes.
2008-06-21Apricot Branch: GLSLBrecht Van Lommel
==================== * Added initial support for shadow buffers, works in the 3d view and the game engine, but has known issues still: * Shadow buffers are made again for each 3d viewport unnecessarily. * No filtering. * There was a bug with some shaders going black, but can't reproduce it anymore? * Added support for layer lamps, though they're still always computed in the shader, this needs to be optimized. * Added support for animating lamp position/rotation in the game engine. * Fix issue with lamps giving negative light on the backside. * Fix issue with specular + orthographic camera. * Fix square spotlights. * Potential workaround for a bug in the nvidia drivers with shader linking.
2008-06-18Apricot Branch: issue in last commit with disabling/enabling GLSLBrecht Van Lommel
shaders, now it remembers the last one, should be more reliable.
2008-06-18Apricot Branch: GLSLBrecht Van Lommel
==================== * GLSL in the game engine now uses the second uv layer too.
2008-06-16Apricot BranchBrecht Van Lommel
============== Refactoring of the use of opengl extensions and other drawing code in the game engine, and cleaning up some hacks related to GLSL integration. These changes will be merged into trunk too after this. The game engine graphics demos & apricot level survived my tests, but this could use some good testing of course. For uses: please test with the options "Generate Display Lists" and "Vertex Arrays" enabled, these should be the fastest and are supposed to be "unreliable", but if that's the case that's probably due to bugs that can be fixed. * The game engine now also uses GLEW for extensions, replacing the custom opengl extensions code that was there. This means also that all extensions will now always be compiled in, regardless of the glext.h on the platform where compilation happens. Removes a lot of #ifdef's, but the runtime checks stay of course. * Removed the WITHOUT_GLEXT environment variable. This was added to work around a specific bug and only disabled multitexturing anyway. It might also have caused a slowdown since it was retrieving the environment variable for every vertex in immediate mode (bug #13680). * Refactored the code to allow drawing skinned meshes with vertex arrays too, removing some specific immediate mode drawing functions for this that only did extra normal calculation. Now it always splits vertices of flat faces instead. * Refactored normal recalculation with some minor optimizations, required for the above change. * Removed some outdated code behind the __NLA_OLDDEFORM #ifdef. * Fixed various bugs in setting of multitexture coordinates and vertex attributes for vertex arrays. These were not being enabled/disabled correct according to the opengl spec, leading to crashes. Also tangent attributes used an immediate mode call for vertex arrays, which can't work. * Fixed use of uninitialized variable in RAS_TexVert. * Also in the GLSL shaders, removed conditional returns since some graphics cards don't support this. And fix a bug with orco's not being created in textured mode.
2008-06-15Apricot Branch:Brecht Van Lommel
Some optimizations to decrease game engine startup time: * Exporting skinned meshes was doing O(n^2) lookups for vertices and deform weights, now uses same trick as regular meshes. * Share GLSL shaders with the game engine so they don't have to be recompiled. This required changes to the rasterization in the game engine to add an option to use attributes instead of texture coordinates. * Some small optimizations in bullet BVH building, though could be improved more, since it takes about 50% of startup time still in my test .blend.
2008-06-14Apricot Branch: GLSLBrecht Van Lommel
==================== * Added support for lamps and shaders. All material diffuse and specular shaders are supported, for lamps especially area light support is not there yet. * Added support for these GLSL shaders in the game engine, though it is incomplete and somewhat of a hack. Specifically all the variables are completely static, which means moving lights, or animating material properties will not work. * Enabling GLSL shaders is now different. They work in textured drawmode, and can be enabled in the Game menu with the option "Blender GLSL Materials" Known issues: * The GLSL shaders don't always update correct on light changes. * The game player appears to crash with these GLSL shaders, while regular blender works fine.