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-01-15GPU Texture: Add GL_RG16I format.Clément Foucault
2018-01-04GPU_offscreen: Add option for high bit depth.Clément Foucault
This way we can render in HDR and read the real pixel values.
2017-11-14GPUTexture: Add for stencil to default depth buffers.Clément Foucault
Theses will be used by eevee SSS. TODO: only allocate stencil if needed.
2017-09-25GPUTexture : Fix Bind/Unbind function so it works with multisample textures.Clément Foucault
2017-08-22GPUTexture: Remove Warning.Clément Foucault
2017-08-22GL_TEXTURE_2D_ARRAY wasn't handled in GPU_texture_updateDalai Felinto
Although the problem was exposed in 9457715d9a6f, the problem was in the original code that was copied over. To have: ``` } else { /* EXPECTED_VALUE */ ``` Without an BLI_assert(value == EXPECTED_VALUE); is asking for troubles. Yet another reason to favour switch statements with: ``` default: BLI_assert(!"value not implemented or supported"); ``` Instead of chained if/else if/else /* expected_value */.
2017-08-22GPU Texture: Use switch instead of if/elseDalai Felinto
2017-08-22Eevee: Fix T52486Clément Foucault
For that introduce an update function for textures.
2017-08-18GPU_texture : Add RG8 format.Clément Foucault
2017-08-13Eevee: Fix the AO problem around object edges.Clément Foucault
This was due to missing GL_TEXTURE_MAG_FILTER.
2017-07-06GPUTexture: Change default comparison mode to GL_NONE.Clément Foucault
This default will prevent more errors in the future. Also compare mode is less used nowadays. Fixes T51904
2017-06-22GPUTexture: Support for nearest sampling with mipmaps.Clément Foucault
2017-05-20GPUTexture: Enabling R32 format for linear depth encoding.Clément Foucault
2017-05-19Remove reference to WITH_LEGACY_OPENGLDalai Felinto
We only keep this as a way to get GPU_stubs to run, in case we want to do a throughout cleanup in the codebase and want code using legacy calls to fail to build.
2017-05-16Draw Manager: Texture Memory usage improvement.Clément Foucault
-Use 11_11_10 buffers for hdr content. -Eevee compositing share 1 buffer if bloom and DOF are both activated. -Fix slowdown when resizing EEVEE viewport. -Removed DRW_BUF_*** enums causing confusion.
2017-05-16GPUViewport: Add a Texture Pool to reuse textures across engines.Clément Foucault
2017-05-12Fix ogl deprecated calls.Clément Foucault
2017-05-10GPUTexture: Add support for 32bit textures.Clément Foucault
2017-05-04Draw Manager: Add a memory stats to debug view.Clément Foucault
Adds 2 static unsigned int to Gawain and GPUTexture to roughly keep track of the memory stats on the GPU. Stats can be view at the bottom of the GPU stats with debug value > 20.
2017-04-27OpenGL: manage legacy state only when WITH_LEGACY_OPENGL=ONMike Erwin
- enabled lights - alpha test - texture environment - point sprites (always enabled in modern GL) Moved is_clip_plane for better struct packing, no functional change there. Part of T51164
2017-04-27OpenGL: stop enabling GL_TEXTUREMike Erwin
Texturing is always enabled in GLSL. Simply use a sampler in the shader. Replaced gpu_generate_mipmap with glGenerateMipmap since the former just Enabled/Disabled the texture target and called the latter. Part of T51164
2017-04-18Eevee: Introduction of world preconvolved envmap.Clément Foucault
For now only compute GGX convolution. The GGX LUT used for the split sum approximation (UE4) is merged with the LTX mag LUT that uses the same parameters (theta and roughness)
2017-04-18GPUTexture: Fix Cubemap uploadClément Foucault
2017-04-18GPUTexture: Add Mipmap Control functions.Clément Foucault
2017-04-16OpenGL: tweak GPU_texture_create_nDMike Erwin
- test for 2D textures first since it's the most common case - declare variables close to where they're used - fix compiler warning for proxy (uninitialized use) - safe return if n != 1, 2, 3 (should never happen) - white space
2017-04-12Merge branch 'master' into 28Campbell Barton
2017-04-12Cleanup: use lowercase gpu prefix for static funcsCampbell Barton
This was mostly followed already.
2017-04-10Eevee: First Shadows implementationClément Foucault
Using Texture Arrays to store shadow maps so less texture slots are used when shading. This means a large amount of shadows can be supported. Support Projection Shadow Map for sun like in old BI/BGE. Support Cube Shadow Map for Point/Spot/Area lights. the benefit of using it for spot light is that the spot angle does not change shadow resolution (at the cost of more memory used). The implementation of the cubemap sampling is targeted for 3.3 core. We rely on 2D texture arrays to store cubemaps faces and sample the right one manualy. Significant performance improvement can be done using Cubemap Arrays on supported hardware. Shadows are only hardware filtered. Prefiltered shadows and settings comming next.
2017-04-10GPUTextures: Work on cubemap support and array texturesClément Foucault
2017-04-03Eevee: LTC area lightsClément Foucault
Using Linear Transform Cosines to compute area lighting. This is far more accurate than other techniques but also slower. We use rotating quad to mimic sphere area light. For a better approximation, we use a rotating octogon.
2017-03-18GPUTexture: Add support for depth_stencil textures.Clément Foucault
2017-02-07Clay-Engine (merge clay-engine)Clément Foucault
Initial work by Clément Foucault with contributions from Dalai Felinto (mainly per-collection engine settings logic, and depsgraph iterator placeholder). This makes Blender require OpenGL 3.3. Which means Intel graphic card and OSX will break. Disable CLAY_ENGINE in CMake in those cases. This is a prototype render engine intended to help the design of real render engines. This is mainly an engine with enphasis in matcap and ambient occlusion. Implemented Features -------------------- * Clay Render Engine, following the new API, to be used as reference for future engines * A more complete Matcap customization with more options * Per-Collection render engine settings * New Ground Truth AO - not enabled Missing Features ---------------- * Finish object edit mode - Fix shaders to use new matrix - Fix artifacts when edge does off screen - Fix depth issue - Selection sillhouette - Mesh wires - Use mesh normals (for higher quality matcap) - Non-Mesh objects drawing - Widget drawing - Performance issues * Finish mesh edit mode - Derived-Mesh-less edit mode API (mesh_rende.c) * General edit mode - Per-collection edit mode settings * General engines - Per-collection engine settings (they are their, but they still need to be flushed by depsgraph, and used by the drawing code)
2017-02-03Modifications to GPU_texture:Clément Foucault
-Remove NPOT check as it should be supported by default with OGL 3.3 -All custom texture creation follow the same path now -Now explicit texture format is required when creating a custom texture (Non RGBA8) -Support for arrays of textures Reviewers: dfelinto, merwin Differential Revision: https://developer.blender.org/D2452
2016-10-25OpenGL: clean up glActiveTexture usageMike Erwin
Removed some of my earlier glActiveTexture calls. After reviewing the code I now trust that GL_TEXTURE0 is active by default. Fewer GL calls, same results. Fixed some misuse of glActiveTexture & glUniformi, mostly my fault. Caught by --debug-gpu on Windows. Don't know why this appeared to be working previously! Plus some easy cleanup nearby.
2016-10-17OpenGL: disable checks for NPOT texture supportMike Erwin
Non-power-of-two textures are always allowed. Keeping the disabled checks in the code in case we support OpenGL ES in the future. Even then it should be a compile-time check, not at run-time.
2016-08-19OpenGL: don't poll for errors, rely on KHR_debugMike Erwin
Errors are caught & reported by our GL debug callback. This gives us way more useful information than sporadic calls to glGetError. I removed almost all use of glGetError, including our own GPU_ASSERT_NO_GL_ERRORS and GPU_CHECK_ERRORS_AROUND macros. Still used in rna_Image_gl_load because it passes unvalidated input to OpenGL functions. Still used in gpu_state_print_fl_ex as an exception handling hack -- will rewrite this soon. The optimism embodied by this commit will not prevent OpenGL errors. We need to analyze what would cause GL to fail at certain points and proactively intercept these failures. Or guarantee they can't happen.
2016-08-09Bugfix. glDisable with bad enum argument in GPU_texture_unbindAlexander Romanov
Reported by @panzergame in D1414. `glDisable` calls with bad enum argument `GL_TEXTURE_2D_MULTISAMPLE` that came from this line: `tex->target = (n == 1) ? GL_TEXTURE_1D : (samples ? GL_TEXTURE_2D_MULTISAMPLE : GL_TEXTURE_2D);` Reviewers: brecht Reviewed By: brecht Subscribers: AlexKowel, yurikovelenov, panzergame Differential Revision: https://developer.blender.org/D2145
2016-06-08Cleanup: GPU headersCampbell Barton
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-09Cleanup: style, gpu moduleCampbell Barton
2016-01-08OpenGL: remove obsolete version checkMike Erwin
This *should* be the last one in Blender creator. A few still live in BGE.
2016-01-08cleanup: C99Mike Erwin
- tighter scoping - declare vars closer to where they’re used - use more bool
2015-12-08OpenGL: split off framebuffer, shader and texture code into separate files.Brecht Van Lommel