自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(86)
  • 资源 (12)
  • 收藏
  • 关注

原创 C++ Primer Plus (第六版)的习题代码

整本书都看完了,把后面的习题也做了一遍,从中确实学到很多,以后在项目里进一步检验自己的所学,并且都用GNU g++验证过,整个项目在github上,链接如下:C++ Primer Plus (第六版)的习题代码...

2021-08-31 23:53:20 308

原创 顺时针打印矩阵

这是leetcode上面的一道题,自己试着做下:def print_array_spirally(array): row = len(array) column = len(array[0]) res = list() directions = [[1, 0], [0, 1], [-1, 0], [0, -1]] visited = [[False for i in range(column)] for j in range(row)] i, j, d.

2021-05-18 23:01:00 142

原创 在Mac上安装AutoCompleteMe

整个安装过程实在太痛苦了,所以这里记录下。Install CMake(brew install cmake)cd ~/.vim/bundlegit clone https://github.com/Valloric/YouCompleteMe.gitcd ~/.vim/bundle/YouCompleteMegit submodule update --init --recursivemkdir YouCompleteMe/ycmbuildcd YouCompleteMe/ycmbuild.

2021-04-18 21:15:41 231

原创 用Jpeg来生成ASCII文本

用一张Jpeg图片来生成一个由特殊符号组成的文字,但是远看却是原来那个jpeg图片的内容,如下图这样:也可以自己设置组成图案的元素:std::string among = "@%#Oo*+=-:.";就是根据颜色的深浅设置符号详细的代码在GitHub上,有愿意的可以自己尝试玩玩。Jpeg2ASCII...

2021-04-06 23:08:50 144

原创 光线追踪(RayTracingInAWeekend)

最近看到一个教程是讲RayTracing的,按照书中的实现方式自己动手敲了一遍,对光线追踪里面的一些原理有了更深入的了解,特别是当编译的时候会遇到各种问题,一遍一遍地Debug那种过程是相当痛苦的,当终于发现问题并且解决了的时候,那种如释重负的感觉外人很难体会。里面定义了个vec3的类,用来描述整个RayTracing的光线的传递折射反射以及颜色等信息,里面也对相机和焦距也做了实现。最后实现的效果还不错,具体的代码在github上:RayTracingInAWeekend...

2021-03-30 21:35:45 342

原创 数据结构与算法的一些学习

最近在看下面这四本书,前两本已经看完了,其中Grokking Algorithms里面讲的东西比较好理解,从array, linked_list, hash table, tree, graph等等常见的数据结构都讲了,而且里面讲到一些常用的递归算法,贪婪算法,quick-sort等等,通俗易懂,而且动用Python实现了一遍,但是看代码就能学到不少东西,后面再继续阅读剩下的三本书。Computer Science Distilled - https://amzn.to/39jYZ0S​Grokking

2021-02-28 23:49:42 82

原创 2020最后一次加更

这个月一直忙项目上的事,少有时间来写,最近看了GAMES101的课程,讲得真好,里面有些内容同事也讲过,但听人家讲真有种拨云见日的感觉,看完这一系列视频,对图形学能有个基本的轮廓,而且里面的作业也设置的非常好,自己也在做的过程中,只是比较慢,作业也放在了Github上了,欢迎同仁拍砖。https://github.com/chuckbruno/GAMES101GAMES101作业...

2020-12-31 21:32:28 86

原创 用Visual Studio为自己的应用程序设置setup.exe文件

首先下载安装Installer这个扩展包安装完就会在创建项目里选择setup project然后创建两个项目,一个是AppSetup,一个是Setup。AppSetup就是个简单的窗口,拖拽几个控件,如图可以给AppSetup这个项目设置个图标然后build一下AppSetup,再来进一步设置setup的项目在Application Folder上点击右键,选择Add——>项目输出选择AppSetup项目的主输出,点击确定然后给主应用程序添加个快捷方式,如下图创建.

2020-11-08 16:20:42 2098

原创 UE的一些学习心得

最近公司在讲UE的内容,自己也乘此机会学习下,看了asset manager的内容,后面有看了导入sk骨骼和st骨骼,最后在UE里将二者结合起来。

2020-10-31 23:51:08 619

原创 QGraphicsScene的坐标矫正

在用一个QGraphicsScene做一个工具发现他的坐标我们经常用到的那样,而是原点在左上角的位置,正x方向朝右,而正y方向是朝下的,这就需要做两个工作,一个是将坐标原点放到试图的正中间而不是左上角,第二个将y轴朝上,而不是朝下,这样的话就更符合我们一般人对坐标系统的认识,关键里面的item的值,更符合我门熟悉的那个坐标系统。将坐标原点会中心的代码如下:class ItemGraphicsScene(QtGui.QGraphicsScene): def __init__(self):

