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
path: root/intern
AgeCommit message (Collapse)Author
2018-03-20Merge branch 'master' into blender2.8Sergey Sharybin
2018-03-20Memory allocator: Clarify consistency check functionSergey Sharybin
Also make it to return truth when everything is good and false otherwise.
2018-03-20Merge branch 'master' into blender2.8Joshua Leung
2018-03-19Fix T54317: overlapping volume render bug after recent changes.Brecht Van Lommel
Increasing the samplig dimensions like this is not optimal, I'm looking into some deeper changes to reuse the random number and change the RR probabilities, but this should fix the bug for now.
2018-03-19Fix T54356: volume rendering bug using just color attribute.Brecht Van Lommel
2018-03-19GWN: Vertex Buffer: Remove the use of glMapBufferRangeClément Foucault
We revert to the malloc/realloc and manually manage the upload. There seems to be a performance penalty from using glMapBuffer on some hardware, prefering way is glBufferData(NULL) with glBufferSubData.
2018-03-19GWN: Perf: Use unsync glMapBufferRange to prevent sync time.Clément Foucault
2018-03-19GWN: Context: Use <unordered_set> instead of <forward_list>Clément Foucault
We cannot have duplicates so unordered_set is better suited for this case. Removing batches is now constant time on average instead of linear.
2018-03-17GWN: Element Buffer: Refactor / Optimisation.Clément Foucault
- Upload the data to the GPU directly when creating the element buffer in GWN_indexbuf_build_in_place(). - Convert data in place when squeezing the indices and removing the need for another allocation. - GWN_indexbuf_build_in_place() can be used with already used element buffers and reupload their data without changing vbo id (keeping vaos up to date).
2018-03-17GWN: Vertex Buffer refactor.Clément Foucault
We now alloc a vbo id on creation and let OpenGL manage its memory directly. We use glMapBuffer to get this memory location. This enables us to reuse and modify any vertex buffer directly without destroying it with its associated Batches. This commit does not really improve performance but will let us implement more optimizations in the future. We can also resize the buffer even if this can be slow if we need to keep the existing data. The addition of the usage hint makes dynamic buffers not a special case anymore, simplifying things a bit.
2018-03-16GWN: Uncomment a (now) usefull assertClément Foucault
2018-03-16Merge branch 'master' into blender2.8Brecht Van Lommel
2018-03-16Code refactor: move OIIO image buffer writing outside session, into callback.Guillaume Chereau
Original patch by Guillaume, modifications by Brecht. Differential Revision: https://developer.blender.org/D3102
2018-03-16GHOST: Support Unity taskbar progress APILukas Stockner
Unity itself is deprecated, but the API is also supported by KDE and the GNOME Dock extension, which means that it will be useful for a wide variety of distributions. To get a progress bar, the system must have a blender.desktop file and libunity installed. The need for libunity is annoying, but the only alternative would be to integrate a DBus library... Reviewers: campbellbarton, brecht Differential Revision: https://developer.blender.org/D3106
2018-03-15UV/Image Editor: Optimize UV DrawingGermano
Use batchs to store the entire buffer of loops before drawing. These batchs can be stored in the mesh draw cache later.
2018-03-15GWN: Fix compilation error without VRAM_USAGE flag.Clément Foucault
2018-03-15GHOST: Fix wrong usage of wglCreatePbufferARB.Clément Foucault
Last argument must be a pointer to list of int terminated by a value of 0.
2018-03-15GWN: Batch: Perf: Comment out glBindVertexArray(0)Clément Foucault
Even if they are for safety they are not free to use ! On my system (Mesa + AMD Vega GPU) calling: glBindVertexArray(1); glDrawArrays(GL_TRIANGLES, 0, 3); glBindVertexArray(0); in a loop, shows the same overhead as a full vao switching (which is more or less 10 times slower than just calling glDrawArrays) Moreover, now that we use OpenGL 3.3 binding a VAO is REQUIRED to issue a drawcall so it is garanted to be overwritten before the next drawcall. Problem can only happen if someone draws directly with opengl commands.
2018-03-15GWN: Batch: Only revert to default Vao when needed.Clément Foucault
Drawing ranges via glDrawArrays is already supported and should not need a manual offset in the VAO like glDrawArraysInstanced or glDrawElements.
2018-03-15GWN: Add primitive restart in element/index buffers.Clément Foucault
This allows to draw multiple primitive of the type GWN_PRIM_LINE_STRIP GWN_PRIM_LINE_LOOP GWN_PRIM_TRI_STRIP GWN_PRIM_TRI_FAN GWN_PRIM_LINE_STRIP_ADJ with only one drawcall. This should speed up some areas that are really sensitive to drawcall counts : UV drawing, Hair drawing...
2018-03-13Merge branch 'master' into blender2.8Campbell Barton
2018-03-12Fix T54299: crash rendering objects with motion blur disabled, after recent ↵Brecht Van Lommel
changes.
2018-03-12Cycles: add constant folding to displacement nodes.Brecht Van Lommel
2018-03-10Merge branch 'master' into blender2.8Brecht Van Lommel
2018-03-10Cycles: add roughness baking support, using squared roughness convention.Brecht Van Lommel
2018-03-10Cycles: switch to squared roughness convention for all nodes.Brecht Van Lommel
This was already done for the Principled BSDF to be compatible with typical baked roughness maps in PBR workflows.
2018-03-10Merge branch 'master' into blender2.8Brecht Van Lommel
2018-03-10Code cleanup: fix compiler warning.Brecht Van Lommel
2018-03-10Fix T54279: viewport update bug with volume meshes.Brecht Van Lommel
Meshes without vertex normals were not handled correctly.
2018-03-10Code refactor: reduce number of loops over meshes.Brecht Van Lommel
2018-03-10Fix T54278: volume artifacts with small density and color after recent changes.Brecht Van Lommel
2018-03-10Code cleanup: use spaces for aligned indentation.Brecht Van Lommel
2018-03-10Cycles: support arbitrary number of motion blur steps for objects.Brecht Van Lommel
2018-03-10Cycles: support arbitrary number of motion blur steps for cameras.Brecht Van Lommel
2018-03-10Code refactor: motion blur cleanups, preparing for next commit.Brecht Van Lommel
2018-03-10Code refactor: don't expose UpdateObjectTransformState in header.Brecht Van Lommel
2018-03-10Code refactor: make Transform always affine, dropping last row.Brecht Van Lommel
This save a little memory and copying in the kernel by storing only a 4x3 matrix instead of a 4x4 matrix. We already did this in a few places, and those don't need to be special exceptions anymore now.
2018-03-10Code refactor: add DecomposedTransform.Brecht Van Lommel
This is in preparation of making Transform affine only, and also gives us a little extra type safety so we don't accidentally treat it as a regular 4x4 matrix.
2018-03-10Code refactor: add ProjectionTransform separate from regular Transform.Brecht Van Lommel
This is in preparation of making Transform affine only.
2018-03-10Code refactor: avoid motion transform copy, remove unused curved code.Brecht Van Lommel
The purpose of the previous code refactoring is to make the code more readable, but combined with this change benchmarks also render about 2-3% faster with an NVIDIA Titan Xp.
2018-03-10Code refactor: use KernelShader and KernelParticle instead of float arrays.Stefan Werner
Original patch by Stefan with modifications by Brecht.
2018-03-10Code refactor: use KernelLight instead of float4 arrays.Stefan Werner
Original patch by Stefan with modifications by Brecht.
2018-03-10Code refactor: use KernelOject struct instead of float4 array.Stefan Werner
Original patch by Stefan with modifications by Brecht.
2018-03-10DRW: Change clip planes API.Clément Foucault
The draw manager now just set the number of active clip planes. It's now up to the engine to specify the plane equations as uniform/ubo/constant.
2018-03-09Fix T53857: Incorrect framerate for videos imported from OBSSergey Sharybin
This is an issue with which value to trust: fps vs. tbr. They both cam be somewhat broken. Currently the idea is: - If file was saved with FFmpeg AND we are decoding with FFmpeg we trust tbr. - If we are decoding with Libav we use fps (there does not seem to be tbr in Libav, unless i'm missing something). - All other cases we use fps. Seems to work all good for files from T53857, T54148 and T51153. Ideally we would need to collect some amount of regression files to make further tweaks more scientific. Reviewers: mont29 Reviewed By: mont29 Differential Revision: https://developer.blender.org/D3083
2018-03-07Merge branch 'master' into blender2.8Campbell Barton
2018-03-06Cycles: Fix crash when building with no shading systemsSergey Sharybin
2018-03-06Cycles: Cleanup, indentationSergey Sharybin
2018-03-03Merge branch 'master' into blender2.8Brecht Van Lommel
2018-03-03Fix T54202: Cycles crash rendering empty mesh volume after recent optimization.Brecht Van Lommel