- 浏览: 205266 次
- 性别:
- 来自: 上海
最新评论
-
悲梦天下:
楼主,有些视频到一半就没声音了,怎么破!!!
python视频教程 更新22(完) -
schi:
啊,我太傻了,都想到使用uv了,可以有更简单的方法,只要把uv ...
Get Reversed Normal Faces(获取反法线面) [原理] -
schi:
相对Pillow和PySide而言,显示图片opengl就显得 ...
display an image with pyopengl and Pillow -
schi:
我也是今天才偶然想到的,我以后可能用不着了,所有分享给有需要的 ...
Get Reversed Normal Faces(获取反法线面) [原理] -
baiyanbin:
支持楼主原创,关注楼主博客有一阵子了,国内认真认真搞技术的太少 ...
python视频教程 更新22(完)
文章列表
Here an example how to use pyopencl in Maya.
yTwistNodeGPU.py
# --------------------------------------------------------------------------------
# Copyright (c) 2013 Mack Stone. All rights reserved.
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this softw ...
如果你想使用maya2012和python来做些批处理,你就要小心mentalray了。不信你可以执行下面的代码
import maya.standalone as ms
ms.initialize(name="python")
from maya import cmds
cmds.loadPlugin("Mayatomr.mll")
print "Mayatomr.mll loaded............."
最简单的解决方法就是别用maya2012,换其它版本。
grayscale.py
import pyopencl as cl
import sys
import Image
import numpy
def RoundUp(groupSize, globalSize):
r = globalSize % groupSize;
if r == 0:
return globalSize;
else:
return globalSize + groupSize - r;
def main():
imageObjects = [ 0, 0 ]
if len(sys.argv) != 3:
...
因为python API 2.0可用的类很少,OpenMayaMpx模块里的类被整合到OpenMaya里面了,这个模块不再存在,里面的一些方法也被丢弃了,所以使用python API 2.0来写插件和1.0是有区别的,我这里就以sierpinski triangle 2d为例来看看怎么使用python API 2.0来写插件.
首先,我们的插件是一个命令插件,就是创建一mel命令,命令只有一个-times(-t)参数可使用,接受的数据类型是int,和一个以上的三角形节点,使用方法
sierpinskiTriangle -t 5 objects;
或是
from maya import cmds ...
在国庆前我刚好完成手上的工作,有两三天的空闲,于是就去研究了一下分形就当是练习算法,谢尔宾斯基三角形就是其中一个,关于它可以看http://en.wikipedia.org/wiki/Sierpinski_triangle
这里我们使用掏(去)心法和python API 2.0来实现谢尔宾斯基三角形2d(还存在3d的)版本.
算法很简单
创建或得到一个三角形,等腰三角形最好,但不是等腰也行,只不过看起来有点别扭而已
然后根据每条边的中点进行分割,可以得到4个三角形,把中间的三角形删除
把剩下的n个三角形重复第二步的分割和删除
不停的重复第二和第三步
import maya.ap ...
昨天偶然的跟同事谈论到这个问题,相信也有不少朋友对这个话题感兴趣.
其实在pymel出来的时候就已经有很多人去对它们的运行效率进行比较了,我以前也做过很简单的对比,但没做更多和更深入的对比,所以没有详细的数据来证明 ...
MGlobal是一个静态类,提供通用的API涵数.
包括获取maya的版本,API版本,执行mel,python命令等等.
但2.0的MGlobal只实现了很少的涵数.
getActiveSelectionList获取当前的的选取列表,返回MSelectionList
import maya.OpenMaya as om # API 1.0
import maya.api.OpenMaya as newom # API 2.0
# API 1.0
selList = om.MSelectionList()
om.MGlobal.getActiveSelect ...
这不是一个教程,这是一个我刚解决的问题,我觉得它是一个不错的范例,所以决定和大家分享一下经验.在遇到这种难题的时候我是怎么应对的.
对Maya或是其它3维软件熟悉的朋友应该都知道法线这个东西,它是个向量,它的方向 ...
这将会是一篇很长的blog,主要讲述我曾经作为一个rigger的一些经验和经历,但由于我已经不是rigger很久了,所以要回忆起一些细节还是挺花时间的.
在开始之前我得先声明几点
我不是一个很好的rigger
职业生涯很短2009-2010.9.30
我不 ...
从Maya2012开始我们迎来了新的Python API,对API不熟悉的朋友也许会问为什么要出个2.0的新API.其实1.0是通过SWIG来对大部分(基本是全部)C++ API来自动转换的,好处是我们能使用绝大部分的C++ API,而且制作速度快,但也有很多问题,首先API是为C++设计的,C++和Python的最大区别之一就是指针,API中使用指针的地方非常多,为了解决这个问题,Python API里多了一个专门处理指针的类(令Pythoner蛋疼的东西),而且很多类方法都是没有Python版本的,很多的Python特性也不支持,其实就感觉跟使用C++版本没太多的区别.
2.0就是他 ...
从我开始给Maya开发UI工具的时候起就觉得给窗口起名是件麻烦的事情,因为Maya不允许有两个同名的窗口存在,所以要起一个独一无二的名字,我表示这让我很蛋疼.
我喜欢用类来编写UI,因为它让我从此不再蛋疼.
from maya import cmds
class MyWindow(object):
window = None
def __init__(self):
"""
do what you want
"""
pas ...
时至今日,动画电影的数量在不断增多,技术也越来越精湛.但我最喜欢的3部作品都是几年前的,因为对我而言它们不仅仅是部好的动画电影,我还能从中学到不少东西.这3部电影并没有最喜欢的,所以按发行时间来排序.
cars | 汽车总 ...
在Maya中实现深度/广度优先搜索算法
Depth-First-Search And Breadth-First-Search in Maya
深度优先搜索算法(Depth-First-Search)
广度优先搜索算法(Breadth-First-Search)
# -*- coding: utf-8 -*-
from maya import cmds
def search(rootNode, mod=0):
"""
search dag nodes with Breadth-First-Search or Depth-Fir ...
Visual C++ 2010 Express是微软提供的免费及轻量版的Visual Studio 2010的c++版本,它可以编译x86(32位)软件,自然也能编译32位Maya插件,但它不能编译x64(64位)软件。
Maya 和 Visual Studio
你可以在maya的API Guide中的Setting up your build environment中得 ...