感觉 #Blender 设计越来越用心了,脚本一直以来也很方便 🤔
现在为 VFX / Video Editing / 2D Animation 有专门的分类支持,很方便
现在为 VFX / Video Editing / 2D Animation 有专门的分类支持,很方便
This media is not supported in your browser
VIEW IN TELEGRAM
ffmpeg -i tik0004-0208.avi tik4-208.mp4Forwarded from dnaugsuz
🤔 这样啊,那么我再举个栗子def zip_with_next(xs: iter):
a = next(xs)
while True:
try: b = next(xs)
except StopIteration: break
yield (a, b); a = b
def generate_chain(initial_base, get_item, next_base):
base = initial_base
while True:
try:
yield get_item(base)
base = next_base(base)
except Exception: break
links = ("a", ("b", "c"))
flat_links = generate_chain(links, lambda t: t[0], lambda t: t[1])
list(flat_links) == ['a', 'b', 'c']那么只需
list(zip_with_next(flat_links)) == [('a', 'b'), ('b', 'c')]可以拿到上一项引用?(对于 1,2 项只需
zip_with_next([initial] + ) 即可指定初始项目)第一个是 Blender workbench render,后两个是新的 EEvEE,最后一个加了 freestyle 线框
Forwarded from immmortal
整理了一下昨天和今天回形针相关事情的时间线:https://www.notion.so/8871b7ce0ab642fc94eaf83806fe6de8
ArXiV on Notion
回形针事件梳理
一篇成文的评论:回形针辱华了吗
🤔 以前不懂事的时候连 callback 都无法理解,现在想想 callback 就是组合出 Task 的一种方式
Java 的 anonymous subclass instance 可以 capture 到 effective final 的 局部变量,从而能够把必须的一些信息(如当前用户什么的)给密封到 Task 的结束部分里;整个 Task 则是由库代码和用户代码共同构成的。
这个操作必须依赖闭包才能完整实现,否则许多情况下 callback 就没法实用了。
不用 Task 设置
所以可以用 await/async,自动把嵌套回调利用可暂停执行的函数,“转化”为 callback 的形式,依然可以保留原有的串行风格
Java 的 anonymous subclass instance 可以 capture 到 effective final 的 局部变量,从而能够把必须的一些信息(如当前用户什么的)给密封到 Task 的结束部分里;整个 Task 则是由库代码和用户代码共同构成的。
这个操作必须依赖闭包才能完整实现,否则许多情况下 callback 就没法实用了。
不用 Task 设置
then 操作的话,强行依赖返回值会必要求值时阻塞,影响线程里其他任务的工作所以可以用 await/async,自动把嵌套回调利用可暂停执行的函数,“转化”为 callback 的形式,依然可以保留原有的串行风格