当然可以开发出很多东西!
翻了下各各回答,有单片机的,有小游戏的,有说linux内核的,也有各式各样的算法的,当然,这些东西都挺牛逼的,但C开发的玩意,尽管东西牛逼,但可观赏性不强,娱乐效果不够,导致大家对c的看法就是这玩意做不出多少东西
既然如此,那我来给大家表演个绝活儿.
前言
最近不是vtuber很火么,我也想当vtuber怎么办?
好说,打开sai,先简单画个人设试试水呗
现在模型有了,可她不会动啊,不会动怎么能骗粉,这个时候就得上Live2D了,可打开官网
emmmmm
一年800块钱,都够我去三次海底捞了,吃着火锅唱着歌儿不比当vtuber爽多了,要掏钱还当啥vtuber,不行!我琢磨着,翻了翻live2D的教程
再次陷入沉思
然后
动手!
首先,我们先创建一个窗体,拉上一堆控件,作为编辑平台
然后我们把整个模型加载进来
第一步我们需要先建立网格,之前在我其它文章有提到过的,使用C语言编写一个3D软渲染器,不过现在我们只需要图元光栅化那部分代码,这部分代码,复制一下改改就能用,比如zbuffer之类的,就没必要了,直接给它删掉.有了图元渲染,剩下就是建立网格了,这部分可以直接使用点集建立Delaunary三角划分
这样,我们就能通过添加点集来建立网格了
当然,骨骼必不可少,为此,将每个图层设置一个骨骼节点,然后连接这些节点,形成骨骼
最后,进一步编辑每个顶点的弹性系数,形成那种头发弹弹弹的效果
这样,我们就可以通过编辑骨骼来实现那种弹弹弹的头发和耳朵效果了
进一步完善功能,包括了骨骼的基础旋转
伸缩
网格变换
外力施加
纹理切换等功能
最终完成动画效果
当然,上面你所看到的一切,包括编辑器及整个动画框架,都由C语言编写完成
最后,代码及程序,在http://PainterEngine.com的下载中都可以下载到
PainterEngine
每次听到C语言不适合图形开发GUI开发只能黑框框之类的言论,我就想笑
|