NoSleepCreative Wiki
  • Welcome to NoSleepCreative
  • After Effects
    • Getting Started with Expressions
    • Expressions & Snippets
      • JSX Cheatsheet
      • Expression Troubleshooting
      • Utilities
      • Shape & Mask
      • Type & Text
    • Cookbook
      • Algorithmic
      • Random properties
      • Harmonic Motion
      • Staggering
      • Tessellation & Tiling
      • Type animators
      • Speed lines
      • Radial Array
      • Orb & Trails
      • Shading & Texturing
      • Responsive
      • Automation
      • Setup & Rigs
    • Getting started with Scripting
    • Scripting
      • Utilities
      • Master Properties
    • ScriptUI
  • Studio Ops
    • Tooling
    • Toolkitting
    • Knowledge Base
    • Naming Convention
    • DAM
  • Cinema 4D
    • Formulas
    • Python Cheat Sheet
      • For Artists
      • Maya Environment
      • Maya snippets
      • VSFX 705
    • Cookbook
  • Info
    • About
    • Portfolio
    • Course
    • YouTube
    • Gumroad
    • GitHub
  • Dev
    • archive
      • Webscraping
      • Google Sheets Formulas
      • SQL
      • Terminal
      • C++
      • Unreal Engine
      • Concert Visualization
      • Dome-projection
      • UI UX
      • Professional Etiquettes
      • Woes
      • How to get better
        • Portfolio / Showreel
        • Design with cooking
      • Media theories
        • Post Cinematic Affect
        • Marxism, Reproduction and Aura
        • Heuristics & Authorship
        • 02 Semiotics
        • 3 Process?
        • 05
        • 06 Technology & Mediation
        • Formalism
        • Simulation
        • The Gaze & Media Critique
        • Import
        • 10-12
      • Recommended books
        • 🔴Things I learned
      • Mac Superuser
        • Applescript
      • InDesign
      • Illustrator
      • Blender
      • Premiere Pro
      • Mathematics
        • Probability
        • Linear Algebra
      • Shader Dev
      • Getting Started with After Effects
        • Best Practices
        • Pimping up AE
        • Environment
      • Houdini
        • Cheatsheet
        • Cookbook
        • Techniques
        • Dynamic
        • Rendering & Lighting
        • Animation
        • Particles
        • Others
          • Modeling
          • Fluids - Pyro & Smoke
          • Rendering
      • REGEX
    • Sandbox
      • Nexrender
        • Terminology
        • Project Files Preparation
Powered by GitBook
On this page
  • Setting up
  • Cutter for Mac
  • Setting up Maya Env for Mac
  • Student web spaces
  • Atom
  • Notes
  • Using cutter
  • Resources
  • Getting started with Python
  • Lesson 3

Was this helpful?

  1. Cinema 4D
  2. Python Cheat Sheet

VSFX 705

Setting up

Cutter for Mac

Modifying the run file

export PYTHONPATH=$PYTHONPATH:$RMANTREE/bin
export PATH=$RMANTREE/bin:$PATH

export MAYA_USER_DIR=$HOME/Documents/maya
export RMS_SCRIPT_PATHS=$MAYA_USER_DIR/rfm_scripts/image_tool
RMANFB=it

# change directory below to where your cutter is
cd /Users/ddu/Desktop/ddu/projects/vsfx_705/cutter

# To uncomment the next line - remove the '#' character

java -Xms512m -Xmx512m -classpath .:cutter.jar Cutter

Making the text file executable

chmod 777 run

Setting up Maya Env for Mac

  1. Copy rfm_scripts folder to /Users/ddu/Documents/maya

  2. copy scripts folder to /Users/ddu/Documents/maya

  3. Copy Arnold Shaders to /Users/ddu/Documents/maya/projects

  4. copy maya.env file to /Users/ddu/Library/Preferences/Autodesk/maya/2020

  • Maya > Window > Plugin manager > Ensure Renderman for Maya is loaded and auto-loaded

  • check script editor for environment and preferences

Student web spaces

  1. Upload your html and asset files to https://sav-myfile.scad.edu/myfile/ws-idrive/Savannah/Webspaces/Studentpages/web_pages

  • Core: font size: 20, source code pro, 4 spaces tab, Scroll past end

  • Packages: Turn off auto-complete-plus & snippets

apm install script autocomplete-python minimap file-icons python-autopep8 linter-flake8 
maya language-mel
pip install autopep8
pip install flake8 

if linter does not show up, delete your Atom config files located: /Users/userName/.atom/config.cson

Notes

keep in mind Renderman Attribute Editor, Shelf, Menu bar

Using cutter

Resources

Documentation

Learning Python for Maya

Learning Python

