Tuesday, July 23, 2013
Hooray! UC Doctoral Scholarship
After a few months of waiting, I finally heard back from the scholarships office today: I've been awarded a UC Doctoral Scholarship for the next 3 years :) Yay!
Thursday, July 11, 2013
Woops!
Apologies for any broken/missing images on some of the posts here.
Apparently I managed to accidentally clobber them when adjusting the wrong settings somewhere when trying to figure out why the heck the folder associated with these had just jumped all the way up to the top o the list all of a sudden (it should've been at the very bottom and out of sight!). Gah!
In the meantime, I'm going back through trying to restore broken links (by manually re-adding the offending pics). Fortunately they're all still there, though annoyingly there's no one-click "link them all back up again" magic button :/
EDIT (2am): Phew! I've just finished going through checking for broken image links and getting everything fixed up again. Along the way, I took the chance to make a few images a bit larger too for good measure :)
If you do find any broken image links/placeholders, please let me know and I'll try and fix them. Strangely, there were still a few images which I seem to have uploaded, but don't seem to be attached to any posts with broken links (at least the ones I've checked)...
Apparently I managed to accidentally clobber them when adjusting the wrong settings somewhere when trying to figure out why the heck the folder associated with these had just jumped all the way up to the top o the list all of a sudden (it should've been at the very bottom and out of sight!). Gah!
In the meantime, I'm going back through trying to restore broken links (by manually re-adding the offending pics). Fortunately they're all still there, though annoyingly there's no one-click "link them all back up again" magic button :/
---
EDIT (2am): Phew! I've just finished going through checking for broken image links and getting everything fixed up again. Along the way, I took the chance to make a few images a bit larger too for good measure :)
If you do find any broken image links/placeholders, please let me know and I'll try and fix them. Strangely, there were still a few images which I seem to have uploaded, but don't seem to be attached to any posts with broken links (at least the ones I've checked)...
Tuesday, July 9, 2013
Git Tip - Reverting latest bad commit(s), and which have also been pushed already
By and large, working with Git is "not that scary" (TM) once you figure out a safe subset of commands which will let you achieve what you want to do during a typical work session.
However, from time to time, especially when effectively "working blind" via commandline, things go wrong. Really really wrong.
However, from time to time, especially when effectively "working blind" via commandline, things go wrong. Really really wrong.
Monday, July 8, 2013
WIP Bugfix Patch - Displaying shortcuts set using WM_OT_context_* operators
This evening, I decided to spend some time working on a (what I assumed) would be a neat little fix to a problem that's been bugging me for a while (and apparently has also been noticed by others too, as can be seen in this bug report).
Namely, there are many properties that have hotkeys assigned to toggle/cycle through their values, but there is no easy way to see what hotkeys have been assigned for that purpose. Sure, you can fire up the keymaps editor in the User Preferences, but it's quite tricky digging around in there to find what you want, if you even know where to start looking...
Namely, there are many properties that have hotkeys assigned to toggle/cycle through their values, but there is no easy way to see what hotkeys have been assigned for that purpose. Sure, you can fire up the keymaps editor in the User Preferences, but it's quite tricky digging around in there to find what you want, if you even know where to start looking...
Friday, July 5, 2013
Depsgraph - Overview of Design + Goals
Phew! I've just finished writing up a doc giving a rough overview of where we're going with the depsgraph design, and the types of things it aims to do (i.e. problems it should solve, etc.). There may be a few things I've glossed over here and there (and it may ramble a bit at the start a bit), but it should go a long way towards explaining what's going on.
Check out (and join) the discussion and document (check the attachment there) over on the bf-animsys mailing list:
Saturday, June 29, 2013
Depsgraph - Optional Branches with Runtime Switches
One source of confusion for beginner
riggers sometimes is that even though a particular dependency path
may not actually be currently active, from the perspective of the
dependency graph they are still actively contributing to a cyclic
dependency situation. Much of this is due to the fact that the old
depsgraph could only really schedule things up by looking at the full
set of dependencies and create a static ordering that could work in
all cases.
This post explores a potential solution
to this problem and how it could be integrated into the framework
we've been looking at.
Thursday, June 27, 2013
Depsgraph - ID Groups
In this post, we take a second look at one of the issues from the Granularity Problem: that of “strongly connected components”. That is, a set of nodes which, for all intents and purposes end up referring to each other.
Depsgraph - What's in a Node?
Our previous idea about how to solve
the granularity problem raises an important question: What exactly
should nodes in this system look like? What do they represent?
Monday, June 24, 2013
Depsgraph - The Granularity Problem
In today's post, we look into one of the problems affecting Blender's current Depsgraph: the granularity problem (also known as the “Why can't I use a bone as a driver for another's constraint influence?” problem). Another related problem arising from this is the “phantom cycles” problem (i.e. the, “Huh? It keeps telling me there's a cyclic dependency here, but these things aren't even related!?”).
Depsgraph - Know thy enemy
As promised in my weekly report yesterday, this is the first in what will be a series of posts documenting various thoughts and snippets of ideas during the development process for a new Dependency Graph engine for Blender.
As well as serving as rolling documentation of the ongoing work and how various design "quirks" (as they'll inevitably be viewed in retrospect) came about, these posts aim to serve two other important roles. From the perspective of the wider community, it provides greater visibility for this project and/or progress made, which may otherwise be difficult to grasp (since it is not really a flashy front-end tool that users can directly hold in their hands). However, more importantly, writing these posts mainly helps/forces me to really flesh out some areas of the design which I may otherwise forget or gleefully gloss over when a suitable solution comes around. It has been said by many notable people (including various scientists, engineers, and academics) that the act of writing down your thoughts can help clarify and refine those ideas, by forcing you to figure out how to express them in a concise manner (and in the process clarifying/resolving ambiguities), thus moving these from merely nebulous figments of your imagination to somewhat physical (or concrete) entities.
So, welcome along for the ride, as the great Blender Depsgraph project gets underway at last.
(Note: some of these posts have been sitting around for a while now – with delays and other things getting in the way – so dates mentioned are somewhat inaccurate).
Wednesday, June 19, 2013
Qt Line Rendering Differences...
For about a year now, I've been somewhat baffled about a some annoying differences between the way sub-pixel line strokes with < 100% alpha assigned and drawn using QPainter differed between Windows and Linux (i.e. "cross platform" software in my books :P)
A few minutes ago, I finally stumbled across the answer ([1], [2]), while checking out a solution to another problem (namely, how to replace the scrollbars - or better still, access their internals to figure out the position of the trough and thumb in a cross-platform way, and use that info to figure out how to map a indicators/target locations to that - in QAbstractScrollAreas/QScrollAreas and their subclasses such as all the Item-View classes). Apparently on Windows, they use a custom rasterer on Windows, while directly using X11 on Linux. No wonder just changing flags had little to no overall effect on fixing the problems I was having!
Links
[1] http://www.zestymeta.com/2013/03/qt-and-peril-of-multi-platform.html <- the post which alerted me to this problem in the first place
[2] http://blog.qt.digia.com/blog/2009/12/16/qt-graphics-and-performance-an-overview/ <- confirmation from the source...
A few minutes ago, I finally stumbled across the answer ([1], [2]), while checking out a solution to another problem (namely, how to replace the scrollbars - or better still, access their internals to figure out the position of the trough and thumb in a cross-platform way, and use that info to figure out how to map a indicators/target locations to that - in QAbstractScrollAreas/QScrollAreas and their subclasses such as all the Item-View classes). Apparently on Windows, they use a custom rasterer on Windows, while directly using X11 on Linux. No wonder just changing flags had little to no overall effect on fixing the problems I was having!
Links
[1] http://www.zestymeta.com/2013/03/qt-and-peril-of-multi-platform.html <- the post which alerted me to this problem in the first place
[2] http://blog.qt.digia.com/blog/2009/12/16/qt-graphics-and-performance-an-overview/ <- confirmation from the source...
The Depsgraph Refactor Project
It's official, the great depsgraph refactor is under way at last!
This diagram shows some of the key components or classes of issues that we'll need to be tackling with this system to get it in shape for the types of things we need from it. Orange are for issues that will have direct impact on users (i.e. stuff will now work better and faster), Grey is stuff that is mainly useful for BlenderDevs when writing tools and other stuff.
The Bluish box (i.e. looping over objects-datablocks, and evaluating updates by going downwards from there is a slightly contentious point. IMO we need to do this or else we can't really achieve the generality and granularity objectives - we'd effectively still be stuck in the stone age (where we still end up keeping some ever-bizzare restrictions). The full details of what exactly should replace it though is something that's still heavily WIP, but I do have some preliminary ideas I'm currently toying with.
This diagram shows some of the key components or classes of issues that we'll need to be tackling with this system to get it in shape for the types of things we need from it. Orange are for issues that will have direct impact on users (i.e. stuff will now work better and faster), Grey is stuff that is mainly useful for BlenderDevs when writing tools and other stuff.
The Bluish box (i.e. looping over objects-datablocks, and evaluating updates by going downwards from there is a slightly contentious point. IMO we need to do this or else we can't really achieve the generality and granularity objectives - we'd effectively still be stuck in the stone age (where we still end up keeping some ever-bizzare restrictions). The full details of what exactly should replace it though is something that's still heavily WIP, but I do have some preliminary ideas I'm currently toying with.
Subscribe to:
Posts (Atom)






