0008 实现MaxMaya共用一套GUI
游戏与影视行业制作软件多标配Python脚本,Qt开发GUI。比如Max新版本, Maya, Houdini, Nuke, Blender等,理论上在这些软件下开发工具时,只需要设计一套UI, 就可以跨App使用了。
看一下要如何做? 这里在Maya2017与Max2019下演示(因为都是PySide2)。
基本流程:
1. 使用Qt Designer快速设计UI
2. 将ui文件转成python,继承它,实现自己的窗口类
在Qt Designer中设计UI,我使用Maya自带的:
设计一个工具界面,存为guiDemo.ui文件
写个脚本将ui文件批量转为xxx_ui.py(也可以直接加载ui文件)
生成好的python文件
实现自己的窗口类,我通常继承多个父类,然后写一个main直接运行测试(这时不需要到Maya或Max里面去测试):
写一个python文件用于获取父窗口
写个launcher.py用于测试
Maya2017里运行效果
Max2019里运行效果
Houdini14里运行效果
Ooops! 直接挂掉了!
仔细一看,不是PySide2, 而是PySide!
如果在更低的Maya版本下,也会报同样的错! 比如Maya2014, 因为PySide2还是比较新的东西, 低版本用的PySide甚至PyQt4。怎么办?
有个开源的项目叫Qt.py,支持PyQt4, PyQt5, PySide, PySide2,用它就能完美解决跨版本了:
基本上就是加上一行: os.environ['QT_PREFERRED_BINDING'] = 'PySide'
然后from Qt import xxx, 就差不多了;
这里不测试了,之前的经验是在2014下PySide开发,然后需要支持高版本2017的PySide2,就靠它解决了。
好了,现在你已经知道如何跨版本、跨不同软件共享同一套GUI了;对开发者的好处是不用搞那么多套,省事;对最终用户的好处是学习成本大大降低了。
Git:
git clone https://github.com/WendyAndAndy/MayaDev.git
0008 实现MaxMaya共用一套GUI相关推荐
- rem结合媒体查询适配的vue项目(PC端和移动端共用一套代码)
一.前言 上周四接到了一个简单的纯前端网页的项目,我用了三天时间已经开发并且部署完毕(为了实现快速简易部署,使用了gitee pages进行部署,这篇文章记录我使用gitee pages部署的详细过程 ...
- 【研究生必备】【效率】两台电脑共用一套鼠标键盘(非局域网情况)
情况简介: 一台实验室配的台式机,有线上网,win10系统 一台自己的笔记本,校园无线上网,win10系统 习惯使用自己的laptop的键盘鼠标,想办法共用一套鼠标键盘 step1:在台式机上建立虚拟 ...
- 老手机能升级华为鸿蒙,华为正式发布鸿蒙2.0!实现手机、平板等多平台共用一套代码!...
1. 华为发布HarmonyOS 2,向万物互联时代迈进 华为消费者业务软件部总裁王成录在HarmonyOS2及华为全场景新品发布会上表示,鸿蒙操作系统是一个全栈解耦的架构,一套代码可以在手机上使用, ...
- mouse without borders 两台主机共用一套鼠标键盘
一.本教程的前提不是一个主机两个屏 的共用, 一个主机两个屏不用教程 PDD买一根连接线 直接从本机插到外接屏就ok了 1.本文是两台主机两个屏的电脑鼠标共享 因为自己带的有笔记本,公司配的只有一 ...
- 局域网内多台windows设备共用一套键鼠【微软官方】Mouse without Borders 2.2.1.0327
Mouse without Borders是一款由微软开发的免费软件,它可以帮助用户在多台电脑之间共享鼠标和键盘.它允许用户在多个计算机之间无缝地移动鼠标和键盘,就像它们连接在同一台计算机上一样. M ...
- linux与windows键鼠共享,安装SYNERGY完美配置Windows,Linux共用一套键鼠
背景: 现有WIN10双显示器主机,1个树莓派接入其中一个显示器. 原本的两套键鼠在桌面上比较拥挤,切换不够流畅.而且逼格不够. 过程: WIN10作为服务端,树莓派作为客户端使用服务端的键鼠. 1. ...
- Windows和Ubuntu使用Synergy共用一套键鼠
实验室电脑是Ubuntu系统,自己笔记本是Windows系统,罗技的options++没有Linux版本,没法共享键鼠.而两台电脑用两套键鼠很麻烦,使用的时候经常搞混,又占地方,所以就用Synergy ...
- 【解决方案】多机共用一套键鼠
由现实问题引发的思考(可不看) 日常在实验室学习,目前在实验室常用四台设备:台式电脑.笔记本.ipad.手机. 受限: 1. 台式电脑鼠标坏了. 2. 笔记本键盘舒适度不如机械键盘. 3. 实验室桌子 ...
- Ubuntu20.04安装synergy(Windows和linux共用一套键鼠)
文章目录 前言 一.synergy是什么? 二.安装步骤 1.下载解压安装包 2.运行synergy 3.启动后 总结 前言 因为最近在鼓捣Ubuntu20.04,因为两套键鼠太麻烦了,所以用到syn ...
最新文章
- 数据库结构Sqlite与CoreData
- 生成中文词云图的制作:带有不同的背板
- GTID的常见错误和处理方法
- payara 创建 集群_使用Payara Micro的Easy Java EE Microservices
- Kafka笔记-搭建及单机生产者、消费者操作
- 内连接 左连接 右连接 交叉连接的区别
- v8的垃圾回收机制(一)
- 现有Android项目中集成Flutter/Flutter混合开发实战(一)
- php评论表情包怎么引入,WordPress中添加自定义评论表情包的方法
- Win10文件名排序
- C语言将CSR存储模式转为coo,spmv_csr 稀疏矩阵的DIA/ELLPACK/COO/CSR/HYB表示形式 - 下载 - 搜珍网...
- docker 镜像压缩 docker-squash
- C++流式输入输出加速 给 cin/cout 装个小火箭
- MongoBD 系列(1) —— 初识 MongoDB
- 时间序列-预测:概述【Time Series Forecasting (TSF) 】【时间序列既可以做回归任务,也可以做分类任务】【预测是回归问题,不是分类问题】
- 找出列表中的偶数位元素
- linux使用:解决克隆虚拟机后UP BROADCAST RUNNING MULTICAST问题
- java火车票预订系统代码_基于JSP开发火车票网上订票系统 java源码
- 等级保护与分级保护关系与区别
- 基数词和序数词的基本用法