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
2018-10-09Eevee: Add support/Fix Object Info nodeClément Foucault
Caveat: Random output does not yet work with instance (dupli) objects.
2018-09-19Merge branch 'master' into blender2.8Brecht Van Lommel
2018-08-27Revert "DRW: Remove unecessary GL calls"Clément Foucault
This reverts commit f8c857ad72e29eb509bd04067f94cd3df8a54aa4.
2018-08-27DRW: Remove unecessary GL callsClément Foucault
2018-08-14DRW: Fix incorrect default stencil valueClément Foucault
2018-08-03DRW: Augment Debug messagesClément Foucault
2018-08-02DRW: Add UBO binding checking routine.Clément Foucault
2018-07-18GWN: Port to GPU module: Replace GWN prefix by GPUClément Foucault
2018-07-08Cleanup: rename 'ct' to 'len' for size varsCampbell Barton
2018-07-03Cleanup: typosCampbell Barton
2018-06-10Workbench: Xray: Optimize and fix implementation.Clément Foucault
There was a method explained in the Weighted Blended Order-Independent Transparency paper to support hardware that does not support per render target blending function. So now only 2 geometry passes are required instead of 3 (one being the outline/depth fill pass). This also fix how the blending is done. There was some premult confusion in the implementation.
2018-06-04Workbench: Shadows: Fix cap being clipped by far plane.Clément Foucault
This was the last remaining problem with shadow volumes (that I know of). Only extrude until we hit the far plane.
2018-06-01T54991: Restore support for Motion Path drawing in 2.8Joshua Leung
This commit restores support for Motion Path drawing in 2.8 (as it wasn't ported over to the new draw engines earlier, and the existing space_view3d/drawanimviz.c code was removed during the Blender Internal removal). Notes: * Motion Paths are now implemented as an overlay (enabled by default). Therefore, you can turn all of them on/off from the "Overlays" popover * By and large, we have kept the same draw style as was used in 2.7 Further changes can happen later following further design work. * One change from 2.7 is that thicker lines are used by default (2px vs 1px) Todo's: * There are some bad-level calls introduced here (i.e. the actgroup_to_keylist() stuff). These were introduced to optimise drawing performance (by avoiding full keyframes -> keylist conversion step on each drawcall). Instead, this has been moved to the calculation step (in blenkernel). Soon, there will be some cleanups/improvements with those functions, so until then, we'll keep the bad level calls. Credits: * Clément Foucault (fclem) - Draw Engine magic + Shader Conversion/Optimisation * Joshua Leung (Aligorith) - COW fixes, UI integration, etc. Revision History: See "tmp-b28-motionpath_drawing" branch (rBa12ab5b2ef49ccacae091ccb54d72de0d63f990d)
2018-05-31DRW: Fix DRW_shgroup_call_procedural_* vertex count.Clément Foucault
2018-05-30Cleanup: style/whitespaceCampbell Barton
Also use 'uint'.
2018-05-30DRW: Instance selection id: use Batch buffers instead of DRWInstanceDataClément Foucault
This is motivated by the refactor of DRWInstanceData to be actual non contiguous mempools.
2018-05-30DRW: Add new per drawcall option to bypass culling.Clément Foucault
2018-05-30DRW: Add DRW_CALL_PROCEDURAL DRWCall type.Clément Foucault
This mimics the behaviour of DRW_shgroup_empty_tri_batch_create and will replace it eventually. The advantage is that it's compatible with transform feedback.
2018-05-27Workbench: Shadows: Add frustum check and camera occlusion test.Clément Foucault
If the object is manifold and the camera is in the shadow side, we can use the depth fail method to fix the inverted shadow glitch. Unfortunately this does not really work for non-manifold. Implementation details: We try to be as efficient as we can, we precompute camera near plane projected into 2D shadow space so we can test for intersection with the shadow boundbox easily. As the intersection test is done in 2D it's pretty fast. Unfortunately, this means the shadow bounds are all aligned to the same space and are not the smallest bound we could extract.
2018-05-27Workbench: Shadow: Use depth fail method for manifold objects.Clément Foucault
Since this method have no failure case for manifold objects, use it.
2018-05-26Cleanup: whitespace, long lines, duplicate includeCampbell Barton
2018-05-24Workbench: Revealage bufferJeroen Bakker
2018-05-20DRW: Rename some DRW_STATE_* for more consistency.Clément Foucault
2018-05-20Workbench: Shadow: Add Depth Fail methodClément Foucault
Also add new debug visualisation. Depth fail method is not used for the moment but has nice benefits. It will be used efficiently in the future.
2018-05-20Cleanup: whitespace, duplicate includesCampbell Barton
2018-05-16GPUShader/DRW: Add Transform Feedback support.Clément Foucault
This is a usefull feature that can be used to do a lot of precomputation on the GPU instead of the CPU. Implementation is simple and only covers the most usefull case. How to use: - Create shader with transform feedback. - Create a pass with DRW_STATE_TRANS_FEEDBACK. - Create a target Gwn_VertBuf (make sure it's big enough). - Create a shading group with DRW_shgroup_transform_feedback_create(). - Add your draw calls to the shading group. - Render your pass normaly. Current limitation: - Only one output buffer. - Cannot pause/resume tfb rendering to interleave with normal drawcalls. - Cannot get the number of verts drawn.
2018-05-11DRW: Add DRW_UNIFORM_FLOAT_COPY and DRW_UNIFORM_BOOL_COPY.Clément Foucault
And also use a union instead of forcing the cast to void*.
2018-05-11Cleanup: use 'uint' in draw managerCampbell Barton
2018-05-07DRW: Fix incorrect blending function reset.Clément Foucault
2018-05-07DRW: Do not multiply alpha or color by alpha if not in blend more.Clément Foucault
2018-05-06DRW: Add DRW_STATE_WIRE_SMOOTH to draw smooth wires.Clément Foucault
This is only useful if depth test/wire is disabled.
2018-05-04Workbench: ShadowsJeroen Bakker
Initial review of the shard shadows in the workbench engine. Speed optimizations like transform feedback are not implemented yet. I first want this part to be reviewed and merged. @fclem please check the note in drw_stencil_set it was holding back nequal == 0 as by default DST.stencil_mask was set to 0. questioin is should we remove the whole check or not. Also I am still looking for a better name (or split the enum) for DRW_STATE_STENCIL_DEPTH_FAIL_INCR_DECR_WRAP Reviewers: fclem Reviewed By: fclem Tags: #code_quest Differential Revision: https://developer.blender.org/D3198
2018-05-03DRW: Add plane culling test.Clément Foucault
Usefull to see if the view frustum is totally behind a plane.
2018-05-02DRW: Add DRW_STATE_BLEND_PREMUL blend mode.Clément Foucault
2018-04-24DRW: Add visibility callback function.Clément Foucault
This add a callback function that runs after frustum culling test. This callback returns the final visibility for this object. Be aware that it's called for EVERY drawcalls that use this callback even if their visibility has been cached.
2018-04-21Cleanup: styleCampbell Barton
2018-04-19Cleanup: styleCampbell Barton
2018-04-17DRW: Perf: Early out empty passes.Clément Foucault
2018-04-17DRW: Add DRW_UNIFORM_INT_COPY.Clément Foucault
This allow to use int uniforms that are not references. Convenient for ids.
2018-04-16DRW: Fix outdated code.Clément Foucault
2018-04-16DRW/GWN: Add callId builtin uniform.Clément Foucault
This uniforms can be used to have a unique id for each drawcall of a shgrp. This only works for standard shgroups and is an exception for the outline drawing.
2018-04-16DRW: Culling: Fix algorithm for asymmetric perspective frustum reconstruction.Germano
2018-04-16Fix T54491: Do not avoid the creation of inverted frustum.Germano
Blender allows this. The Cube in the file in the report would always disappear with the non camera view. The clip_end was too small. The correction here is only on the assert.
2018-04-16DRW: Culling: Reorganize frustum_boundbox_calc to match comments.Germano
And Cleanup.
2018-04-16Fix unreported error: Algorithm for extracting the Bounding Sphere from an ↵Germano
Orthographic frustum was incorrect. There was double transformation.
2018-04-16Fix rBb31ebd8c5c55: the asymmetric furstrum algorithm was still incorrect.Germano
Although somewhat less micro efficient, I decided to separate the `viewinv` matrix to calculate the world position separately. This makes it easier to understand the code.
2018-04-16Fix T54609: Erros in precise BBox extraction algorithmGermano
2018-04-16Cleanup: unused functionCampbell Barton
2018-04-15DRW: Fix culling algorithm for cascade shadow maps.Clément Foucault
draw_frustum_boundbox_calc does not work properly it seems in this case.
2018-04-04Fix part of T53497: Eevee stuttering on macOS for the first few seconds of ↵Brecht Van Lommel
usage. The problem was that textures were assigned to different slots on different draw calls, which caused shader specialization/patching by the driver. So the shader would be compiled over and over until all possible assignments were used.