利用者:Jaguarandi/SummerOfCode2009/Notes

提供: wiki
移動先: 案内検索

Notes

In this section I will point out some issues found during SoC

Optimization

  • Quad splitting - currently quads are split intro triangles if they aren't flat enough. Although this makes stuff easier like: 1 normal per primitive, and maybe helps handling some bugs, this can be bad for raytrace optimization as it doubles the ammount of nodes in most normal scenes. [Probably outside SoC scope as it may need to touch several parts of code]
  • Better BoundingBox fitting at instance support [No action taken until now]
  • Add support to improve ray_trace_shadow_tra( source/blender/render/intern/source/rayshade.c) when theres alpha objects, instead of performing several raycast, it could be done with only 1 cast and some callbacks to control/save the order of the raycast, resulting into a single raycast call.
  • Add frustum-culls hints [Theres already hint support, basicaly only a frustum building and a frustum-bb test needs to be plugged in]
  • Add progressive hint refinement (eg.: store hint per light and then refine them conforming the point being shaded)

Bugs

  • Old code gives some banding effects, this happens due to colisions being found with neighbour faces (intersection2), if alll neighbours hits are ignored the face looks smoother but then it creates bugs at handling neighbour faces that are ocluding each other (http://lists.blender.org/pipermail/soc-2009-dev/2009-June/000063.html). New code behaves as old code, as no 100% bug-fix was found.

TODO

  • Render memory aware (test all mallocs and fail safely)
  • Add "break-render-test" during render build
  • Check baking