自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

咬咬牙 再来啊

阿草,今天我又解决了一个问题

  • 博客(92)
  • 收藏
  • 关注

原创 houdini 20视窗卡bug脚本开发小记

前情提要:houdini20面世后,体验非常糟糕的就是动不动资产显示不更新了。官方提供重置视窗命令,但设置好的拍屏参数及视窗设置也都会被重置,也就是解决了一个问题又带了一个问题。

2024-06-24 18:00:57 461

原创 Houdini中提取属性字段进行创建Group

例如alembic的path信息,或者是shop_materialpath材质信息,以里面的相关字段来分组.现在,希望通过材质信息进行分组,来看一下材质属性shop_materialpath。如果需要返回所有匹配项可以使用re_findall函数,结果是符合匹配的字段列表。这里需要提取材质属性最后字段也就是Eyes和Pig,前面的字段需要过滤掉.如果字段比较复杂需要还可以使用正则表达式来帮助提取特定字段。最后,希望能帮助到你,若无,也请包容它的存在~这里如果有多处匹配只会提取到第一处结果,

2023-02-20 16:43:56 1001 2

原创 使用python从houdini导出arnold材质

如果要使用python从houdini导出arnold材质可以使用以下命令vops = [hou.node("/shop/arnold_vopnet1/")]htoa.material.materialExport(vops,"D:/mat.mtlx")

2023-02-13 12:53:34 670

原创 Houdini pdg arnold渲染报错

网上相关帖子倒是不少,一般都说了添加HOUDINI_PATH的操作,一番折腾无果,HOUDINI_PATH的值也都试过多种。直接渲染arnold节点没有问题,使用pdg下ropfetch节点调用渲染爆红,错误信息大概如上图。下面具体说下我做了什么操作把。

2023-02-10 17:25:20 530

原创 maya粒子替代旋转表达式

2 添加一个旋转属性值和旋转速度属性值,数据类型是vector,每粒子属性。编辑完成后没反应,需要把属性设置给instance的rotation。如果要让方块只有水平旋转,只需要把X轴和Z轴的值为0即可。有些旋转的速度太慢,可以调整rot_speed。设置完成后,方块旋转就变了,但是播放没有动态。1 先创建了一套粒子替代。播放,随机旋转没有问题。

2022-12-15 14:36:14 770

原创 Maya arnold 前台渲染没反应

最近几天一个镜头的毛发资产ass出了问题,很是离奇,整套流程都是脚本跑下来的,一般不会出现问题,有问题基本上是档案的问题,但我检查了档案,渲染单帧又是正常的,我本机重新跑了资产…我用的是Maya自带的渲染窗口. 咨询了灯光部门,他们用的是Arnold Render View, 试了下确实能渲染,没问题,好吧,有工具能渲染也就行了,这个问题就没继续深究了。这个问题应该不常见,主要就写个日志记录下这日常中的泥泞吧…今天又解决了一个问题,遇到好几次了,前期动画场景整合的maya档,前台渲染不出来,点了没反应…..

2022-08-27 14:43:35 2237

原创 Houdini点云学习-移除稀疏/聚集的点

移除聚集点有一点不同,如果我们简单粗暴的将上面的思路直接改成在半径范围内的粒子量大于设定值就删除粒子,那么那块区域的粒子将都被删除类似这样。在houdini制作中,可能会遇到点的分布不够均匀,或者像要删除一下过于聚集的点或者删除零星的点.这时就可以使用这篇文章中介绍的方法.思路是通过点云获取点半径内的粒子数量,如果半径内粒子数量小于设定值,则将被移除.思路是这样的,收集完区域内的粒子信息后,保留一颗粒子,移除其余的粒子。所以我们希望是删除多余的粒子,但还能在区域内保留粒子,(゜-゜)つロ 干杯~...

2022-08-13 20:49:50 1482

原创 QT ListView 列表显示组件笔记

新建一个应用新建一个窗口新建列表展示控件给列表添加数据,python中的数据字符串列表无法直接传递给QListView,需要借助模型传递,这里使用QStringListModle。

2022-07-18 10:12:15 1190

原创 高质量编辑和压缩pdf

pdf编辑和压缩方法

2022-06-15 18:40:17 238

原创 yeti渲染不出来可能是和版本有关

装yeti的时候问题很多,首先是环境变量:这里有一些是多余的,因为渲染不出来,不停的试ARNOLD_PLUGIN_PATH = C:/solidangle/mtoadeploy/2018/shaders;C:/Users/waY/Documents/maya/2018/plug-ins/Yeti/bin;PATH = %PATH%;C:/solidangle/mtoadeploy/2018/binMTOA_EXTENSIONS_PATH = C:/solidangle/mtoadeploy/2018

2022-04-14 09:13:58 1957 1

原创 window提权/用户切换

工具部署在服务器,开辟了一块空间配置了权限普通用户只可读取,不可写入。但有些数据需要用户写入,这就遇到权限问题了。在windows下,官方提供了runas可进行提权Runas命令:能让域用户/普通User用户以管理员身份运行指定程序但密码输入是个问题,密码并不能直接随脚本写入,而需要手敲。网上找到了其他几种替代方式:Runas使用密码的几种方法深入了解后决定先尝试CPAU,下载地址:http://www.joeware.net/freetools/tools/cpau/index.h

2022-03-09 17:29:26 675

原创 PySide QWidget无法设置颜色

默认情况下,子小部件采用窗口的颜色,因此如果希望使用自定义背景颜色,则必须启用该Background属性:w = QtWidget.QWidget(self)w.setAttribute(Qt.Qt.WA_StyledBackground, True)w.setStyleSheet("background-color:red;")...

2022-03-08 11:43:44 583

原创 PtQt QtableWidget 懒加载 优化表单读取

首先找到了一篇好博文,感谢指路人:python懒加载Pandas数据到QTableWidget上运行代码示例,完美!但是有个问题是示例的做法是新建了一个滑条,来获取滑条移动信号,来修改tablewidget的内容这里存在一点小问题是无法在tableWidget上使用滚轮滑动,这个应该可以优化,但是还有一个比较大的影响是我要显示的内容存在图片,每次刷新表单估计会卡。由于我的需求有所不同,并没有特别大量的数据,只是存在图片加载慢所以我希望只加载当前页及页面前后几行图片,其他的等滚轮移动加载那么要实现

2022-01-24 17:04:37 1386 2

原创 微信小程序-组件按下变化小案例的学习

教程地址:https://study.163.com/course/courseLearn.htm?courseId=1209639804#/learn/video?lessonId=1280167071&courseId=1209639804创建一个项目这里我到资源管理器把文件全删了,不使用模板,从头创建这里sitemap.json是作为小程序收录检索project.config.json是配置文件,这两个文件保留创建一个app.json这个是小程序的入口再创建一个pages

2022-01-22 07:18:40 366

原创 MayaToHoudini:Deep流程学习

maya输出deep层相关教程:https://www.youtube.com/watch?v=he42ViunH8c图片格式改成deepexr渲染图片导入nuke是长这个样的通过deepToPoint可以看到图是有三维信息的相关教程:https://www.aboutcg.org/play?courseId=473&lessonId=25932回到Houdini导入资产(相机的Abc)创建了一个球,作为Houdini资产创建mantra,渲染球现在我要把刚才的dee

2022-01-08 23:22:53 2216

原创 PyQt 自定义添加菜单组件

好不容易找到的文章:http://redino.net/blog/2014/05/qt-qwidget-add-menu-bar/需求是我的窗口左侧要做一块面板,菜单并不想延伸过去,默认的菜单QMainWindow是从窗口左上角开始为了自定义菜单位置,可以看下文章中的案例from PyQt5.Qt import *import sys# 定义了redo方法def redoClicked(): msg_box = QMessageBox() msg_box.setText('

