前言
又好久没有更新博客,最近感觉自己逐渐开始失去更新博客的动力。
今天大年初一,抓紧时间将文章写好。
最近想学习的东西6越来越多,但是真正去学习的时间却越来越少。
1月份大多数时间都是在测试Ziva插件,这个过程遇到了很多的坑,走了很多的弯路,感觉自己的经验还是严重匮乏。
当然这个过程中也有承担一些其他开发的任务。
一月份总结
VertexConstraintDeformer
这个插件是我第一次尝试利用OpenMaya的API来开发Maya的变形器。
也是为了给Ziva的流程添砖加瓦的产物。
弄这个东西花费了我一个多星期的时间,到头来就是本末倒置了。
不过我觉得研究出来也是成就感满满的事情。
当时我们研究Ziva插件要如何才能更好地结合到真实的使用当中,经过追光大神的指点,我们认为需要对Ziva骨架肌肉进行切分,分段模拟比较适合。
然而切分模型会弄乱模型的点序号,导致Blendshape无法正常起作用。
而这里我要开发的就是独立于点序号之上的Blendshape效果,更详细的文章内容可以参观我的博文。
虽然最后这个开发并没有发挥多大的用处,不过这个过程学习到的东西真的是受益匪浅。
另外也为我后面进一步的开发OpenMaya相关的用法奠定了基础。
Cam_Route_Manager
这个插件的开发是针对于摄像机那边的工作所做的。
具体的详情其实我也写在了公司的花木马当中,还需要年后将相关的内容搬运出来。
其实开发这个东西的时候,我正好也在开发自己的 UI2CG 2.0 工具。
我所想要的开发效果就是能够开发出可以点选的面板,为此进行尝试。
针对Item进行多重信息的绑定。
这么说可能有点复杂,到时候有图有真相,其实就和maya的ChannelBox差不多。
点选Item的时候可以在属性面板上面显示Item的相关属性。
当然这次开发也遇到不少的坑,特别是复选框勾选需要BlockSingal的支持,真的让我大开眼界。
另外还是要吹一波Stackoverflow,很多问题都是在上面解决的。
Ziva_Panel
这个东西其实是讲Ziva相关的功能全部集成到一起的界面而已。
本质上很多代码我们先前就已经写好了,只是调用起来,开发难度也不是很大。
不过我为了让它的功能更加强大,又在各个方面做了很多努力。
为了加快皮肤的制作效率,我想到可以通过获取外层模型和紧身衣模型的边界,然后通过边界来生成边界模型。
然而在边界线的选择上研究好长一段时间,最后我发现polyselect当中有相关的选择过滤功能。
另外选中边界之后是模型所有的边界,还需要将它们逐一过滤成单个循环边的边界。
过滤出各个边界模型之后就可以通过他们之间的边序号对应来生成单个面。
最后就是将生成的面逐一合并即可。
另外为了更好的给模型添加Attachment,我还想到了通过体积去选择相关的点。
再次感谢强大的Stackoverflow,我再次通过这个平台找到了相关的解决方案。
其实说来也很神奇,空间上点在一个模型的内部的时候,只要这个模型是封闭模型。
那么这个空间上点在任意位置发射射线都必定与封闭模型产生奇数个交点。
倘若是在模型之外发射射线的话则必定是偶数个交点。
一开始我还没接受过来,在脑海里想了一下,似乎这个东西就是那么神奇。
利用这个方法可以遍历模型上所有的点来进行过滤,从而筛选出在另一个模型上顶点。
遗憾的是遍历所有的顶点始终是个头疼的效率问题。
一月总结
一月份感觉自己做了很多东西,也感觉自己没做什么。
最主要还是没有好好管理好自己的安排,为此我在某一天看了个视频之后心血来潮,要拿起软件来管理好自己的时间。
然而我重新去翻找相关的时间管理工具,感觉市面上没有一款是完美贴合自己的需求的。
这个过程中也是找到了几款不错的APP,比如说Trello,这种看板模式我是非常喜欢的。
而且这个APP可以线上使用,VScode也有部分extension,只是功能限制还是有点大的。
我希望最后可以开发出一个APP,既可以支持看板、也可以支持todoList、以及四象限分区等等各种功能,另外还要有统计功能。
在这之上,我还想要有类似于LifeRPG等任务APP,有个人属性成长功能,就像游戏一样。
最后就是要制作一个VScode Extension 来无缝将所有的功能衔接到IDE上。
因此市面上根本就不可能存在一款如此贴合自己需求的应用,为此只能自己研究Android开发。
我知道这个道路是漫长的。
但是我还是希望自己能够将相关的东西做好。
一月份虽然测试Ziva感觉自己快要圆寂了,不过也没有那么糟糕。
整体而言,没有太过振奋人心的东西,平平淡淡才是真。
这个月准备过年,当中也无数次期待一月份赶紧结束。
这个月公司也开了年会,感觉浩大得很。
至于反省,还是有的。
这个月的时间管理依旧是不合格的,虽然自己有自己开发时间管理软件的想法,但是路漫漫其修远兮。
当下我需要拿起现有的软件走起来,否则时间就白白流失了。
二月学习计划
- Android 开发
- React Native 学习
最近深刻体会到自己需要一款APP来追踪自己的任务进度。
正如上面提到的,市面上已有的APP并不能很好满足我目前需要的用户体验,因此,我才打算自学APP开发。
反正程序员学多点东西总该是好的。
甚至后面可以考虑一下小程序的开发。
最近发现利用前端知识也可以开发APP甚至是基于 Electron 开发桌面应用,因此也打算学一波。