Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Report On Pure Data and Gem
1. Report on Pure Data and Gem
-----Tong Xu
. Introduction of Project on Pure Data and Gem
PD is a real-time graphical programming environment for audio, video,
and graphical processing. I was, and am in favor of it when I got in
touch with it on the class. It was fantastic when I watched the PD
patches were adopted to control the camera, or make various kinds of
sounds, or even form a control chain that all the classmates were
involved! However, compared with other modules, I found least
learning materials on PD, so it took me longer time on understanding
and performing PD patches. Just because of this, I will work on it to
supplement and translate more materials to people in China.
Personally using PD to control audio and video, though interesting, is
beyond my comprehension. So in my PD project, I took advantage of
Gem to perform graphical processing in Pure Data. And for the
dissertation project, I prefer to adopt Logic Pro to make background
music for three-dimensional chatting.
1
2. To make this project more interactive, I added more interactive features,
including adding a light to the object, allowing users to rotate it, and
three colors are provided to change.
The Explanation of the Project—Color and Light
The “gemwin” was made at the beginning in PD patch because it
controlled the window manager. It passed various messages to the
manager, controlling the attributes of the window. Then, I made a
message “create” to create Gem-window, and a message “destroy”
2
3. to close the Gem-window. Messages “1” and “0” were used to turn
on or off the rendering.
The “gemhead” was also necessary as it connected the gem objects
to the window manager. The start of any gemList began with the
gemhead.
Then I thought of adding a point-light to the scene. The
non-geometric object “world_light” was created to produce a light
which was at an infinite distance from the scene, as the sun. It was
connected to be previously-made object “gemhead”. Consequently,
“lighting 0” and “lighting 1” were set up to give messages of “not
receive the light” and “receive the light” to gemwin.
Then I adjusted the light with “rotate”. It was built as a
manipulation object and accepted a gemList that began with
“gemhead”. A number box was connected to “rotate” to display the
rotation amount. Users are allowed to click on the number box and
3
4. drag upward or downward to change the value continuously.
Another manipulation object “color” was then made to set colors of
all subsequent shape and vertex operations until reset by another
color. In the project, there were three colors provided, ie, green,
grey and yellow.
.Now, the project of Pure Data--- Color and Light
has been finished. I am always excited whenever I
play with it, and hope you will enjoy too!
4