2020-09-30 23:10:03 1467

原创 实现单例的两种方式

第一种是用的元类实现class Singleton(type): _instances = {} def __call__(cls, *args, **kwargs): if cls not in cls._instances: cls._instances[cls] = super(Singleton,cls).__call__(*args, **kwargs) cls.x = 5 return cls._

2020-08-29 19:40:01 109

原创 使用Multiprocessing弹出多个窗口

最近搞个分析Excel数据的东西,从py转成exe之后,运行的时候会弹出多个窗口,而且还关不掉,关掉就又弹出来了,直到达到某个固定的个数的时候才停止,后来查了下是用了multiprocessing模块的问题,但是这个模块在py文件模式下运行的非常好,没问题,只是在exe模式下需要加个multiprocessing.freeze_support()才行,这样转成exe之后也不会弹出多个窗口了。if __name__ == '__main__': multiprocessing.freeze_supp

2020-08-29 10:45:01 609

原创 用Matrix在Maya2020里实现对offsetParentMatrix约束的切换

这里写自定义目录标题在Maya2020里有了offset parent matrix 属性,这样用matrix对物体做约束的时候就可以少很多节点,且结构更清晰简洁,那么下面就实现下这个功能。首先创建两个locator,一个小球,用来模拟这个小球收到这两个locator的约束,而且是可以切换约束,即可以受locator1约束,也可以受locator2约束。既然是用matrix来做约束,那么就再创建两个multMatrix节点,用这两个matrix节点的主要目的是做带有便宜值的matrix约束,就类似于

2020-07-20 23:24:56 949

原创 PySide实现各种形状的按钮

看PySide的示例代码的时候,有个时钟的案例,最后它将那个时钟设置成一个圆形,这顿时让我很感兴趣,细看代码,就是用了asMask的方法,QWidget这个类里有这个方法,共有两种使用方法,如下:于是找了张图片作为mask试试,实现下各种形状的按钮,如下图,有mask的时候是这样的无mask的时候是这样的其实这里主要用到了重写resizeEvent,以及最后用图片作为个maskself.setMask(self.mask_pixmap.mask())主要代码如下:from PySide2

2020-07-12 09:10:08 1861 2

原创 ffprobe获取视频的分辨率帧数等信息

FFmpega获取视频的分辨率帧数等信息

2020-05-31 23:16:46 7794 2

翻译 QPainter的使用详解

这是篇翻译的文章,翻译的过程中自己也亲自敲下代码,更深入地了解QPainter的功能。我们不论是用Qt画图或者是显示文字都得用到QPainter。QPainter首先用QPainter来画一条直线import sysfrom PyQt5 import QtCore, QtGui, QtWidgets, uicfrom PyQt5.QtCore import Qtclass Ma...

2020-03-22 21:46:36 1505

原创 贝塞尔(Bezier)曲线节点

在网上看到一个bezier曲线的公式,那就用Maya的节点来实现下,看看效果,具体公式如下图:这个是二维的,三维的花再加个z轴向就行,import maya.OpenMayaMPx as OpenMayaMPximport maya.OpenMaya as OpenMayaclass BezierCubic(OpenMayaMPx.MPxNode): kPluginNode...

2020-03-14 16:26:30 917

原创 Python搭配Everything来搜索文件夹里的内容

如果要从一个文件夹下找到自己需要的内容,以前是用os.walk来完成,但后来发现那样效率太低了,于是可以用Everything先搭建个服务器,然后再用python调用Everything的Python Api来获取自己需要查询的内容,最关键的时间这样的效率要比之前的高很多。安装Everything搭建服务器,这里不再重复,可以参考下面的链接Everything快速搭建HTTP文件服务器下面说...

2020-02-29 16:25:54 3066

原创 艰难时刻,共克时艰。

在回来的路上,高铁上碰到碰到一对夫妇,是从别的车次改签到这个车次的,上来后说小孩刚出生得了一种病,需要去上海复旦大学儿童医院去,那个男的打120联系医院,医院又给了他一个电话让他打那个电话,但是那个男的打过去好像是有什么问题,不行,然后列车长这时自己打电话联系医院了,并且说了几点到,哪节车厢,让医院的救护车过来接,最后安顿那对夫妇不要着急,给他们改签了票,为高铁上的工作人员点赞。...

2020-01-31 22:21:47 964

原创 Maya2020 Transform Offset Parent Matrix

Maya2020里有个新功能就是所有的transform节点上都多了个Transform Offset Parent Matrix属性栏,通过这个属性,不论绑定和动画都能剩不少事,不如动画原来做约束时,既要保持约束效果,由想要让被约束的物体有自己的动画,那么这样就很简单了,只需要调节这个新属性就行,不需要向原来那样建个空组之类的,这也是我最喜欢的一个改变,game-changing feature...

2019-12-31 17:59:37 668 1

原创 覆盖Maya自身的脚本

在项目里有个脚本需要覆盖Maya自身的同名脚本,一般来说手动将这个脚本拖到Maya里,艺术家在使用的时候就会调用到我们自己的脚本,但是总不能每次都让艺术家们手动拖脚本吧,于是想着看能不能放到中心化里面,艺术家每次打开就已经配置好了,一个关键点就是我们自己脚本的路径要放到Maya的脚本路径前面,这样Maya在调用的时候就会调用我们的,而不是Maya自身的了。import oscentralize...

2019-12-06 18:06:04 250 1

原创 健身减脂

今天写点别的东西——健身,自己健身是源于一个契机,就是公司建了个健身房,让我们工作之余可以锻炼下,缓解工作的压力,但是我一直没去,对那些器械也没兴趣;偶尔又一次机会和一个同事去打乒乓球,在换人之际,自己和另外一个同事练了练,觉得还蛮有意思,当时我正脖子疼得厉害,然后就这样跟着那个同事活动活动之后,感觉好多了。平时下班之后自己又去了几次,每天锻炼大概四十分钟左右,再回去加班,感觉挺不错的,就这样在十...

2019-11-30 21:26:42 391

原创 在Motionbuilder里做camera rig——relation约束的问题

在Motionbuilder里做了个camera rig方便他们调节相机和一些shake的属性,只能用relation来完成,但在最后将中间计算的数值要和相机的属性链接的时候,发现链接上之后,原来的父子关系就失效了,也就是原来相机的父物体不能再控制这个相机了,只能是relation的sender物体才行,自己查了下文档发现,在连接的相机的时候应该用local translation和local r...

2019-11-28 15:23:07 1383 5

原创 git blame 的用法小记

在debug的时候,为了查找是谁改得某个文件或者某一行,这时就用到git blame这个命令了,用法最常用的就是git blame <filename>git blame -L start,end <filename>例如:git blame database.pygit blame -L 10,20 database.py //表示查看10-20行的修改历史...

2019-11-27 16:08:56 3604 1

原创 Python的__new__用法

