py api additions needed for fixing [#34864].
- add rna property 'as_bytes' method so you can get a string property as python bytes (bypass encoding).
- make bpy.path.abspath/relpath compatible with bytes.
- add 'relpath' option to bpy_extras.image_utils.load_image(), so you can load an image relative to a path.


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@55795 954f8c5b-7b00-dc11-b283-0030488c597c
Fix #34867: cycles viewport render did not respect viewport visibility for
modifiers with text/curve/surface objects.

This is because the code here did not yet support the distinction between
generating the tesselated mesh at viewport/render resolution and generating a
separate displist/derivedmesh for render that is not stored in the object but
created and freed on the fly.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@55796 954f8c5b-7b00-dc11-b283-0030488c597c
Fix #34862: some operators like mesh separate or object clear parent were not
showing shortcuts in menus, now it shows them in the submenu.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@55797 954f8c5b-7b00-dc11-b283-0030488c597c
BGE: Cleaning up the VBO code to use RAS_TexVert more directly instead of copying out pieces. This also gets rid of MapBuffers, which isn't available in OpenGL ES. Scenes that require constant VBO updates (like my skeletal mesh stress test) are now 10~13% faster.

git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@55798 954f8c5b-7b00-dc11-b283-0030488c597c
fix bad memmove size (reading past buffer bounds)


git-svn-id: https://svn.blender.org/svnroot/bf-blender/trunk@55799 954f8c5b-7b00-dc11-b283-0030488c597c