Adrian Herbez Rotating Header Image

psShotList.mel


I’ve created a script that provides a method for organizing camera switching and shot placement within Maya. At startup, it provides a camera view, along with a list of all cameras currently in the scene. Selecting a camera from the list will update the view through the camera.

Clicking on the “Add Shot” button will add a snapshot through the current camera (tied to the current frame) in the lower “Shot List” area. You can add as many shots as you like, changing the current time and selecting various cameras. The script maintains proper ordering of the shots based on frame number.

Once you have some shots created, you can click on any one of them to set the current time to the corresponding frame and the camera view to the corresponding camera. Right-clicking on any of the snapshots will give you options to change the time, the camera, or to delete that shot. The script is available here.

A* Algorithm animation

astar01I recently created a small animation for my algorithms class demonstrating the A* path finding algorithm. MEL was a huge help with the animation. I did a few tricky things that let me finish it very quickly, and I’ll likely be posting at least one of said tricks (the chasing-lights) in the Maya tidbits section soon.

astar02

Second-Person Shooter

This was a kind of game design one-liner- a second person shooter. Instead of “I shoot”, “You shoot”- the player selects a character that then shoots them. In the application, you select a character from a typical character-selection screen. That character then shoots you, the screen goes red, and the application starts over.

If you’d like to try it, you can download it here. Note that it’s all 2d (though implemented with OpenGL) and uses Quake3 characters.

The city of the future

cVaultA friend of mine, Carl Pisaturo and I were talking this weekend about a novel idea he had with regards to city building. Carl was thinking that instead of building a city and then digging down for things like subways and etc, why not just create the holes first, by building the city on top of a gridwork of uniform prefabricated concrete forms, which would provide ample room for transportation, plumbing, etc, while leaving more of the above-ground space free for buildings and walkways.

I made a mockup of the form in Maya, with results at right. Click here to download a short animation (1.2 Megs) of a three-tiered foundation being built.

Updated Street Grid Demo

I’ve built up the street grid app into a proper demonstration of the Infinicity system. This is a small application demostrating a persistent, infinite virtual space based on psuedorandom numbers. At any given moment, the app only knows about 9 grid units, each of which forms its streets independant of each of the other grid units, yeilding a bottom-up generation of street patterns.

Walking in any direction causes the program to move the existing grid units and generate three new ones. Walking more three or more grid units in any direction will result in an entirely new set of 9 grid units. However, since the generative process is based on pseudorandom numbers seeded with the world coordinates of the grid unit, returning to the same place will cause the exact same pattern to be re-spawned.

If you’d like to try it out for yourself, you can download a zip here.

Street Grid Demo

I’ve made a small demo app to experiment with local methods to generate streets for the Infinicity project with interim results at left. The approach the program takes is based on:

  • a randomized number of nodes per edge
  • a randomized (though so far hard-wired at 2) number of internal nodes per grid unit
  • creating edges between the internal nodes
  • creating edges between each edge node and the closest internal node

In the real app, the randomization of the edge nodes (both in number and placement) will be based on a simple mathematical combination of the coordinates of the edge vertices, causing neighboring grid units to line up with each other without any direct connection. This is implemented, but disabled in the above app, in order to get a better feel for the variations produced by the process.

If you’d like to see the demo in action, you can download it here.

UCI ICS/ACE video shoot

UCI promo vidWow three TLA (three-letter acryonyms), all at once. A few weeks ago, a film crew came through the ACE (Arts, Computation, Engineering) department area as part of a promo shoot for the school of ICS (Information and Computer Science) here at UCI (Univeristy of California, Irvine). They had me say a few canned phrases, and then interviewd me about the ACE program, which ended up in the video.
They shot myself and Garnet Hertz (in the background working on his cokroach-controlled robot) in the ACE fabrication shop for that authentic blue-collar this-is-where-we-build-things feel, hence the image at left.

The Construction of Living Robots revealed

the construction of living robotsBack when I was working out of the Studio for Creative Inquiry at Carnegie Mellon University, I came across a pamplet published in 1952 by one Edmund C. Berkley entitled “The Construction of Living Robots” where it was put forth that…

It would seem reasonable to expect that before a dozen more years go by, automatic machines (i.e., robots) that possess the essential properties of life will be “in existence” — or should we say “alive”? Certainly much more than half the distance to the construction of living robots has been traveled

I scanned in all the pages (it’s a fairly short document), and I recently found the scans and their web-ready versions in an old CD, so I put it up here for anyone who’s interested. Click on the pages to advance them.

Deaf on Hollow Winds 3d graphic

falling stones
I recently created a new interactive 3d piece for the OmniCircus show, meant to accompany “Deaf on Hollow Winds”, one of the songs we perform (written by Frank Garvey). The piece consists of an endless stone walkway that crumbles away and spreads off into the sky, with a moving sunset backdrop.

Maya 2, MEL scripting finals and feedback

So here we are at the end of the summer semester, both live and online. Since I wanted to give my (online) students as much time as possible to submit their projects, I gave them until the closing date of the course. As a result, it makes it impossible for me to offer feedback on the class site, so I’ll be posting it here: