Sybren A. Stüvel
fc514b2d73
WIP: asset engine support
2016-03-31 18:26:09 +02:00
Sybren A. Stüvel
ba7734aaa5
Added CloudPath class for easier cloud browsing.
...
This allows us to have a structured, well-defined way to point at a node
in Pillar (and store its parent nodes).
2016-03-31 18:26:09 +02:00
Sybren A. Stüvel
364cc75548
Updated README with building & installation instructions.
2016-03-31 17:34:02 +02:00
Sybren A. Stüvel
cbdf1c1321
Download & bundle dependencies as wheel files.
...
build-dependency-wheels.sh has been removed, as it has been
superseded by the 'python setup.py wheels' command.
2016-03-31 17:33:48 +02:00
Sybren A. Stüvel
7e9e1d122c
Added setup.py so we can package the addon as ZIP.
...
`python setup.py bdist` creates dist/blender_cloud*.addon.zip, which can
be installed by Blender.
2016-03-31 16:01:17 +02:00
Sybren A. Stüvel
43a8a1ad68
Updated README.md to use Phabricator's Remarkdown.
...
Also updated links to Blender ID addon to point to its new home @
Phabricator.
2016-03-31 12:30:04 +02:00
Sybren A. Stüvel
3a69f1fcb4
Less restrictive permissions for texture directory
2016-03-31 12:01:41 +02:00
Sybren A. Stüvel
3afb5a107a
Ignore test directories.
2016-03-31 11:54:27 +02:00
Sybren A. Stüvel
afbc36a70a
Use addon pref to store default texture dir, allowing per-scene override.
2016-03-31 11:54:27 +02:00
Sybren A. Stüvel
c10107b887
Some drawing tweaks
2016-03-23 16:54:08 +01:00
Sybren A. Stüvel
8274745b84
Don't stop browsing when someone mis-clicks an item.
2016-03-23 16:54:02 +01:00
Sybren A. Stüvel
653bee7e4d
Added screenshots to README
...
I hope these will show up in Github without modification (I'm not using
HTTP URLs).
2016-03-23 16:52:42 +01:00
Sybren A. Stüvel
3ac1917527
Added some doc about how to run the addon.
2016-03-23 14:11:12 +01:00
Sybren A. Stüvel
5db08513a2
Added script to build and/or download dependencies.
...
Requires git and only tested on Ubuntu Linux 14.04.
2016-03-23 14:07:10 +01:00
Sybren A. Stüvel
41e8f871f9
Updated the README with the new asyncio loop management stuff.
...
Also added some more installation instructions.
2016-03-23 13:54:23 +01:00
Sybren A. Stüvel
0974c460e8
Added exception drawing code.
...
It's rather primitive, but at least the GUI reflects that something has
gone wrong.
2016-03-23 13:46:19 +01:00
Sybren A. Stüvel
09e9c02d65
Asyncio loop kicked via modal operator.
...
The old way (using a scene_update_pre handler) turned out to work due to
a bug in Blender, where scene_update_pre was called too frequently.
2016-03-23 13:45:28 +01:00
Sybren A. Stüvel
ed9821afa6
Bit more overview/intro in the readme
2016-03-23 12:06:28 +01:00
Sybren A. Stüvel
e9b44ef273
Added design section to README.md
2016-03-22 15:56:22 +01:00
Sybren A. Stüvel
37ce6cd2b4
Updated README to reflect the current state of the addon.
2016-03-22 15:23:18 +01:00
Sybren A. Stüvel
ac29d49450
Per-BlenderID-user cache.
...
Different users might have different access rights, and thus access
to different information.
2016-03-22 15:20:22 +01:00
Sybren A. Stüvel
af7883da73
indentation oops
2016-03-22 14:51:46 +01:00
Sybren A. Stüvel
1860c27c5d
Described some not-yet-necessary features as "in the future we might..."
2016-03-22 14:49:36 +01:00
Sybren A. Stüvel
fb84b2892e
Store UUIDs in the image data block
2016-03-22 14:49:03 +01:00
Sybren A. Stüvel
394a4f4764
Include 'map type' in filename
...
Map types are 'col', 'spec', 'bump' etc.
2016-03-22 14:47:55 +01:00
Sybren A. Stüvel
dc4677ed04
Removed single-threadedness from executor
2016-03-22 14:35:44 +01:00
Sybren A. Stüvel
c2ee865cff
Always clear images before stopping the GUI operator
2016-03-22 14:35:33 +01:00
Sybren A. Stüvel
9e939dfd03
Added some filename sanitation
2016-03-22 14:31:34 +01:00
Sybren A. Stüvel
c5f66ec0d9
Removed time dependency in asyncio loop kicking.
2016-03-22 14:31:34 +01:00
Sybren A. Stüvel
6b84dcf282
Added downloading of all files belonging to one texture.
2016-03-22 14:31:29 +01:00
Sybren A. Stüvel
db10201cd3
Faster cancelling of thumbnail downloads.
...
I forgot to pass the 'future' object to the download_texture_thumbnail
function, and as such it wasn't notified of cancellations.
2016-03-22 11:30:00 +01:00
Sybren A. Stüvel
c679809c18
Removed some unnecessary code.
2016-03-22 10:51:45 +01:00
Sybren A. Stüvel
0b4a1a7098
Only download a file once per Blender session.
2016-03-22 10:41:35 +01:00
Sybren A. Stüvel
5f3a83737c
Slight tweak
2016-03-21 17:43:25 +01:00
Sybren A. Stüvel
3352d405c9
Redownload if file size is not what it should be.
2016-03-21 17:36:43 +01:00
Sybren A. Stüvel
7df27426ef
Caching of texture thumbnails.
...
Based on HTTP headers stored in sidecar files.
2016-03-21 17:21:51 +01:00
Sybren A. Stüvel
addb7b90bb
New location of wheel files
2016-03-21 15:51:38 +01:00
Sybren A. Stüvel
16d29050df
Ignore more
2016-03-21 15:51:29 +01:00
Sybren A. Stüvel
e4cd6643b0
Removed unused code.
2016-03-21 15:50:03 +01:00
Sybren A. Stüvel
6bf8300948
Don't attempt thumbnail download when we receive an error HTTP code
2016-03-21 11:47:29 +01:00
Sybren A. Stüvel
5c2beaf7b2
Browsing now uses node objects, instead of just node UUID
...
This made the browsing code slightly simpler, and reduces the number
of Pillar queries. The list of nodes visited to end up at the current node
is also stored, so that we can easily go back up.
2016-03-21 11:46:47 +01:00
Sybren A. Stüvel
5f43b355b0
Renamed blender_cloud.cache to blender_cloud.http_cache.
2016-03-21 09:32:10 +01:00
Sybren A. Stüvel
5039a33053
Switched caching to CacheControl + pillar module usable without Blender
...
Making the blender_cloud.pillar and blender_cloud.cache modules usable
without Blender required some moving of the code, from __init__.py to
blender.py.
CacheControl requires the lockfile package, which increases the number
of bundled wheel files to 3. Those are now managed by
blender_cloud.wheels.load_wheels(). The wheels are only loaded if the
Python installation doesn't yet contain the required packages. This allows
development with virtualenv-installed packages, debugging in the IDE, etc.
2016-03-18 16:53:52 +01:00
Sybren A. Stüvel
8fbdf456cd
Change of plans: caching is done with CacheControl.
...
Requests-Cache ignores HTTP cache control headers, violating the HTTP
protocol.
2016-03-18 16:38:27 +01:00
Sybren A. Stüvel
9267faac8e
Add caching at HTTP level.
...
This uses Reqests-Cache, which should be installed on the PYTHONPATH or
provided as a wheel in blender_cache/requests_cache-*.whl. In the latter
case, it'll be automatically added to sys.path.
2016-03-18 14:03:25 +01:00
Sybren A. Stüvel
e15f4d1573
Added design notes for communication & file structure
2016-03-16 15:50:57 +01:00
Sybren A. Stüvel
aeae24e6bc
Allow the Blender Cloud browser to run full-screen
...
It no longer requires a 3D View, but can be run everywhere.
2016-03-15 17:09:27 +01:00
Sybren A. Stüvel
e16f069eb3
Added downloading of textures when clicking on a menu item
...
For this I made the operator a state machine; when its state is set to
'QUIT' it'll quit. Different states can have different OpenGL drawing
functions.
For now, to help development, the state is drawn in the bottom left corner.
2016-03-15 15:44:19 +01:00
Sybren A. Stüvel
5730f43848
Allow downloading to non-existant directory
2016-03-15 15:35:28 +01:00
Sybren A. Stüvel
7520421083
Download in larger chunks
2016-03-15 15:35:18 +01:00