January 18, 2020, 10:54 (GMT) |
Merge branch 'greasepencil-object' into greasepencil-refactor |
January 18, 2020, 10:52 (GMT) |
Merge branch 'master' into greasepencil-object |
January 18, 2020, 10:51 (GMT) |
GPencil: New evaluation of derived frames and Filling calculation As grease pencil was created before depgraph, it was using a custom solution to create derived data to apply modifiers on top. With the new refactor of the drawing engine, we need to have the runtime data at datablock (bGPdata) level to share between instances, but also we neeed to have separated eval data because different objects can use different modifiers (equals to actual mesh_eval logic). The old derived frame array solution is not valid anymore. The initial idea was to make a full copy of the datablock in a separated eval copy, but testing this solution, it was very slow, so now, the full copy is only done once, and later, only the active frame data is updated (see note below). In a future development, the ideal solution would calculate all frames at the same time and only copy again if something changes, but now this change is out of scope. I have been performing tests and with this "only active frame" copy, Also, this solution simplifies several areas of the code, because now it's not necessary to deal with derived frame array, and just use datablock as is. This update also includes the following: * How the filling information is managed. Before, the triangulation data was created only during drawing process, and it was not saved. With the new engine, this information must be available always, so instead to calculate in drawing time, now the information is saved and generated or updated each time the stroke is modified. To have the filling information calculated improves FPS and simplify drawing and modifier evaluation code. * Remove unused parameters related to old Filling calculation logic. This also simplifies the UI panels. * Added simplify modifier options. This was removed, but after last changes it's good to have as before. Differential Revision: https://developer.blender.org/D6597 |
January 17, 2020, 23:42 (GMT) |
GPencil: Refactor: Speedup: Add drawcall merging of consecutive strokes This reduces driver & DRW overhead when a lot of strokes are drawn with the same material pool. |
January 17, 2020, 21:14 (GMT) |
Merge branch 'greasepencil-refactor' into temp-gpencil-eval |
January 17, 2020, 21:14 (GMT) |
Merge branch 'greasepencil-object' into greasepencil-refactor |
January 17, 2020, 21:13 (GMT) |
Merge branch 'master' into greasepencil-object |
January 17, 2020, 16:43 (GMT) |
Cleanup: Fix comment |
January 17, 2020, 15:38 (GMT) |
Merge branch 'greasepencil-refactor' into temp-gpencil-eval |
January 17, 2020, 15:38 (GMT) |
GPencil: Fix subversion patch number |
January 17, 2020, 15:34 (GMT) |
GPencil: Cleanup - Make function static |
January 17, 2020, 15:32 (GMT) |
GPencil: Use existing eval copy for single users |
January 17, 2020, 13:44 (GMT) |
Merge branch 'greasepencil-refactor' into temp-gpencil-eval |
January 17, 2020, 13:43 (GMT) |
GPencil: Fix previously selected strokes shows selected after lock their layer |
Revision 512a077 by Clément Foucault (greasepencil-object, greasepencil-refactor, temp-gpencil-eval) January 17, 2020, 12:56 (GMT) |
GPencil: Refactor: Fix assert caused by framebuffer usage optimisation |
January 17, 2020, 09:40 (GMT) |
GPencil: Optimize when use only one user |
January 17, 2020, 09:10 (GMT) |
Merge branch 'greasepencil-refactor' into temp-gpencil-eval |
January 17, 2020, 09:10 (GMT) |
GPencil: Fix versioning code to check version |
January 17, 2020, 09:06 (GMT) |
Merge branch 'greasepencil-object' into greasepencil-refactor |
January 17, 2020, 09:05 (GMT) |
Merge branch 'master' into greasepencil-object |
|