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
2016-10-21Merge remote-tracking branch 'origin/blender2.8' into pbr-mergeDalai Felinto
Conflicts: source/blender/blenloader/intern/versioning_defaults.c source/blender/editors/space_view3d/drawobject.c source/blender/editors/space_view3d/space_view3d.c source/blender/editors/space_view3d/view3d_draw.c source/blender/gpu/CMakeLists.txt source/blender/gpu/GPU_framebuffer.h source/blender/gpu/GPU_material.h source/blender/gpu/GPU_shader.h source/blender/gpu/intern/gpu_codegen.c source/blender/gpu/intern/gpu_draw.c source/blender/gpu/intern/gpu_framebuffer.c source/blender/gpu/intern/gpu_material.c source/blender/gpu/intern/gpu_shader.c source/blender/makesdna/DNA_view3d_types.h
2016-10-20Merge remote-tracking branch 'origin/master' into pbr-mergeDalai Felinto
Conflicts: source/blender/editors/space_view3d/view3d_draw.c
2016-10-20Merge commit '2b240b0430787814316f3b3166453c6d85b017f3' into pbr-mergeDalai Felinto
Conflicts: release/datafiles/splash.png release/datafiles/splash_2x.png source/blender/gpu/CMakeLists.txt source/blender/gpu/intern/gpu_shader.c
2016-10-20Merge commit '7830ec54186e8b05a366775e02c6457eb83814a3' into pbr-mergeDalai Felinto
Conflicts: source/blender/nodes/shader/nodes/node_shader_texture.c
2016-10-20Merge commit '9269574089a742130f02c0a1184a19d94f0e665d' into pbr-onlineDalai Felinto
Merge conflicts fixes include fix on ob->reflectionplane for write and read, and a few manual fixes to account for the ID remap changes Conflicts: source/blender/blenkernel/intern/object.c source/blender/blenkernel/intern/world.c source/blender/blenloader/intern/writefile.c source/blender/editors/space_view3d/view3d_draw.c source/blender/gpu/GPU_draw.h source/blender/gpu/intern/gpu_draw.c source/blender/gpu/intern/gpu_material.c source/blender/gpu/intern/gpu_texture.c source/blender/gpu/shaders/gpu_shader_vertex_world.glsl
2016-10-10BGE: remove calls to GLSL support query (it's always supported)Mike Erwin
Reworked logic in the few places that still called this. Deleted the "GLSL not supported" fallbacks. Also removed some nearby checks for ARB_multitexture and OpenGL 1.1. Blender 2.77 removed checks like this, but game engine still has some.
2016-10-10BGE: remove calls to GLSL support query (it's always supported)Mike Erwin
Reworked logic in the few places that still called this. Deleted the "GLSL not supported" fallbacks. Also removed some nearby checks for ARB_multitexture and OpenGL 1.1. Blender 2.77 removed checks like this, but game engine still has some.
2016-08-21Merge branch 'master' into blender2.8Bastien Montagne
In addition to pack of conflicts listed below, also had to comment out particle part of new Alembic code... :/ Conflicts: intern/ghost/intern/GHOST_WindowWin32.cpp source/blender/blenkernel/BKE_effect.h source/blender/blenkernel/BKE_pointcache.h source/blender/blenkernel/intern/cloth.c source/blender/blenkernel/intern/depsgraph.c source/blender/blenkernel/intern/dynamicpaint.c source/blender/blenkernel/intern/effect.c source/blender/blenkernel/intern/particle_system.c source/blender/blenkernel/intern/pointcache.c source/blender/blenkernel/intern/rigidbody.c source/blender/blenkernel/intern/smoke.c source/blender/blenkernel/intern/softbody.c source/blender/depsgraph/intern/builder/deg_builder_relations.cc source/blender/gpu/intern/gpu_debug.c source/blender/makesdna/DNA_object_types.h source/blender/makesrna/intern/rna_particle.c
2016-08-16More fixes from coverity report.Bastien Montagne
2016-08-06Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: release/scripts/startup/bl_ui/properties_particle.py release/scripts/startup/bl_ui/properties_physics_cloth.py release/scripts/startup/bl_ui/properties_physics_dynamicpaint.py release/scripts/startup/bl_ui/properties_physics_softbody.py source/blender/blenkernel/BKE_library.h source/blender/blenkernel/BKE_particle.h source/blender/blenkernel/intern/cloth.c source/blender/blenkernel/intern/library.c source/blender/blenkernel/intern/library_query.c source/blender/blenkernel/intern/particle_system.c source/blender/blenkernel/intern/scene.c source/blender/blenkernel/intern/softbody.c source/blender/blenloader/intern/readfile.c source/blender/blenloader/intern/versioning_270.c source/blender/editors/space_file/filesel.c source/blender/editors/space_outliner/outliner_intern.h source/blender/makesdna/DNA_ID.h source/blender/makesdna/DNA_object_force.h source/blender/makesdna/DNA_particle_types.h source/blender/makesrna/intern/rna_particle.c source/blender/makesrna/intern/rna_sculpt_paint.c source/blender/makesrna/intern/rna_smoke.c source/blender/makesrna/intern/rna_space.c
2016-07-31simplify redundant conditionalsMike Erwin
The redundant terms were harmless but check an expression we already know to be true (from earlier in the same conditional). Found by PVS-Studio T48917
2016-07-12Merge branch 'master' into blender2.8Bastien Montagne
Conflicts: intern/cycles/blender/addon/ui.py source/blender/blenkernel/BKE_particle.h source/blender/blenkernel/intern/dynamicpaint.c source/blender/blenkernel/intern/library.c source/blender/blenkernel/intern/object.c source/blender/blenkernel/intern/particle.c source/blender/blenkernel/intern/particle_distribute.c source/blender/blenkernel/intern/texture.c source/blender/editors/object/object_add.c source/blender/editors/object/object_relations.c source/blender/editors/physics/particle_edit.c source/blender/editors/physics/particle_object.c source/blender/editors/transform/transform_snap_object.c
2016-07-10Cleanup/Refactor: pass Main pointer to all ID copy functions.Bastien Montagne
Also allows us to get rid of a few _copy_ex() versions...
2016-06-21Merge branch 'master' into blender2.8Campbell Barton
2016-06-18Cleanup: style, whitespace, doxy filepathsCampbell Barton
2016-06-13Merge branch 'master' into blender2.8Campbell Barton
2016-06-11BL_Shader.setUniformEyef(name)Benoit Bolsee
defines a uniform that reflects the eye being rendered in stereo mode: 0.0 for the left eye, 0.5 for the right eye. In non stereo mode, the value of the uniform is fixed to 0.0. The typical use of this uniform is in stereo mode to sample stereo textures containing the left and right eye images in a top-bottom order. python: shader = obj.meshes[0].materials[mat].getShader() shader.setUniformEyef("eye") shader: uniform float eye; uniform sampler2D tex; void main(void) { vec4 color; float ty, tx; tx = gl_TexCoord[0].x; ty = eye+gl_TexCoord[0].y*0.5; // ty will be between 0 and 0.5 for the left eye render // and 0.5 and 1.0 for the right eye render. color = texture(tex, vec2(tx, ty)); ... }
2016-06-11BGE: Various render improvements.Benoit Bolsee
bge.logic.setRender(flag) to enable/disable render. The render pass is enabled by default but it can be disabled with bge.logic.setRender(False). Once disabled, the render pass is skipped and a new logic frame starts immediately. Note that VSync no longer limits the fps when render is off but the 'Use Frame Rate' option in the Render Properties still does. To run as many frames as possible, untick the option This function is useful when you don't need the default render, e.g. when doing offscreen render to an alternate device than the monitor. Note that without VSync, you must limit the frame rate by other means. fbo = bge.render.offScreenCreate(width,height,[,samples=0][,target=bge.render.RAS_OFS_RENDER_BUFFER]) Use this method to create an offscreen buffer of given size, with given MSAA samples and targetting either a render buffer (bge.render.RAS_OFS_RENDER_BUFFER) or a texture (bge.render.RAS_OFS_RENDER_TEXTURE). Use the former if you want to retrieve the frame buffer on the host and the latter if you want to pass the render to another context (texture are proper OGL object, render buffers aren't) The object created by this function can only be used as a parameter of the bge.texture.ImageRender() constructor to send the the render to the FBO rather than to the frame buffer. This is best suited when you want to create a render of specific size, or if you need an image with an alpha channel. bge.texture.<imagetype>.refresh(buffer=None, format="RGBA", ts=-1.0) Without arg, the refresh method of the image objects is pretty much a no-op, it simply invalidates the image so that on next texture refresh, the image will be recalculated. It is now possible to pass an optional buffer object to transfer the image (and recalculate it if it was invalid) to an external object. The object must implement the 'buffer protocol'. The image will be transfered as "RGBA" or "BGRA" pixels depending on format argument (only those 2 formats are supported) and ts is an optional timestamp in the image depends on it (e.g. VideoFFmpeg playing a video file). With this function you don't need anymore to link the image object to a Texture object to use: the image object is self-sufficient. bge.texture.ImageRender(scene, camera, fbo=None) Render to buffer is possible by passing a FBO object (see offScreenCreate). bge.texture.ImageRender.render() Allows asynchronous render: call this method to render the scene but without extracting the pixels yet. The function returns as soon as the render commands have been send to the GPU. The render will proceed asynchronously in the GPU while the host can perform other tasks. To complete the render, you can either call refresh() directly of refresh the texture to which this object is the source. Asynchronous render is useful to achieve optimal performance: call render() on frame N and refresh() on frame N+1 to give as much as time as possible to the GPU to render the frame while the game engine can perform other tasks. Support negative scale on camera. Camera scale was previously ignored in the BGE. It is now injected in the modelview matrix as a vertical or horizontal flip of the scene (respectively if scaleY<0 and scaleX<0). Note that the actual value of the scale is not used, only the sign. This allows to flip the image produced by ImageRender() without any performance degradation: the flip is integrated in the render itself. Optimized image transfer from ImageRender to buffer. Previously, images that were transferred to the host were always going through buffers in VideoTexture. It is now possible to transfer ImageRender images to external buffer without intermediate copy (i.e. directly from OGL to buffer) if the attributes of the ImageRender objects are set as follow: flip=False, alpha=True, scale=False, depth=False, zbuff=False. (if you need to flip the image, use camera negative scale)
2016-05-30Merge branch 'master' of git://git.blender.org/blenderClément Fukhaut
# Conflicts: # source/blender/gpu/intern/gpu_draw.c # source/blender/gpu/shaders/gpu_shader_material.glsl # source/blender/makesdna/DNA_view3d_types.h # source/blender/nodes/shader/nodes/node_shader_normal_map.c # source/blender/nodes/shader/nodes/node_shader_tex_environment.c # source/blender/nodes/shader/nodes/node_shader_tex_image.c # source/blender/nodes/shader/nodes/node_shader_tex_noise.c # source/blender/nodes/shader/nodes/node_shader_texture.c
2016-05-25Added ambient occlusion support in materialClément Fukhaut
Algorithm is slow but high quality Added backface buffer to compute per pixel thickness Sampling quality is passed via uniforms and not via constants : this is a little slower but it does not need to recompile shader every time Moved some code for organisation.
2016-05-06Huge codebase changes :Clément Fukhaut
- Made ssfx "module" to manage screen space effects applied at material stage - Moved probe functions to their own module - Divided Shading glsl file into bits that are gathered when making glsl_material_library making files shorter and more organized - Moved function generating luts and random texture to gpu_luts.c that will contains all textures needed to acheive some effects. - GPU_PBR in GPUBuiltin is just a placeholder to trigger the uniform binding Optimisation / correction : - GLSL : Number of bsdf sample is now passed via an uniform instead of a #define. This means changing quality settings will no longer recompute every shaders in the scene. But this has a small perf cost. - GLSL : Hammersley numbers are precalculated and stored inside a texture. This may have a performance impact and I will change it to a static table. - GLSL : Random per pixel numbers are done using a texture like SSAO. - GLSL : Lots of parameters (only for pbr) are now defined as uniform and passed at binding stage (this minimize the use of GPU_builtin). - GLSL : most variables used in sampling algorythm are defined as global variables. - Bsdf sampling is now using the real algorithm and not the split sum approximation (which was unecessary). Features : - Added toon shader support (only point light support). - Added holdout.
2016-05-03Implemented SSR :Clément Fukhaut
- Still pretty rough implementation does only works with sharp glossy shader - No Glossy reflection - 2 algorithm but only one acheive decent results the other needs to be debuged. Changed pbr settings location : - They are now stored in structs like the FX options
2016-04-28Merge branch 'master' into temp_remove_particlestemp_remove_particlesLukas Tönne
2016-04-25Refactor BKE_blender into separate headersCampbell Barton
- BKE_blender_version.h (only version defines & versionstr). - BKE_blender_copybuffer.h (currently only used for view3d copy/paste). - BKE_blender_undo.h (global undo functions). - BKE_blendfile.h (high level blend file read/write API).
2016-04-16Fixed some minor errors in game engine and player.Lukas Tönne
2016-04-11Merge branch 'master' of git://git.blender.org/blenderClément Fukhaut
# Conflicts: # source/blender/gpu/shaders/gpu_shader_material.glsl
2016-04-11BGE: Fix T48071: Global logic managerPorteries Tristan
Previously the logic manager was used as a global variable for SCA_ILogicBrick::m_sCurrentLogicManager, this request to always update it before run any python script and allow call function like ConvertPythonTo[GameObject/Mesh]. The bug showed in T48071 is that as exepted the global m_sCurrentLogicManager is not updated with the proper scene logic manager. Instead of trying to fix it by updating the logic manager everywhere and wait next bug report to add a similar line. The following patch propose a different way: - Every logic brick now contain its logic manager to SCA_ILogicBrick::m_logicManager, this value is set and get by SCA_ILogicBrick::[Set/Get]LogicManager, It's initialized from blender conversion and scene merging. - Function ConvertPythonTo[GameObject/mesh] now take as first argument the logic manager to find name coresponding object or mesh. Only ConvertPythonToCamera doesn't do that because it uses the KX_Scene::FindCamera function. Reviewers: moguri Differential Revision: https://developer.blender.org/D1913
2016-04-04Planar Probe, Probe options, Probe Parallax :Clément Fukhaut
- Added Planar Reflections and Refractions: Rough planar reflection/refraction are roughly approximated by blurring with the microfacet normal direction. We blend to a fallback cubemap for high roughness. They are also displaced using the viewnormals. This last deformation is divided by the distance to the shaded point and multiplied by the distance to the reflection plane to get contact reflections. - Added options to probes. Probe can now only render their layers. Diffuse can be disabled (in case of use with a lightmap). Added Operator to manualy update probes. - Probe parallax: Correct the rays to project it to the chosen volume (unit cube or sphere) after being corrected by the obj mat (either own or external). - Probe updates are a bit more consistent. - Moved PBR light UI from Cycles to Blender sources. - Added versioning code to update old file with non breaking defaults. Signed-off-by: Clément Foucault <foucault.clem@gmail.com>
2016-03-20Merge branch 'master' of git://git.blender.org/blenderClément Fukhaut
# Conflicts: # release/datafiles/splash.png # release/datafiles/splash_2x.png # source/blender/gpu/GPU_material.h # source/blender/gpu/shaders/gpu_shader_material.glsl # source/blender/makesrna/intern/rna_image_api.c # source/blender/nodes/shader/nodes/node_shader_bsdf_anisotropic.c # source/blender/nodes/shader/nodes/node_shader_bsdf_diffuse.c # source/blender/nodes/shader/nodes/node_shader_bsdf_glass.c # source/blender/nodes/shader/nodes/node_shader_bsdf_glossy.c # source/blender/nodes/shader/nodes/node_shader_bsdf_refraction.c # source/blender/nodes/shader/nodes/node_shader_bsdf_translucent.c # source/blender/nodes/shader/nodes/node_shader_bsdf_velvet.c # source/blender/nodes/shader/nodes/node_shader_fresnel.c # source/blender/nodes/shader/nodes/node_shader_layer_weight.c # source/blender/nodes/shader/nodes/node_shader_normal_map.c
2016-03-01UPBGE: Disallow shadow buffer render when the lamp is hidden.Porteries Tristan
It now allow the user to use multiple shadow lamps and hidden the culled lamps.
2016-02-26Fix T47015: BGE, objects vanish aligning to vectorCampbell Barton
1811 by @mangostaniko Fixes regression since moving to floats.
2016-02-23Fix warnings reported by MSVCSergey Sharybin
Mainly it's related on a bad practice in SDL to force-define __SSE__ and __SSE2__ flags which generates quite some warnings and causes too much noise. There are some other warnings fixed. Should be no functional changes. NeXyon, please check the changes in audaspace :)
2016-02-22Merge branch 'master' of git://git.blender.org/blenderClément Fukhaut
2016-02-18BGE: Allow access to original texture openGL Bind code/Id/NumberUlysse Martin
This patch adds a python method to get openGL bind code of material's texture according to the texture slot. Example: import bge cont = bge.logic.getCurrentController() own = cont.owner bindId = own.meshes[0].materials[0].getTextureBindcode(0) Test file: http://www.pasteall.org/blend/40679 This can be used to play with texture in openGL, for example, remove mipmap on the texture or play with all wrapping or filtering options. And this can be used to learn openGL with Blender. Reviewers: TwisterGE, kupoman, moguri, panzergame Reviewed By: TwisterGE, kupoman, moguri, panzergame Projects: #game_engine Differential Revision: https://developer.blender.org/D1804
2016-02-15Added support for custom number of samples for brdfs.Clément Fukhaut
2016-02-02Merge branch 'master' of git://git.blender.org/blenderClément Fukhaut
# Conflicts: # source/blender/gpu/GPU_texture.h
2016-01-28Merge branch 'master' of git://git.blender.org/blenderClément Fukhaut
# Conflicts: # source/blender/editors/space_view3d/drawmesh.c # source/blender/gpu/CMakeLists.txt # source/blender/gpu/GPU_draw.h # source/blender/gpu/GPU_material.h # source/blender/gpu/GPU_texture.h # source/blender/gpu/intern/gpu_codegen.c # source/blender/gpu/intern/gpu_draw.c # source/blender/gpu/intern/gpu_material.c # source/blender/gpu/intern/gpu_shader.c # source/blender/gpu/intern/gpu_texture.c # source/blender/makesrna/intern/rna_image_api.c # source/blender/nodes/shader/nodes/node_shader_vectTransform.c
2016-01-28cleanup: spelling, comments, alignmentMike Erwin
fixed pet peeve “frustrum” and other non-functional changes.
2016-01-27World textures displaying for viewport in BI.Alexander Romanov
This patch supports "Image or Movie" and "Environment map" types of world texture for the viewport. It supports: - "View", "AngMap" and "Equirectangular" types of mapping. - Different types of texture blending (according to BI world render). - Same color blending as when it lacked textures (but render via glsl). {F207734} {F207735} Example: {F275180} Original author: @valentin_b4w Regards, Alexander (Blend4Web Team). Reviewers: sergey, valentin_b4w, brecht, merwin Reviewed By: merwin Subscribers: campbellbarton, merwin, blueprintrandom, youle, a.romanov, yurikovelenov, AlexKowel, Evgeny_Rodygin Projects: #rendering, #opengl_gfx, #bf_blender:_next Differential Revision: https://developer.blender.org/D1414
2016-01-25Fix T46902: Revert zeroing velocity in BGE logic brickSybren A. Stüvel
This reverts commit 3dbc123061aa063efd1fca358f5e295b0ce7b302, "BGE: allow setting velocity to zero in a motion actuator" as it caused more issues than it solved. Zeroing linear or angular velocity with logic bricks is discussed further in https://developer.blender.org/D1545
2016-01-23Vector Transform node support for GLSL mode and the internal rendererAlexander Romanov
The Vector Transform node is a useful node which is present in the Cycles renderer. {F144283} This patch implements the Vector Transform node for GLSL mode and the internal renderer. Example: {F273060} Alexander (Blend4Web Team) Reviewers: brecht, campbellbarton, sergey Reviewed By: campbellbarton, sergey Subscribers: psy-fi, duarteframos, RobM, lightbwk, sergey, AlexKowel, valentin_b4w, Evgeny_Rodygin, yurikovelenov Projects: #bf_blender:_next Differential Revision: https://developer.blender.org/D909
2016-01-17BGE: Allow access to light shadow settings with pythonUlysse Martin
This patch adds a new API which allow us to access light shadow settings from python. The new API can be used to write custom GLSL materials with shadows. Reviewers: brecht, kupoman, agoose77, panzergame, campbellbarton, moguri, hg1 Reviewed By: agoose77, panzergame, campbellbarton, moguri, hg1 Projects: #game_engine Differential Revision: https://developer.blender.org/D1690
2016-01-07Merge branch 'master' of git://git.blender.org/blenderturjuque
# Conflicts: # source/blender/editors/space_view3d/drawmesh.c # source/blender/gpu/GPU_extensions.h # source/blender/gpu/SConscript # source/blender/gpu/intern/gpu_compositing.c # source/blender/gpu/intern/gpu_extensions.c # source/gameengine/Rasterizer/RAS_OpenGLRasterizer/RAS_StorageIM.cpp
2016-01-06PRB viewport : Adding lamp support and post effects. and lots of gpu stuff.turjuque
No more leaks.
2016-01-04Remove SCons building systemSergey Sharybin
While SCons building system was serving us really good for ages it's no longer having much attention by the developers and started to become quite a difficult task to maintain. What's even worse -- there started to be quite serious divergence between SCons and CMake which was only accumulating over the releases now. The fact that none of the active developers are really using SCons and that our main studio is also using CMake spotting bugs in the SCons builds became quite a difficult task and we aren't always spotting them in time. Meanwhile CMake became really mature building system which is available on every platform we support and arguably it's also easier and more robust to use. This commit includes: - Removal of actual SCons building system - Removal of SCons git submodule - Removal of documentation which is stored in the sources and covers SCons - Tweaks to the buildbot master to stop using SCons submodule (this change requires deploying to the server) - Tweaks to the install dependencies script to skip installing or mentioning SCons building system - Tweaks to various helper scripts to avoid mention of SCons folders/files as well Reviewers: mont29, dingto, dfelinto, lukastoenne, lukasstockner97, brecht, Severin, merwin, aligorith, psy-fi, campbellbarton, juicyfruit Reviewed By: campbellbarton, juicyfruit Differential Revision: https://developer.blender.org/D1680
2015-12-30BGE: Fix invalid operator< for microsoft compiler.Porteries Tristan
It fixes the strict weak ordering assertion failure, see : https://support.microsoft.com/en-us/kb/949171. sybren and youle are the author of this commit.
2015-12-27Split id->flag in two, persistent flags and runtime tags.Bastien Montagne
This is purely internal sanitizing/cleanup, no change in behavior is expected at all. This change was also needed because we were getting short on ID flags, and future enhancement of 'user_one' ID behavior requires two new ones. id->flag remains for persistent data (fakeuser only, so far!), this also allows us 100% backward & forward compatibility. New id->tag is used for most flags. Though written in .blend files, its content is cleared at read time. Note that .blend file version was bumped, so that we can clear runtimeflags from old .blends, important in case we add new persistent flags in future. Also, behavior of tags (either status ones, or whether they need to be cleared before/after use) has been added as comments to their declaration. Reviewers: sergey, campbellbarton Differential Revision: https://developer.blender.org/D1683
2015-12-17Fix T46959: sys.meta_path reset on on exitCampbell Barton
2015-12-16BGE clean up: use float version of trigonometric functionsJorge Bernal
2015-12-16BGE Ketsji clean-up: double-promotion warningsJorge Bernal