用__new__ 主要是想改变原来一些类无法实现的方法,比如有个列表,我想让它按照我的想要的方式转换成字符串,那么就可以这样写class ListToString(str): def __new__(cls, fruit_list): fruit_string = ', '.join(fruit_list) return super(ListToStr...

2019-11-23 15:29:20 202

原创 git忽略一类文件(git ignore)

在用git的时候自己用json文件设置了写配置信息,但又不想让git追踪这个配置json,于是就在.gitignore文件里添加了*.json表示忽略这种json文件,但是在用git status查看的时候居然还能追踪到,于是自己查了些资料,原来是自己以前已经将这个json文件commit上去了,所以尽管添加了忽略json的设置,但git仍然能追踪到,要想彻底让git不再追踪的话得需要在git的缓...

2019-11-23 10:37:25 494

原创 一个非常好看的标签(Tag)搜索框

工具需要一个根据用户输入的tag来搜索的功能,借鉴了下别的软件的模式,于是诞生下面我的这个,现上动图了。具体的实现方式如下:# -*- coding: utf-8 -*-from PySide import QtGui, QtCoreimport sysfrom functools import partialclass TagBar(QtGui.QWidget): d...

2019-11-16 21:25:25 2158

原创 bat运行的时候不弹出黑框框

首先得创建个.vbs的文件,在这个vbs的文件里进行设置,比如有个bat的名字叫foo.bat,然后在vbs里的代码为:Set ws = CreateObject("Wscript.Shell") ws.run "cmd /c foo.bat",vbhide然后再双击这个vbs文件,就可以不弹出那个黑框框了。...

2019-10-31 23:46:58 1537

原创 从Max里导出相机数据

最近在公司碰到个问题,就是从Max里导出相机到Maya里,不论是导出fbx还是abc,在Maya焦距的大小和Max里怎么都对不不上,于是只能在Max里逐帧将相机的焦距的数值记录到一个文件里,然后再回到Maya里重新设置一遍焦距,总算暂时解决了生产中的任务,不知各位大佬还有更好的解决办法没,下面是我在Max里的实现方法。fn getSelName=( for s in selection d...

2019-09-30 22:51:40 1103

原创 用getattr刷新节点的数据

在MayaBatch模式下,有时候一个节点的某个属性被另一个节点的某个属性链接了,比如驱动关键帧,最典型的就是模型组的现实和隐藏。有时候我们设置了驱动物体的那个属性,在前台的Maya上,被驱动物体的那个属性也会随之发生变化,但是在linux上的Mayabatch模式,却并没有发生变化,这时如果出缓存这个属性就可能写出的时候是错误的,如,我们通过控制器的某个属性来控制某些模型的显示和隐藏,但此时如果...

2019-07-31 23:05:36 195

原创 Linux下解决Maya通道栏乱码问题

公司刚切Linux系统的时候,很多人出现了Maya通道栏乱码的问题:这样调动画都很不方便,很多时候他们不得不重开Maya才有可能好转,有时候还是不行,于是自己查了下文档,在Maya的官方帮助里有详细说明,下面说下具体的解决方案,就是在启动你的Maya之前需要加个环境变量,下面用的这种方式是.sh方式启动Maya的设置方式,如果只是本地的话,那么在maya.env文件里加个LANG=en_...

2019-07-20 18:47:49 783

原创 用Matrix节点来实现约束功能

为什么要用Matrix节点实现约束功能呢?可以简化你的节点之间的层级结构可以提高节点运行效率实现方式这里就拿最简单的两个物体来演示,链接方式如下图,如果没有decomposeMatrix节点的话,需要家在MaxtrixNode插件。首先从cube出发,用它的worldmatrix和multMatrix节点的matrix in相连,然后再用matrix sum和decomposeMat...

2019-06-02 11:06:44 794

原创 Voxelization——体素化模型

上周部门内部进行分享知识讲座时讲到一个词Voxelization,也就是体素化,也就是用某些东西充满一个物体的内部,如下面这两张图,用小方块充满圆环和锥体。其主要算法也有多种,我这里采用的是用boundingbox来切割物体的方法,如下图:就是先求出一个模型的boundingbox,然后以一定的step对boundingbox的长宽高进行切割,然后从这些黄色的交点,按照某一方向,向模型打...

2019-05-02 20:06:00 5637 2

原创 给MarkingMenu设置自定义的快捷键

承接上篇,有时候我们需要设置自己想要的快捷键,而非Alt、Shift、Ctrl这类快捷键,这就是这篇要谈的东西。首先我们需要给我们的MarkingMenu建runTimeCommand,就是这种东西。建完这个之后,就可以设置两个快捷键,一个是press,一个是releasepress的时候,命令是显示我们的markingmenu;当release的时候,再把我们markingmenu删掉...

2019-05-02 16:45:43 481

原创 在Maya里用脚本设置MarkingMenu

有时候,我们将一些经常用到的重复性高的命令设置成快捷键以提高我们的效率,但我更喜欢用MarkingMenu,这样只需要甩鼠标就可以了,但是Maya默认的MarkingMenu只能通过UI来设置,如何通过脚本来实现,自己研究了一番,终于实现了,下面就具体说明下,import maya.cmds as cmdsimport pymel.core as pmMEDIOCRE_MENU_NAME...

2019-03-31 12:15:49 719

原创 导出FBX修改namespace

在公司给游戏部门弄一个导出fbx的插件,导出的时候需要将namespace去掉,这样方便他们导入UE里面,以前的操作是将Maya里的reference全部解除掉,变成导出的模式,这样去掉namespace后再导出fbx,但是这样呢有个问题,就是当一个文件里有相同的rig的时候,那么变成导入的时候就会多个后缀1,2之类的;而且另一方面将源文件也给破坏了,动画师如果再修改的话还得重新开文件,于是寻找下...

2019-03-24 19:54:50 839 2

原创 如何将py文件编译成pyd使其能在Maya环境下运行

因为种种原因,有时候我们需要将py文件编译成pyd文件,但在Maya的环境下,如果是用官方的Python编译出来的pyd肯定不能用,包括PyQt,如果想在Maya环境下运行也是需要特殊编译下;下面就以Maya2016位例来演示下实现方法。与Maya2016对应的VS是2012,具体对应版本可以查看PluginWizard里面的说明,所以需要安装VS2012,这是后面编译pyd所必需的。编译之前...

2019-02-16 11:26:19 1756

原创 再玩Shotgun的Toolkit

最近又重新配了下Shotgun的Toolkit,发现和原来相比,变化挺大的,现在成了每配一个项目都要将App拷贝导单独的项目里面,而不是想原来那样几个项目公用一个App,自己第一次修改的时候,发现怎么也不生效,Debug了半天才发现,原来那个项目的App根本指得就不是我修改的那个,而且连配置文件yaml结构都变了,但是感觉不是变得简单合理,而是更加复杂了,这是Shotgun的一贯风格。最让自己想不...

2018-12-30 17:28:20 479 1

原创 Linux下用ffmpeg转H.264编码的视频

最近公司的制作电脑都切成Linux系统了,但Maya有个问题就是没有了h.264编码,这就让原本只有几M的拍屏变成几十M了,最后想方设法用ffmpeg转了下,确实小很多,清晰度基本不变。最主要的命令为:cmd = '%s -y -r 24 -i %s -vcodec libx264 -crf 18 -preset slow -tune animation -profile baseline -...

2018-12-02 10:53:17 1020

原创 After Effects 自动导入素材和分类的脚本

最近一个游戏项目需要用到AE做合成,可是渲出来的素材有那么多曾,艺术家自己一个一个往里导确实很费时间,于是给他们写了个自动导入素材的工具,并且根据背景和角色层自动打好组,创建文件夹,还创建了comp,将素材放进去,根据序列的长度来设置comp的长度,还能根据文件的名字给里面的comp命名,将文件命名规范,最后又加了个为艺术家自动设置输出路径和视频名字的功能。工具的界面如下:码如下:{ ...

2018-11-02 22:32:55 1315 1

Camera_shake.fbx

Motionbuilder里的一个带有手持效果的相机rig,通过这个相机可以调节一些参数,从而实现手持效果;同时有三个环,可以分别调节位移旋转,让动画师更加方便调节相机动画。

2020-08-08

MaxScript Essential . Max的脚本语言

入门与学习Maxscript的不二选择,有了她你可以很快速地熟悉Maxscript的语法要求,并且基本可以上手来开发属于自己的工具了。

2018-10-15

photoshop CS5 中文包补丁

photoshop CS5 中文包补丁,给需要的人下载。

2011-03-18

uv layout 插件 maya max

这个展UV插件,相信学过三维的人都知道,它的功能实在是太强大了,而且也非常便捷,有了它,当你面对UV线的时候就不会觉得烦了。

2010-09-07

Illustrator CS5 注册机 KEYGON

一个illustrator CS5注册机,希望能为大家进点绵薄之力。

2010-08-31

企业物流信息系统的总体构思

流活动,古已有之。自从有了人类活动,有 了最为原始的商品交换,就有了物质资料之 间的自然流动,也就是有了 物流。物流按其作用范围分 为社会物流和企业物流。物 流在现代经济中发挥的作用 越来越被人们所认识,有很 多专家学者提出“物流是企 业的第3利润源泉”, 此言 名副其实。但是。目前企业 物流高成本、低效率运行现 象普遍存在。物流信息传输 慢、质量低、共享性羞。这 和设施也变得毫无价值。 此’兑物流是企业的生命 线,是企业经营活动中影响效率和效益的主要因素之 些已经成为制约企业发展的关键凶素。凶此。如何 使企业物流低成本、高效率运作,使企业物流成为 提高企业竞争力的重要手段,充分应用计算机技术 和信息技术,建立企业物流信息系统,这已成为企 业信息化建设的一项重要内容。本文结合中信重型 机械公司的实际。提出了企业物流信息系统的总体 构思。目的是为企业信息化建设提供科学依据,使 企业的综合竞争力更上一个新的台阶。

2010-01-16

3ds max 8 注册机

这是我辛辛苦苦从网上找到的,现在上传到这里供大家下载,希望大家受用。

2009-06-20

计费王计费系统.rar

此软件包包含了我从网上下载的计费王版的计费系统,用起来很方便,在这里和大家一起分享。

2008-12-14

简单版学生成绩管理系统.rar

版系统分“登录”、“编辑”、“查询”、“退出”四个模块,来实现学生成绩的录入输出等功能。

2008-12-07

学生版抓图工具.rar

抓图工具主要是为帮助学生通过截图来完成自己想要的图片的截取,从而大大方便了学生的截图来源。

2008-12-07

学生成绩管理系统.rar

此系统设置了学生选课、学生成绩录入等功能,来实现学生的平时的查询及打印工作。

2008-12-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除