LANPR 夏日代码 2019 总结链1


关于 LANPR链2

2017 夏天开发记录链3

提案: Blender NPR 描线渲染系统(英文)链4

结论: Blender NPR 描线渲染系统(英文)链5

LANPR 下一步的操作链6

LANPR 2019 计划链7

LANPR 用户手册(英文)链8


GraphicAll链9 下载适用于 Windows 和 MacOS 的构建。


http://www.wellobserve.com/?page=NPR/2019/gsoc_summary.md 链1

http://www.wellobserve.com/?page=NPR/about.md 链2

http://www.wellobserve.com/?page=NPR/DevLogs/index.md 链3

http://www.wellobserve.com/?page=NPR/2018Summer/Proposal.md 链4

http://www.wellobserve.com/?page=NPR/2018Summer/Conclusion.md 链5

http://www.wellobserve.com/?page=NPR/nextsteps.md 链6

http://www.wellobserve.com/?page=NPR/2019/index.md 链7

http://www.wellobserve.com/?page=NPR/2019/Document/index.md 链8

https://blender.community/c/graphicall/ 链9

GSoC2019 工作周报

Week 12

Things have done

  1. Made double variation of the math functions into a separate patch for review.
  2. LANPR now use BLI's math functions completely to eliminate the need of its own math library. Performance is the same as it used to be.
  3. Made LANPR software mode update into a separate thread to let the viewport draw progressively. However there are still problems within it. Probably a copied scene being freed before calculation finished.
  4. Some other code style fixes.

Next week (Post-GSoC)

  1. Stabilize progressive drawing in the viewport.
  2. Fix as many code style problems as I can.

I'm gonna continue refactoring the code and keeping the reviewing process going. Thanks for the support everyone! :)

Week 11

Finally into code review!

Things have done

  1. Fixed all memory problems within LANPR. (Turns out to be some batches are not freed upon quit, not drawing updates)
  2. Changed LANPR background to using world background and film transparency.
  3. Normal controlled line style now comes with default style.
  4. Fixed normal value errors in chained lines.
  5. F12 now shows rendering progress/status. Viewport rendering status not implemented yet.
  6. Various UI and code style fixes, including some doxygen styled comments, also slightly improved stability by solving some hidden access problems. Fewer crashes were observed.
  7. Split LANPR into a separate local branch, and cleaned up for code reviewing.

Next week

All about code reviewing. I'll try to attend the 10:00 CEST meeting and see what developers are thinking.

I will also include patches for other accessory modules for LANPR, including GPencil modifiers, smooth contour modifier, SVG functions and UI fixes. These patches will likely be generated upon LANPR for continuity.

Week 10

Things have done

  1. Fixed most of compiler warnings in LANPR module, one or two left for better solution.
  2. Fixed shader and matrix assertions for deprecated shader. Thank to Sebastian's test.
  3. Camera projection function is updated by Antonioya, so I'll make svg output using the new one.
  4. Basic user document based on the new interface. Check back later for the link.
  5. Made many comment styles into oxygen standard. Not completely done yet.

Next week

  1. Fix warnings in SVG and GPencil module as well.
  2. Re-write GPU mode cache. (STILL!?!?)

Week 9

Things have done

  1. UI is settled, including LANPR main panel and modifier/separate tab (Feature line modifier configurations now in a separate tab, if LANPR engine is selected or enabled in other engines, it will appear). UI should only include minor changes in this stage.
  2. Fixed alpha problem during F12 render.
  3. Utilize the new GPencil modifier callback (with frame argument in deformStroke()) to make MultiStroke modifier more tolerant to multiple deform/generation modifier in the stack.
  4. Various code style fixes.

Next week

  1. Code fixes, eliminate warnings.
  2. Re-write GPU mode cache code path. (I'm not going to trace the memory issue in the legacy code, it's too messy...)
  3. Make SVG export function into a menu entry. (LANPR only for the moment)
  4. Check camera projection of GreasePencil, find a way for it to export view-space (flattened) stroke too.
  5. Basic documents based on the current UI workflow.
  正常    较早    很早  
正在跟踪:LANPR 查看详细
  • 可能可以添加一个选项,在视口时禁用遮挡计算而使用单纯深度遮挡以提升交互速度。
  • 可能需要禁止实时处理多边形数量超过一定值。
  • 有时没有标记计算完毕,导致不退出。(不清楚这个到底对不对,可能需要先把取消标记删掉来看)
  • Freestyle边标记在LANPR工作不正常(存在布尔修改器时)
  • 改函数和RNA名字成比较分类的样子
  • 修改器场景关联时采用跟踪可见网格。
  • 修改器数值改变应该刷新视图。
  • 集合的用途标记不起作用。
  • 自动刷新由于没有场景Idle标志则需要在没算完就刷新时取消和重新开始。
  • 可能可以移除LANPR自身的线条层因为可以在GP目标里做,但是遮挡层数弄分样式了没记不得了。(设计为修改器)
  • 需要点两下才能清除原先的笔画。(使用修改器)
  • 合并重叠点时考虑类型和遮挡
  • 最大遮挡层数没有获得
  • 折痕阈值不应小于0。
  • 添加修改器占位。
  • 视口隐藏的集合也会显示,应在加载前确认,同时考虑渲染情况。(我弄错了这个bug不存在的)
  • 继续找刷新的解决方法。
  • 改名(初步OK)
  • 修改器界面和存取(界面改成了c)
  • 修改器功能。
  • 追加不能(可能只是BLO_expand用错了)。
  • 修改器应用不管用。