Getting started with Python

Key terms: list, tuple, dictionary

# script is called test.py but it 
# implements a module called "test"
# a modules contrains attributes
# an attribute can be, eg. name of a variable 

# the built-in datatypes are, nubmers, text(string),
# (and collections) list, tuple, dictionary. file.


age = 26
name = "tom"
family = 'jones'
nationatlity = 'welsh'

# an attribute can also be the name of function 
#create function
def person() 
    print(age)
    print(name)
    print(family)

#creating list 
countries = []
countries.append('usa')
countries.append('china')
countries.append('new zealand')
countries.append('england')
#countries.sort() 
#countries.reverse

# using a tuple (fixed value list) - for vertices data structures transfer
locked = (2,4,3,6,8,9)
# i can test my code by printing some value 
# this call the values 
# but comment it out if used asa module
person() 


if __ name__ == '__main__':
    #person() #(debugging purposes) 
    
    #for place in countries:
        # print(place)
    
    #print(countries[3])
    
    print(locked[0])

#print(__name__) # return name of module from where it was run
# file_test.py
# an example of how to store text in a document 

out_file= open('file directory', 'w')
for n in range(10):
    out_file.write('sphere -r 1;\n)
    out_file.write('move %f %f 0;\n' % (n,(n-2))) # placeholder %
     
out_file.close()

# to run the mel document in Maya use this mel...
#source "filedirectory"
#vsfx705/cutter/using_test.py
# only possible if the python files exist in the same directory
import test 
from importlib import reload

print(test.nationality)
test.person
# importing random
import random
val = random.uniform(0,1)
print(val)

for n in range(10):
    val = random.uniform(0,1)
    if val>0.5:
        print(val)
# rib_test.py
"""
Points "P" [0 0 0   3 5 6    5 6 7   9 9 9] "constantwidth" [1.0]
"""
  
import random
  
rib_file = open('/Users/ddu/Desktop/ddu/projects/vsfx_705/cutter/data2.rib', 'w')
  
rib_file.write('##bbox: -5 -5 -5 5 5 5\n')
rib_file.write('Points "P" [\n')
for n in range(100000):
	x = random.uniform(-5, 5)
	y = random.uniform(-5, 5)
	z = random.uniform(-5, 5)
	rib_file.write('%f %f %f\n' % (x,y,z) )
rib_file.write('] "constantwidth" [0.05]')
rib_file.close()

#Maya > Renderman menu > Archive > import rib archive 
# maya/scripts/gen_points.py
  
import random
  
def cubic(num, side):
    data = []
    n = 0
    while n < num:
        x = random.uniform(-side/2, side/2)
        y = random.uniform(-side/2, side/2)
        z = random.uniform(-side/2, side/2)
        data.append( (x,y,z) )
        n = n + 1
    return data
  
def box(num, width, height, depth):
    data = []
    n = 0
    while n < num:
        x = random.uniform(-width/2, width/2)
        y = random.uniform(-height/2, height/2)
        z = random.uniform(-depth/2, depth/2)
        data.append( (x,y,z) )
        n = n + 1
    return data
    
# how to create a spherical point cloud 
def spherical(num,radius):
    pass # define function but not implemented
# maya/scripts/rib_particles.py
import random
import gen_points
  
rib_file = open('/Users/ddu/Desktop/ddu/projects/vsfx_705/cutter/data2.rib', 'w')
data = gen_points.cubic(10000,10,0.05)
  
rib_file.write('##bbox: -5 -5 -5 5 5 5\n')
rib_file.write('Points "P" [\n')

for coord in data:
	rib_file.write('%f %f %f\n' % (coord[0],coord[1],coord[2]) )
	
rib_file.write('] "constantwidth" [0.05]')
rib_file.close()

#Maya > Renderman menu > Archive > import rib archive 
questions
    why is my cutter so slow?
    does not have vsfx705
    cannot open hyperlink

Lesson 3

list [] 
tuple () fixed values 
## bbox: -5 5 -5 5 5 5 # read by rib

def writeCubic(path

cmd E to render in Renderman

PreviousMaya snippetsNextCookbook

Last updated 4 years ago

Was this helpful?

Go myScad > >

Go to: > Myfile

cmd+click on a function (eg.print) to read the documentation

(on-line), Chad Vernon

, Mark Lutz, O'Reilly Media

(on-line), Allen Downey

http://fundza.com/rfm/customizing/index.html
my info
Web Space Activation
https://studentpages.scad.edu/instructions.html
Atom
Built-in Functions
Python built-in functions
Autodesk Introduction to Python Scripting in Maya
Python Scripting for Maya Artists
Guru99: Python Tutorial for Beginners
Learning Python
Think Python