2022-01-07 14:40:20 667

原创 python 正则 可选匹配(非必要匹配)

需要获取子串中的镜头号一般是3位数字 比如 001也有特殊镜头 比如 004A如果要同时匹配两种情况可以这么写import rea = re.search("[0-9]+([A-Z])?","seq011A").group()print(a)

2021-12-30 16:40:27 1124

原创 PyQt 标签页TabWidget纵向(竖直)排列

from PyQt5 import QtWidgets,QtCore,QtGuiimport sysapp = QtWidgets.QApplication(sys.argv)tabs = QtWidgets.QTabWidget()widget1 = QtWidgets.QWidget()widget2 = QtWidgets.QWidget()tabs.addTab(widget1, "标签一")tabs.addTab(widget2, "标签二")tabs.setTabPosi.

2021-12-20 10:10:22 3520 2

原创 python 获取当前运行的DCC工具

python是个胶水语言,python脚本可以在众多软件上运行,CG软件大多支持python写了一个脚本想在不同软件上运行,但一些细节功能上有所不同,比如在maya使用打开maya文件是使用maya.cmds.file命令打开,而其他平台是要新开maya再打开文件所以需要先获取下当前运行的DCC工具import sys,osdcc = os.path.basename(sys.executable)在maya中运行脚本,返回值是maya.exe在houdini中运行,返回值是houdini.e

2021-12-14 12:52:13 939

原创 python 打开文件夹与开启文件的几种方式

python有很多方式可以开启文件或打开文件夹这种的速度是最快的,其他方式会卡几秒钟(公司的工作站,个人的笔记本没卡这么久)import osos.startfile(r'C:/')其他方式import subprocesssubprocess.Popen(r'explorer "C:/"')import osos.system("start C:/")...

2021-12-10 16:59:21 3997

原创 pyqt 下拉列表 QComboBox 居中对齐

来源:https://stackoverflow.com/questions/23770287/how-to-center-text-in-qcomboboxfrom PyQt5 import QtGui, QtCore, QtWidgetsclass Window(QtWidgets.QWidget): def __init__(self): QtWidgets.QWidget.__init__(self) layout = QtWidgets.QVBoxLa

2021-12-08 16:37:30 1597

原创 pyqt开发笔记1-下拉列表

文档:https://doc.qt.io/qtforpython-5/PySide2/QtWidgets/QComboBox.html秘籍:https://www.tutorialspoint.com/pyqt/pyqt_qcombobox_widget.htm下面秘籍真是喜欢,有例子,例子几乎涵盖了我的使用需求import sysfrom PyQt5.Qt import *class combodemo(QWidget): def __init__(self, parent=Non

2021-11-25 15:00:34 707

原创 pyqt复习-pyqt的基本结构

一个qt程序的基本架构from PyQt5.Qt import * # 导入qt库import sysapp = QApplication(sys.argv) # 创建程序window = QWidget() # 创建窗口(空控件)window.setWindowTitle("aaa") # 设置窗口标题window.resize(500, 500) # 设置窗口大小window.show() # 展示窗口sys.exit(app.exec_()) # 退出程序面向

2021-11-22 18:11:05 568

原创 Unreal 使用 Houdini Engine 报错

Unreal 使用 Houdini Engine 报错:Houdini Installation was not detected.Failed to locate or load libHAPIL.dll. No cooking / instantiation will take place.解决方法:houdini-Windows-Houdini Engine SessionSync如果是Start按钮,就把它打开感谢一些作者提供的帮助:Houdni engine problem wi

2021-08-11 16:25:44 2324

原创 unreal engine 默认启动插件

有些插件我们经常需要用到它,但每次都得手动启动,启动完还得重启,好在还是有方法可以设置默认启动教程地址:Enable plugins permanently in Unreal Engine 4respect !需要我们找到插件安装路径用文本编辑器打开uplugin文件找到EnabledByDefault ,设置为true即可(゜-゜)つロ 干杯~-...

