This assignment was was particularly interesting to me because it challenged me to understand my limitations with coding. Additionally, it has pushed me to think outside of the box when creating a self portrait.
I did not accomplish what I wanted to but here are my thoughts: I wanted to collect my images that are currently on the web and see how those images can can be arranged to convey an image of me.
I also wanted to construct and deconstruct the idea of “self portrait” by adding and subtracting words to these two words. I wanted to give this a poetic-like feel.
I created this character, Space Girl. She wears a an astronaut space helmet an a number eight jersey (referencing Lakers and Kobe Bryant when he wore number 8). She also has purple socks and black shoes.
Interest in Class
I am excited about this class. My interest in this class is that I would have the capability to capture custom animations/motion. Currently I have been limited to using preexisting animation from Mixamo. I believe this will afford me the opportunity to make more compelling VR content in addition to AR content. Looking back at experiences I previously developed, I was limited in this area.
Lately, I’ve been interested in subways/trains and the culture within subways. I have also been intrigued by the idea of space travel. As a result, my mood board is filled with content from outer space and subways and trains. Particularly, I am drawn to the natural path a railroads create. They either guide our eyes into the depths of a forest or into the darkness of a tunnel. For me, it is there that I begin to imagine other worlds.
Below are images from my mood board.
Here for full mood board.
Calibration and Rigid body Lab
For the lab a few of us worked as a group to calibrate the room.
Here, you can see the data points of the wand. We made sure all of the camera had at least 10,000 sample.
Here you can see Asha showing these cameras some love. They were feeling a little neglected by the wand.
We ten moved to calibrate the ground.
Here, we successfully calibrated the room.
We then moved to un real
Here are the steps we took for calibrating the room.
- Before Calibrating
- Make sure to mask out any reflective material
- Select “Mask visible”
- “Start Wanding”
- Make sure every camera has at least 10,000 data points
- “Calculate then “Apply Results”
- Before doing so, make sure to hide the wand
- Calibrate Ground Plane
- “Assign Rigid Bodies
- Create layout
- highlight rigid body then right click
- rigid body
- create from selected markers -> then change name
- Record Take
- Data Streaming
- local Interface
- Unreal should be 184.108.40.206
- Bone Naming Convention
- Should be “Motive”
- Optitrack client origin
- Server Address
- Connection Type
- Bone Naming Convention
- Optitrack Rigid Body Actor
- Add an object
- Ex. Sphere
- Under “Mobility” make “Moveable”
- Then Parent to actor
- Then reset the position of the object
Final Project Proposal
Final projects are a creative idea inspired by the concepts in this class. There is no requirement to use a particular aspect of programming. The idea and your enjoyment and interest in the idea is what counts. Some things to remember.
- Keeping things simple and small in scope is a plus. If your project idea is a big one, consider documenting the larger idea but implementing just a small piece of it.
- Also think about making a final project for a small audience, even one single person like a family member or friend. . . or yourself. This can be a good way to focus your idea and design process. “Generalizing” the idea can come later (or maybe not at all.)
- Final projects can be collaborations with anyone in any class.
- Final projects can be one part of a larger project integrated with Physical Computing or another class.
For my final project I decided to create a visual to the song HiiiPower by Kendrick Lamar.
How it works:
There is a boombox and a flat screen tv preloaded onto the screen. And there are six buttons on the boombox. As you press each button a section of the song will play. Once the song plays the text will play also. In addition to the audio and text pictures relevant to the lyrics will play on the tv.
This is how the screen will first appear.
Once each button is pressed the screen of the tv will display a visual that is specific to the lyrics that are playing.
Once you press another button the same will happen.
- Create a sketch with one or more of the following. Feel free to add DOM elements to a previous sketch.
- Pre-defined HTML Elements
- Pre-defined CSS Styles
- HTML Elements generated by your p5 sketch
- Some kind of mouse interaction with an HTML Element using a callback function you write.
- If you are feeling ambitious, try replacing a DOM element with a “physical sensor!”
- Questions you might ask yourself while working on the above.
- When does it make sense define HTML elements in
- When does it make sense to “generate” HTML elements with code in p5?
- When does it make sense to apply styles in code with the
style() function vs. predefined styles in
- Next week we will look at working with data and APIs in class. If you feel so inclined you can take a look at some of the video tutorials in advance. Please add a link to a data set or “API” that interests you. You don’t have to know anything about how to use it, but having a list of examples we can examine in class next week will add to the discussion. You can also contribute to this wiki list of data sources.
- The idea this week is to explore re-organizing your code. It is 100% legitimate to turn in a version of a previous assignment where nothing changes for the end user, but the code has been restructured. You may, however, choose to try a new experiment from scratch. Aim to keep
draw() as clean as possible, and do everything (all calculations, drawing, etc.) in functions that you create yourself. Possibilities (choose one or more):
- Break code out of
draw() into functions.
- Use a function to draw a complex design (like this) multiple times with different arguments.
- Write a function to that returns the result of a mathematical operation that you need to do several times in your code.
- An optional quiz to test your knowledge if you like.
- In general this week, you should work with rule-based animation, motion, and interaction. You can use the ideas below or invent your own assignment. Start by working in pairs/groups as determined in class. Try pair programming, 1 person at keyboard, the other keeping overall picture. Can you divide an idea into two parts and combine those parts? Can you swap sketches and riff of of your partner’s work? You can post together or break off and complete the assignment individually.
- Try making a rollover, button, or slider from scratch. Compare your code to the examples below. Later we’ll look at how this compare to interface elements we’ll get for free from the browser.
- Create an algorithmic design with simple parameters. (One example is 10PRINT, see: 10PRINT example.
- Tie the above two together and have an interface element control the visual design or behavior of other elements in your sketch.
- Try this quiz if you want to test your knowledge.
reate a sketch that includes (all of these):
- One element controlled by the mouse.
- One element that changes over time, independently of the mouse.
- One element that is different every time you run the sketch.
- (You can choose to build off of your week 1 design, but I might suggest starting over and working with one or two simple shapes in order to emphasize practicing with variables. See if you can eliminate all (or as much as you can) hard-coded numbers from the sketch.)
- Write a blog post about how computation applies to your interests. This could be a subject you’ve studied, a job you’ve worked, a personal hobby, or a cause you care about. What projects do you imagine making this term? What projects do you love? (Review and contribute to the ICM Inspiration Wiki page. In the same post (or a new one), document the process of creating your sketches. What pitfalls did you run into? What could you not figure out how to do? How was the experience of using the web editor? Did you post any issues to github?