- 博客(55)
- 资源 (4)
- 收藏
- 关注
原创 通过相同三个数字的简单计算获得六
文章目录前言答案012345678910前言网上有道题目还有意思的,我解这道题花了蛮长时间。题目如下,请利用加减乘除等简单运算来使下式成立。0 0 0 = 61 1 1 = 62 2 2 = 63 3 3 = 64 4 4 = 65 5 5 = 66 6 6 = 67 7 7 = 68 8 8 = 69 9 9 = 610 10 10 = 6我感觉比较难的应该是0, 1...
2019-12-29 01:37:03
726
原创 谈谈流程开发中的浪费
背景不久前看了张志欣的《特效行业的开发黑洞》,感触颇深。作为流程设计开发的从业者,我也是深以为然。当然文中提到的许多概念和观点我就不一一细聊了,这篇就只是把流程开发中的浪费单拿出来谈谈。前言对于流程大家的想法都是怎么简单怎么来,这是一个基本共识。无论从artist角度,从PMD角度,从流程开发从业者角度来说,这都是一个必须而且必要的事情,但是怎么做减法这是一个需要探讨的问题。对于大多数的C...
2019-03-31 13:25:34
488
原创 随机点云遍历(二)
之前玩了一套遍历点云的东西,当时想法很简单,就是想从一个点开始遍历所有点。(具体点这里)最近抽了点时间重新设计了一套遍历点云的东西,见下图。这次就不放动图了,毕竟有孩子的人就没有什么自己的时间,制作动图也就显得很奢侈了。随机点云遍历还挺好玩的。...
2019-01-02 21:46:39
1386
2
原创 Katana instance for PRMAN
前言前段时间在 katana 里测试 instance 遇到了一些坑,闲暇之余记录一下。最灵活的方法第一种方法:利用 katana 自带的 CopyLocationToChild1 把需要 instance 的物体 copy 到对应的层级,然后设置对应的 translate, rotate, scale 属性。优点:这种方法异常简单,写在 OpScript 里运行也异常的快。灵活性相当高,...
2018-10-11 10:12:46
544
原创 闲扯瞎聊
背景来厦门的Base FX也有一年零两个月了。从一开始的懵懵懂懂,到现在的一知半解也算是有了那么一点点进步。这段时间进步不大,但也是拼足了九牛二虎之力才完成的。改变一点点进步主要来自那么几个方面:英语有了小小的进步,以前只是能读,而且只能读懂类似儿童读物的编程文档。现在读没什么变化,但起码能脱口而出初中水平的口语,而且不用太担心别人听不懂(毕竟还有肢体语言)。另外但凡有点事,就得写英文t...
2018-09-21 00:30:21
689
原创 理想主义者眼里的 pipeline
背景之前的文章里留了一个关于为什么 CG 的 pipeline 的分工要尽可能精细的问题,但一直也没写。感觉对于这么一个显而易见的问题,应该很多人在心里已经有了答案。那么对于已有答案的东西,是不是就没有写的必要了呢?那么在尝试往下面看之前,我试着在心里先问自己几个问题。细分到底有没有必要?细分应该遵循的依据是什么?细分后,干活儿是不是变得轻松了?细分是否有终点?伪正文有些...
2018-05-21 23:53:42
430
1
原创 layout, animation的取舍
前言layout 顾名思义就是做某些事情前的计划或设计。放在动画制作的环境里,它的意义可以更加明确一些。比如,我们可以说 layout 是设计整部电影的镜头,环境和节奏。animation 顾名思义就是动画。那么动画的焦点就在于表演。这个表演的意义就比较广泛了,这里就先暂且不说。layout 与 animation 的定义看起来那么精确,为什么在制作的过程中,我们却经常搞混这两者的关系呢?...
2018-03-17 11:12:19
989
原创 pipeline, dataflow, workflow 简述
如果你所在的团队是一个学生团队或者小的团队,是没有必要去搞清楚这三者的区别的。因为在这样的团队里,沟通不是问题,时间不是问题,效率不是问题。阻碍一个大团队的发展,一般是由于前面所提的三个方面相互制约和影响的。
2017-08-17 00:26:55
7002
4
原创 简述CG数据流
流程(pipeline)实际并不是一两句话能够说得清楚的东西。但是仍然可以被定义为事物进行中的次序或顺序的布置和安排,换句话说可以理解为完成一件事的步骤。做程序的人对这个概念就很熟悉了,有点像算法。单单讲算法,那很多人就会提出异议,觉得算法是针对计算机来说的,而流程是针对一群人如何完整地完成一个产品或者一件事情来说的,它们应该是不同的。
2017-02-14 01:27:18
1177
2
原创 houdini节点ray的一点改进(原理
前言之前写了一篇 houdini节点ray的一点改进 。当时因为太晚也就没有写原理,仅仅只是把对比的效果整理好发了上来,后来就一直想抽点时间把原理写一写。
2016-12-27 00:09:54
2039
原创 简述诱导排序(induce sort)
最近跟小焦看了个很好玩的算法,叫诱导排序(induce sort)。它设计得很精妙,通过排好序的C*,就能正确快速排好C-和C+,而且不会有漏掉和重复的可能。
2016-12-17 18:38:40
2373
原创 houdini节点ray的一点改进(多图
背景具体时间不记得了,大概是几个月前在玩 houdini 的时候偶然发现 ray 和 cookie 的适用范围有些局限性,于是忍不住搞了搞,居然给我找到了一个能够稍微扩展 ray 的功能的方法。问题根据 ray 的说明,它是能够把一个模型沿着法线投射到另一个表面的功能。如下图:那么它是否能处理如下模型的投射呢?我测试了一下,最好的效果是开法线映射,并且打开最远点映射。效果如下图:红圈部分是映射不完美
2016-12-16 00:56:06
4077
2
原创 浅谈RBF在角色绑定上并不好用的原因
前言认识 RBF 是去年在查资料的时候偶然在 autodesk app store 上看到了(刚才搜了一下居然下架了)。当时搜了搜关于它信息,于是就找到了下面这篇。但这都不是关键,当时由于时间有限,匆匆瞟了一眼原理。就把之前写的一个工具改用 RBF 进行测试了
2016-09-19 23:49:57
1487
原创 浅析疯狂动物城的制作流程
前言今天拜读了houdini官网发布的疯狂动物城,整篇文章我基本是跪着读完的。这篇文章讲的是 houdini 在疯狂动物城制作流程中的作用,但即使是这样感觉还是太震惊了。
2016-09-02 23:42:07
4434
原创 环节衔接自动化的一些思考
概述以前总担心自动化会带来大量的生产浪费。这种担心主要源自于一旦有些工作自动化以后,有可能会发生使用过度的情况,从而导致一些资源的浪费。现在觉得这种担心是多余的。
2016-08-24 11:13:41
971
原创 蛋疼的事情
一直忙着干公司的活,已经快一年没有更新博客了。说来惭愧,这么长时间里一直都在做着很基础的事情,也没什么能够分享的。今天来是吐槽一下vs的。公司的电脑里装了两个VS,在编译的时候总是出现各种各样的问题,连调试都经常调试不了。最近在做一个检查法线是否向外的小工具,功能很容易就做出来了。但是为了让检测的速度更快点,就利用了多线程,结果多线程就一直出问题。连一个空的for循环做多线程都会引起maya崩溃。排
2016-05-09 21:31:18
603
原创 maya立体相机的物镜偏移浅析
背景最近立体制作部门给了几条公式,让我写个立体参数计算器。很快就做完了,公式跟论文里几乎是一致的,这里就不写了。但是我发现在 maya 的生产制作过程中,根本没有论文提到的平移物镜相关的概念。那么论文里的平移物镜在 maya 里就没有了吗?分析如果立体平行相机没有发生任何物镜平移的话,理论上零平面的计算就应该只跟两个摄像机之间的间距有关。而在 maya 里,零平面是单独利用 Interaxial S
2015-08-28 15:02:22
2720
原创 基于模型形状修改后输出的displacement与原模型匹配的问题
一般模型做完以后,都交由绑定去弄,然后就开始做动画。而接下来事情发生在动画已经完成了,模型才开始输出置换贴图。不知道模型的制作环节哪里出现了岔子,模型在做置换贴图的时候,把原始的模型形状进行调整了。那么输出的置换贴图就不能跟原始的模型吻合了。
2015-08-21 20:37:34
1506
原创 分析Maya摄像机导入Nuke的方案
作者是想告诉我们 Nuke 的 Camera (包括最新的 Nuke 9.0)默认是只支持 Horizontal Gate 模式的。所以你在 maya 做动画的时候只用 Horizontal Gate 模式,那肯定是一点问题都没有的,作者也不会写得那么辛苦。但是现实总是残酷的,艺术家们对自由的渴望是无止境的,所以Fit Resolution Gate 通常会被改成 Fill Gate 或者 Vertical Gate
2015-07-15 23:57:25
9935
原创 随机点云遍历构造成树
背景点云在空间随机分布的样子还有点像星空。神秘而独特,但是如果从某一个点出发,把所有的点根据树形结构连起来会是什么样子的呢?
2015-06-13 18:14:10
2118
原创 多进程操作sqlite的数据同步问题
背景最近写在多进程任务里操作sqlite的时候,发现数据同步是个头疼的问题。因为sqlite本身并不支持存储过程(procedure),它本身也没有可以单独调用对数据表的锁(可能是我没找到,如果有人知道还请赐教)。这就意味着在执行一系列修改数据库命令的时候会被打断,造成最后存在数据库中的数据失真。 比如说,你的银行账户里还剩100元,你存入200元,支出300元,存入100元,假设它们都是几乎同时
2015-05-26 12:17:20
17491
2
原创 浅谈RBF在CG上的应用
背景之前开发过程中遇到了函数设计的问题。比如说两个参数变化,要完成四种不同状态的切换。这时候就需要设计四个从两个参数映射到对应状态分量的函数(个人称之2*4公式)。随着参数和状态的增加,需要设计的内容会急剧增多。工作量也会大的吓人。案例下面就举个简单的例子: 图示是两个参数和六个状态。由图所示,大小和上下参数中间是有明显过度的。得出的函数可能是类似ax1+bx2ax_1+bx_2、(1−ax1
2015-04-17 18:54:32
1851
1
原创 fix bug of Arnold: missing either uvlist or uvidxs
背景问题分析分析ass格式分析其他格式uvlist转换过程确定问题解决问题背景在使用Arnold渲染的时候,有时无论给渲染的物体上任何材质都会发绿色的光。在输出窗口上会输出missing either uvlist or uvidxs的字样。这种情况下,只能通过给物体重新分UV才能解决。 但是在生产过程中,到渲染环节的时候,物体贴图是已经画好的。这时候如果要重新分UV就需要跟原UV的结
2015-03-30 13:01:22
4109
原创 Houdini判断是否polygon
当需要判断节点内是否含有polygon,或者是否完全由polygon构成。可以很简单的写成一行。print 'Has polygon:%s' % (True in [prim.type() == hou.primType.Polygon for prim in hou.pwd().geometry().prims()])print 'Is polygon:%s' % (not False
2014-03-31 13:11:19
1268
原创 面包WIP2
经过了一个礼拜的调整,现在面包成下面这个样子。节点没有啥大的变化,主要还是材质上下了点功夫。当然渲出来的时候颜色还是挺丑的,后期调了一下颜色,就能看了。感谢SHP在材质上的指导。感谢SHP在材质上的指导。节点没有啥大的变化,主要还是材质上下了点功夫。当然渲出来的时候颜色还是挺丑的,后期调了一下颜色,就能看了。
2014-03-21 15:27:54
1099
原创 面包WIP
写了一个月pipeline,忙到昏天地暗。天天回家都在想关于流程的事情。还好现在也告了一个段落。终于开始搞第一个测试,先上图。上个节点图。还有些细节没搞定。比如面干(面包比较干),包皮(面包的皮)褶皱太多。参考地址:http://renderman.pixar.com/view/pixar-ratatouille-shading-food接下来会继续改善。
2014-03-12 14:21:16
1105
原创 Maya Standalone & Alembic tips
问:写好的代码,为什么在mayapy下可以正常运行,独立安装的python执行不了?答:下载与Maya对应版本号的Python。问:mayapy与python有哪些不同?答:主要是环境变量不太一致。上网搜吧,很多帖子都有写。问:maya 2012 standalone导入mental ray出错怎么解决?答:用pymel导入mental ray完全不会报
2014-01-26 14:54:21
2838
2
原创 捣鼓tactic(一)
最近想玩一玩tactic。玩了一会儿tactic小团队版,发现图片上传不了,视频上传不了。然后很多功能都没办法玩,只能干看着报错框一遍一遍地弹出。然后下载了tactic的中团队版,发现手上这台破机器不支持intel-vt技术,不支持虚拟机64位模式,所以中团队版流产了。所以就只剩下非常灵活,而且超牛逼的,需要自己各种手动配置的大团队版。tactic的大团队版对win7支持不好,安装过程老报错,
2013-12-05 23:37:55
1285
3
原创 求绕圆心的向量
1.背景在CG制作中经常会使用到旋转场。比如龙卷风、漩涡的制作等。也就是需要求围着坐标中心的切向量。如下图:2.制作方法通常会有几种方法:三角函数法、矩阵法2.1.三角函数法根据切向量的定义,如下图 可以知道切向量等于 magnitude * tan(θ+90°),而θ = arctan(y, x)在houdini中链接如下图: 这个式子因
2013-10-24 11:19:28
1654
原创 houdini学习之cookie做碎块
houdini自带工程文件有用cookie做碎块的例子,叫BreakingRock。从节点分布上看挺有美感,分析了一下大概由下列式子构成:1.A-B-C-D-E-F2.A∩B3.(A-B)∩C4.(A-B-C)∩D5.(A-B-C-D)∩E6.(A-B-C-D-E)∩F把上列式子相加即为 A。这个式子可以无限扩展下去。
2013-09-27 14:09:22
2173
3
原创 CG工具集
这两天玩了一下 csdn 的 git 感觉还真不错。除去google code 的不稳定,终于有了一个存代码的地方了。再也不用每次都打开 evernote 找代码了。: - ) 现在工具集里还没有牛逼的工具,多是日常用的东西。总结了一下大概有 快速重命名工具、检测EXR的工具、Houdini批渲工具(跳过错误帧)、Maya的一些繁琐操作的批处理工具、Nuke拖
2013-09-10 17:44:03
1213
原创 python批量重命名
做CG的经常要渲染序列帧。有时候因为工程很赶,还没有项目规范就已经开始渲染文件了。所以这时候都根据一般命名规则对序列帧进行命名。有些比较懒的可能就随便命名一下就输出了。在最后进入合成环节的时候,会发现很多文件的命名不统一,于是就有大量的文件需要重命名了。本人正好遇到了这种情况。其中一个镜头,八条瀑布渲染分两层,分左右眼,共120帧。一共就是3840张图片。如果用XnView来进行批量重命名,我
2013-09-03 11:55:19
1570
原创 快速修改alembic相机的分辨率
Maya与Houdini互导3D相机原理上有两种方法:第一种(不支持立体相机):在Maya中新建两个相机,并且把这两个相机的分别利用旋转和朝向约束对齐到立体相机的左右眼。删除约束,与左右眼相机分别建立父子约束。把新建的相机属性链接到立体相机的属性里。最后把新建的相机导出成fbx格式,在Houdini中导入FBX。(好麻烦额。。。)第二种(支持立体相机):直接把立体相机导出成abc格
2013-08-24 11:52:43
2909
原创 Houdini点云缩放物体
粒子替代太近时会出现替代物之间的穿插。Houdini可以很方便地解决这个问题。利用点云,计算出最近点粒子的间距,赋给缩放值。
2013-07-15 13:28:50
3850
原创 Houdini下的俄罗斯方块(一)
在猫大的建议下玩了一下俄罗斯方块。目前实现了堆积功能,不过仍有些BUG需要调整。主要利用了Solver解算器,对碰撞进行了检测。理解Solver还挺麻烦的。通过这次练习,对一些节点的功能有了更深入的理解。
2013-07-11 14:45:34
1943
1
原创 Nuke下实现UV 贴图重复(整数形态)
在Maya 程序中有 UV重复纹理贴图功能:在Nuke 中找不到现成对应的贴图重复功能。尤其在贴图需要大批量的重复度时,尤其麻烦。以下就是 Nuke节点加上自定义的表达式,实现贴图重复的功能。目前仅能支持自然数序列的 UV重复度。需要重复的图形:创建两个节点,一个为Mirror,另一个为 ContactSheet。分别命名如下图:
2013-06-06 21:40:34
5884
2
原创 Maya Templates
Maya每个节点都会带有一个Attribute属性界面。这个界面的定义在 maya安装目录下的 scripts\AETemplates 。属性界面操作常用命令:editorTemplate、setParent、frameLayout、connectAttr等等。属性界面的基本原理:1.Maya启动时,不加载任何属性界面。2.若选择一个节点,并且调出了属性编辑器。
2013-05-26 15:57:29
1422
原创 Nuke中解决渲染闪烁的办法
在3D制作时可能会遇到渲染的素材有闪烁的问题。从图像明度的角度来分析,它们大部分都是整体明暗度阶跃变化造成的。所以要想要让素材减少闪烁就需要平滑它们的整体明暗度曲线。思考到这里基本上就有很多解法了。 现在介绍一种简单的方法: 1.创建 CurveTool 节点,并连接到原始素材上。 2.调节 Curve Type 为 Max Luma Pixe
2013-05-18 13:55:35
6547
3
原创 个人三年历程
前几天看到一本书是介绍软件工程质量控制的。经过很长时间的思考,我才明白软件工程质量控制存在的地方是比较大的软件开发团队。这个团队会配备有10个以上的人员。配备专门的需求分析师和项目实施经理等。书中还说当一个团队里开发人员人数不超过5人时,最高效的方式就是直接沟通。 三年来,我一直在探索软件工程质量控制在项目中的实践和应用。起先接触的第一本书是《人月神话》(以下简称《人月》),书里把软件开发的难度讲得比较清楚,就是实际需求与软件构造的差距。(这是我个人的理解,具体可以借鉴软件开发的核心问题就
2011-03-21 23:25:00
1223
2
易经学习辅助软件
2013-04-04
清理Chrome缓存数据
2009-06-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人