2021-08-02 09:49:47 2022

原创 houdini 节点批量改名

本来要用python写来着,结果查着命令来着,就看到了houdini自带功能https://www.sidefx.com/docs/houdini/network/rename.html在节点编辑去 按Alt+W键调出重命名窗口填下查找路径,查找字串,替换字串就行咯如有问题可以具体看下帮助仅此小记,以防痴呆...

2021-07-30 18:12:36 797

原创 Ass代理转实模/Convert ass proxy to model

技术支持:高才支菜单操作/Use Menu:Arnold-Utilities-Bake Selected Geometry提取后台脚本(py)/extract command(py)import maya.cmds as cmdscmds.arnoldBakeGeo(f="D:/mod.obj")

2021-07-27 11:05:01 1545 3

原创 maya 导出层级干净的相机

import maya.cmds as cmdsimport maya.mel as melselect_cams = cmds.ls(sl=True)for cam in select_cams: origCamShapeName = cmds.listRelatives(cam,s=True) origFocalLength = origCamShapeName[0] + ".focalLength" newCamera = cmds.duplicate(cam,rr=True,name="

2021-07-26 16:58:18 937

原创 在虚幻引擎中使用Python批处理5:使用递归获取所有子组件

在USD文件中存在大量层级和子对象,我需要设置的参数又是在对象的组件上这里通过递归直接获取所在层级下所有组件def list_all_component(obj_list, component_class=unreal.GeometryCacheComponent): component_list = [] for obj in obj_list: component_list.extend(obj.get_components_by_class(component_class)) # 获取

2021-07-19 20:29:20 545 1

原创 在虚幻引擎中使用Python批处理3:批量修改属性

Unreal Python API 文档: - https://docs.unrealengine.com/4.26/en-US/PythonAPI/在上一篇文章在虚幻引擎中使用Python批处理2_unreal库的学习:批量重命名),通过教程学习了Python脚本的使用方式,接下来我希望能实现一些我想做的操作-批量修改对象属性。虽然在这位宝藏up主的视频中找到了可能很有帮助的指导虚幻引擎自动化 - 自动化 Python 纹理参数设置器,但我不准备先看它,我希望我可以尝试通过查阅API官方文档等其

2021-07-17 17:10:01 1296 1

原创 在虚幻引擎中使用Python批处理4_:贴图参数设置

教程地址:Unreal Engine Automation - Automated Python Texture Parameter Setter很棒的一套教程,感谢下老师!自己捣鼓脚本没成功,回来继续跟着教程学习这个视频教程用来设置贴图参数通过路径获取Asset列表循环遍历每个Asset,检查名称中是否包含定义的关键字参数设置这里是前两步的代码块,1通过路径获取Asset列表,循环遍历每个Asset,检查名称中是否包含定义的关键字import unreal# 实例化unreal

2021-07-16 16:32:34 1061 1

原创 在虚幻引擎中使用Python批处理2_unreal库的学习:批量重命名

教程地址:Unreal Engine Automation - Creating a Python Batch Rename Script很棒的一套教程,感谢下老师!上一篇我们用python和unreal打了招呼 -https://blog.csdn.net/weixin_44517539/article/details/118767840接下来,要熟悉下unreal库的使用import unrealdef rename_assets(): # 实例化unreal类 system

2021-07-15 21:18:17 687 1

原创 在虚幻引擎中使用Python批处理1_“Hello Unreal“

教程地址:Unreal Engine Automation - Creating a Python Batch Rename Script很棒的一套教程,感谢下老师!要在Unreal中使用Python,一定要先跨出关键的一步!!!import unrealdef rename_assets(): unreal.log("Hello Unreal!")rename_assets()保存py文件,调出输出日志,以便查看反馈文件-执行Python脚本,选择保存的py文件就可以

2021-07-15 20:32:00 668 1

原创 houdini如何提取三边面/多边面

有些时候三边面(三角面)或者多边面(四边以上)可能会照成错误信息,这个时候我们可以使用这个方式提取出来,然后删除或其他修复操作方法很简单,但是用得少不好记,这次就是回翻了好多档案才找回这里处理了一个球体,有三边面和多边面使用group expression节点使用primvertexcount(0,@primnum)提取每个prim元素的边数,做个判断就行当然了,这个核心的表达式也可以直接用在wrangle上做处理希望这点笔记能帮到你~乾杯...

2021-07-15 19:59:41 1386

原创 houdini 如何提取最后一点/面

houdini中我们经常需要将首尾元素放入组内,group拾取最后一个点或面的方式有不少,这个方式应该是最快捷的了拾取第一个点没啥好说,就是第0个元素最后一个点可以这么写`npoints(0)-1`参考:https://www.sidefx.com/forum/topic/48939/如果是拾取最后一个面,应该怎么写?一点笔记,如果帮助到你就太好了!...

2021-06-11 10:51:20 782 1

原创 houdini pyro/烟 显示精度设置

跑一个pyro有那么几次遇到这种问题,烟的精度变得很low,这可能是显示问题按D键调出显示选项卡,找到Texture -3D Textures 这里有精度现在(默认256,16b HDR only)希望帮助到你~

2021-06-08 18:29:11 1765

原创 Nuke 四点变形:cornerPin2D

Nuke四点变形工具快速做一些透视变形默认变形的四个点是在背景框的四个角如果画面元素位置不太好的话,四点变形拖拽起来就很不顺心了这里我们可以先调整四个点的位置,在进行变形首先关闭四点变形状态,这样调整四个点就不会产生变形把四个点挪到合适的位置选择From页面,点击Copy “to”,这样to和from的四点位置信息都是相同的回到CornerPin2D,启用变形启用后你会发现画面并没有变形,但四个点的位置是在我们调整后我位置这时候再调整四点变形就顺手多了--END--

2021-05-21 15:10:11 2534 1

原创 houdini copyToPoint 动画帧读取

需求:有一个开花的动画,发射粒子,让粒子的第一帧读取动画的第一帧我用数字代表花的生长动画帧如果直接copy动画到粒子上,结果是这样的,花的动画并不是随粒子出生才开始我们只需要将花的动画帧数与粒子年龄做绑定即可Copy节点需要使用CopyToStamp创建一个Timeshift控制画生长播放的帧,让帧数等于粒子的出生年龄(帧)刚出生的粒子就会从生长动画的第0帧开始读取如果要从第一帧开始读取,那就在表达式末尾加一即可--END--...

2021-05-18 15:41:33 759

原创 houdini 解算后渲染 prepost

prepost 官方描述:在主要工作之前和之后渲染ROP。预设场景预设一个场景,让它缓存后渲染Out模块设置除了渲染器以外,这里创建了fetch来跑缓存。并创建了prepost让缓存工作在渲染前进行。fetchfetch 参数面板很简单,我们再源Source中拾取缓存节点即可这里注意缓存输出节点必须是rop节点,比如我们用到的filecache节点拾取后是不工作的需要双击filecache,拾取里面的render节点,节点连接好以后点击prepost上的Render就可以先

2021-05-10 20:51:34 677

原创 houdini 曲线力场2

在上一篇曲线力场中,是将曲线转成体积并设置与切线方向的速度。https://blog.csdn.net/weixin_44517539/article/details/116240033而这篇的思路是使用popvop,在dopnetwork下通过点云去搜索曲线上最近点,读取点的切线方向,设置到动力学对象的速度上。可以理解为让动力学粒子读取曲线上的方向进行运动。资产准备这里准备的资产是一条曲线,一块平面上生成的粒子我们要让粒子跟随曲线方向运动求曲线方向这里通过polyframe求切线方向这

2021-05-06 16:17:13 881

空空如也

空空如也

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

TA关注的人

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