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-05-19Ignore vertex color when doing texture paintSergey Sharybin
It was totally useless to multiply diffuse color with the vertex color when doing texture painting. It was masking actual texture and only was forcing artists to create an empty vertex color layer to work this around.
2016-04-26Support multiple tangents for BI render & viewportAlexander Romanov
Normal Map node support for GLSL mode and the internal render (multiple tangents support). The Normal Map node is a useful node which is present in the Cycles render. It makes it possible to use normal mapping without additional material node in a node tree. This patch implements Normal Map node for GLSL mode and the internal render. Previously only the active UV layer was used to calculate tangents.
2016-03-02Cleanup: style, and --help editsCampbell Barton
2016-02-20Cleanup, avoid passing const pointer to MEM_freeN()Sergey Sharybin
This generates warnings with MSVC. Similar typecast was already done in other cases, so think it's all fine.
2016-02-10Fix T47332: Face select masks display glitchCampbell Barton
2016-02-02Cleanup: rename uvflag -> flag for dm drawingCampbell Barton
Was called both, however this isn't mainly for uv's so just call 'flag'. Also remove redundant NULL check.
2016-02-02Partial Fix T47221: Sculpt Hide fails w/ texture drawingCampbell Barton
Support for skipping hidden faces in sculpt mode w/ texture drawing.
2016-01-30Fix T46455: Array modifier could generate chained mapping of vertices, ↵Bastien Montagne
leading to corrupted geometry. That was the main issue (in both T46455 and T46690), solved by 'flattening' those chains (v1 -> v2 ->v3 etc.) before calling `CDDM_merge_verts()`. Also added note to `CDDM_merge_verts()` that it does not support chained mapping, along with a basic assert that should catch most of those cases in future. The logic of 'following mapping' was also rather broken, making a special case here when using object-controlled offset is very weak. Further more, blindly following mapping in this case was far from ideal, this could end to merging vertices rather far from each other. To address this issue, we now always follow mapping, but only as long as 'final' vertex remains close enough from mapped one. Finally, the search of 'closest' vertex to merge with was also quite bad, would just pick the first one matching distance limit, instead of using the actual closest one - could lead to rather ugly geometry deformations in case one would use not-so-small merge threashold!
2016-01-16Cleanup: styleCampbell Barton
2016-01-15Changes around update normals from PBVH to CDDMSergey Sharybin
- Only do this if PBVH is not used for display, this should correspond to whats' happening in sculpt.c now. - No need to do such synchronization for solid drawing, it supports optimal display from PBVH. In fact, such synchronization is only needed in the following case: Drawing callback does not support PBVH draw and sculpt session is configured to use PBVH for display and related operations.
2016-01-14Fix T47170: Sculpt w/ constructive modifier crashCampbell Barton
Regression in 4d33c37c9 Only copy normal arrays from sculpt to the DerivedMesh when the mesh is deformed. Constructive modifiers calculate their own normals.
2015-12-28cdderivedmesh fix stippled faces not getting drawn at allAntony Riakiotakis
Also rearranged code here to not issue a draw call (explicit flush) per face and not set shader per face either when stippled drawing is mixed with regular drawing. Not good at all for performance.
2015-12-27OpenGL: stipple support added to basic GLSL shaderAlexander Romanov
The is intended to replace the deprecated glPolygonStipple() calls with a shader based alternative, once we switch over to GLSL shaders. Reviewers: brecht Differential Revision: https://developer.blender.org/D1688
2015-12-08OpenGL: split off framebuffer, shader and texture code into separate files.Brecht Van Lommel
2015-12-03Fix T46899 sculpt normals not getting updated after exiting sculpt mode.Antony Riakiotakis
Habit is a bad thing: Update polys, not tessfaces.
2015-11-26Cleanup: whitespaceCampbell Barton
2015-11-22Remove vertex array support from GPUBuffers. Remove USER_DISABLE_VBO. AllAntony Riakiotakis
GPUBuffer rendering is now done using vertex buffers. Vertex arrays are completely removed from GL 3.2 core profile, so we'll have to do this change at some point anyway. This commit, though big, is not modifying blender in any way. Use should be exactly as if the vetex buffer option is constantly on.
2015-11-13Fix T46726 shading issues in sculpt mode.Antony Riakiotakis
This fixes two issues: * Normals were not being recalculated correctly when not using optimized drawing for CDDerivedMesh (Multires actually handles that correctly). * Loop normals (autosmooth option) were also not being calculated. Doing this calculation is not desirable, since it can't be done correctly without a severe performance hit. This is easy to test by doing a dependency flush on the mesh after each scuplt stroke step. Instead they are now disabled during sculpting.
2015-10-12Add functions to compute normals (verts, polys and loops ones) for a given ↵Bastien Montagne
shapekey. Title says pretty much everything, we now have BKE and RNA funcs to get vertex, poly and loop normals of a given shapekey. This will be used e.g. in FBX exporter (shapekeys need normal data too). Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D1510
2015-10-11Fix warnings and remove casts by adding copy_vx_vx_uchar() functions.Brecht Van Lommel
2015-10-05Fix T46305: normal map display issues in viewport when using VBOs.Brecht Van Lommel
2015-09-23Fix T46215: Explode modifier looses texturesCampbell Barton
2015-09-17Fix for recent regression clamping materialsCampbell Barton
Mixup between gpu/derivedMesh total materials, fix and name more clearly to avoid confusion. thanks to Sergey for finding root cause!
2015-09-16Fix T46073: crash w/ out-of-bounds materialCampbell Barton
2015-08-24Fix editmesh GLSL tangent drawingCampbell Barton
The generic tangent calculation relied on CDDM arrays which aren't available in edit-mode. Add a tangent calculation callback, which has its own implementation for editmesh data.
2015-07-31Complete fix for T45618Antony Riakiotakis
Two issues here, normal update was not happening due to own sillyness in viewport refactor, also normal update code still used triangles. Now reused Campbell's poly normal recalculation code.
2015-07-31Don't initialize CDDM with MFace from MeshesCampbell Barton
Caused crash because MFace is no longer a layer which is added unless requested, causing CDDM to have numTessFaceData nonzero, but mface set to NULL.
2015-07-30Move tangents and baking to looptris:Antony Riakiotakis
Notes: * Code in rendering and in game engine will still convert tangents to a tessface representation. Added code that takes care of tangent layer only, might be removed when BGE and rendering goes full mlooptri mode. * Baking should work discovered some dead code while I was working on the patch, also tangents are broken when baking from multires (also in master), but those are separate issues that can be fixed later. This should fix T45491 as well
2015-07-29Fix T45605 crash with editmode selection on solidify modifier.Antony Riakiotakis
Looks like derivedmesh draw code always assumed a mesh is available. Make sure that if we use a bmesh, a flag is used to control that.
2015-07-28cdderivedmesh: don't prepare a normal buffer when selecting, evenAntony Riakiotakis
if we skip creating the selection color layer.
2015-07-27Use loop data instead of face dataCampbell Barton
Replace checks in various places
2015-07-25Convert CCGSubsurf VBO system to also sort hidden and visible faces.Antony Riakiotakis
It's not actually used during drawing though.
2015-07-25GPU Buffers:Antony Riakiotakis
This commit begins implementation of the idea about hidden face separation outlined in http://code.blender.org/2015/06/optimizing-blenders-real-time-mesh- We split hidden and visible faces to different parts of the triangle buffer. Mapped drawing will now skip iterating through hidden polys. Of course the final target, when all derived mesh types use VBO sorting, is to skip checking for hide flag per face completely. All faces will be pre-sorted anyway and we'll be able to draw them with one draw call.
2015-07-25GPU buffer materials:Antony Riakiotakis
Separate and reuse some shared code. Also avoid counting for information we already know, such as total loop triangles etc.
2015-07-24Fix yet another issue caused by my recent changes.Antony Riakiotakis
2015-07-24Fix out of bounds memory access when copying loose vertices in cddmAntony Riakiotakis
Caused by own fix for too much allocated memory not taking all code into account.
2015-07-20Use abstraction to unbind buffers, should avoid crashes in systems thatAntony Riakiotakis
don't support VBOs. Exposed by initialization error in GLEW, which should be fixed seperately.
2015-07-19Cleanup: styleCampbell Barton
Also 'com' as abbreviation for center-of-mass is a bit confusing, rename to 'center'.
2015-07-19Properly fix T45477Antony Riakiotakis
Code was actually skipping setting color selection indices and previous commit actually broke mask selection in texture painting. All should work now.
2015-07-17Avoid getting the original index if its not neededCampbell Barton
2015-07-17Absent-mindedness...Remove testing codeAntony Riakiotakis
2015-07-17Fix GLSL code not working correctly for Macs without VBO, again reportAntony Riakiotakis
by scorpion81 on irc
2015-07-17Fix issue reported by scorpion81 on irc: material mode + flat shadingAntony Riakiotakis
artifacts in cycles textured mode.
2015-07-17Fix another index error, made multimaterial mapped meshes drawAntony Riakiotakis
incorrectly.
2015-07-17Don't create MFace's when calculating normalsCampbell Barton
Instead only create MFace layer when its requested
2015-07-17Fix T45465Antony Riakiotakis
Easy one, we don't draw quads anymore. Also normal didn't use polygon index
2015-07-17Fix no longer being possible to display a suzanne with 8 levels ofAntony Riakiotakis
subdivision. Classic integet overflow/size_t substitution case. Machines are getting powerful enough to easily expose these kinds of error now.
2015-07-16Remove MTFace DM_paint_uvlayer_active_get funcCampbell Barton
2015-07-16Add tessellation data to DerivedMesh (LoopTri)Campbell Barton
This stores loop indices into the loop array giving easier acess to data such as vertex-colors and UV's, removing the need to store an MFace duplicate of custom-data. This doesn't yet move all internal code from MFace to LoopTri just yet. Only applies to: - opengl drawing - sculpting (pbvh) - vertex/weight paint Thanks to @psy-fi for review, fixes and improvements to drawing!
2015-07-16Sculpt draw code:Antony Riakiotakis
Remove legacy code completely, now dyntopo, multires et al even work on GL 1.1 for really hardcore users :p Real purpose here though is to be able to have fast multires drawing even with VBO off, since it requires using indices for vertex buffers. Also made own code elf puke an eaten normal update function which made multires not update normals in solid mode...sorry.