A big thanks to Tim, I have achieved what i set as a goal in the internim presentation. He was very helpful at the last night tutorial session. I had to wait two and a half hours for my turn though.
However, i am not very happy because when i reach this level of the project, i found out that there were still so many thing to do. In worse case, I have to restart from the beginning.
In my opinion, my work now is quite good looking ( for my taste) but still lacks of fun to play with or frankly, boring. The interaction between the patterns and the mouse are not so good and still very simple. The sounds alone are quite OK but then the things that represent it have serious problem. They don't sync with the sounds.
I haven't got any comment or feedback from other people though. I don't know what people think about my project now.
Still got a lot of works to do. See you in the next post. Hopefully a good news.
Thursday, 14 April 2011
Wednesday, 13 April 2011
Well, seems like i have to upload my code here for the time being but i will try again later to upload the code to openprocessing.
So here's the code that i have been working on so far:
--------------------------------------------------------------------------------------------------------------
import ddf.minim.*;
import ddf.minim.signals.*;
import ddf.minim.analysis.*;
import ddf.minim.effects.*;
Minim minim;
AudioPlayer song1;
AudioPlayer song2;
AudioPlayer song3;
AudioPlayer song4;
AudioPlayer song5;
AudioPlayer song6;
AudioPlayer song7;
AudioPlayer song8;
AudioPlayer song9;
AudioPlayer song10;
//ArrayList Line1 = new ArrayList();
//Line.add(Line1);
int s1=0;
void setup(){
size(500,500);
background(255);
minim = new Minim(this);
song1 = minim.loadFile("1.wav");
song2 = minim.loadFile("2.wav");
song3 = minim.loadFile("3.wav");
song4 = minim.loadFile("4.wav");
song5 = minim.loadFile("5.wav");
song6 = minim.loadFile("6.wav");
song7 = minim.loadFile("7.wav");
song8 = minim.loadFile("8.wav");
song9 = minim.loadFile("9.wav");
song10 = minim.loadFile("10.wav");
}
void draw(){
}
/*void mouseDragged(){
background(255);
smooth();
stroke(0);
strokeWeight(0.2);
int x1,x2;
int m1=mouseX;
int m2=mouseY;
for(x1=0; x1<=500; x1=x1+5){
line(x1,0,m1,m2);
}
for(x2=0; x2<=500; x2=x2+5){
line(m1,m2,x2,500);
}
//song.play();
}*/
void mouseClicked(){
background(255);
smooth();
stroke(0);
strokeWeight(5);
point(mouseX,mouseY);
}
void mouseDragged(){
background(255);
smooth();
stroke(50);
strokeWeight(0.2);
int x3,x4;
float m3=mouseX;
float m4=mouseY;
for(x3=0; x3<=500; x3=x3+20){
line(x3,0,m3,m4);
}
for(x4=0; x4<=500; x4=x4+20){
line(m3,m4,x4,500);
}
}
void mouseReleased(){
background(255);
smooth();
stroke(0);
strokeWeight(0.2);
int x1,x2;
float m1=mouseX;
float m2=mouseY;
for(x1=0; x1<=500; x1=x1+20){
line(x1,0,m1,m2);
}
for(x2=0; x2<=500; x2=x2+20){
line(m1,m2,x2,500);
}
if (m1<=50){
}
if (m1>50 && m1<=100){
song2.loop();
}
if (m1>100 && m1<=150){
song3.loop();
}
if (m1>150 && m1<=200){
song4.loop();
}
if (m1>200 && m1<=250){
song5.loop();
}
if (m1>250 && m1<=300){
song6.loop();
}
if (m1>300 && m1<=350){
song7.loop();
}
if (m1>350 && m1<=400){
song8.loop();
}
if (m1>400 && m1<=450){
song9.loop();
}
if (m1>450){
song10.loop();
}
}
void stop()
{
song1.close();
song2.close();
song3.close();
song4.close();
song5.close();
song6.close();
song7.close();
song8.close();
song9.close();
song10.close();
minim.stop();
super.stop();
}
void keyPressed()
{
if(key == 's' || key == 'S')
{
String filePath = selectInput("Saving PNG - Select or Type File Name"); // Opens file chooser
if(filePath != null)
{
save(filePath + ".png");
}
}
}
--------------------------------------------------------------------------------------------------------------
So what it does?
What i want it to be done: -I want to make other pattern by clicking in the white space on the screen. To achieve these i have to use arrayList but i still dont really get it.
-I want the circal appears wherever the midpoint is when the mouse released. And it will get bigger when the sound plays (prob the value will change from 0-20 range) and vanishes when the sound stops and then begins another loop when the sound plays again.This idea is actually inspired by the xylophone sound (as i mentioned in the earlier post). It always make me think about water drop whenever this sound plays
- I want the midpoint of each pattern connect with others by straight lines and these line will change the length if you change either or both midpoints' position that they connect.
So here's the code that i have been working on so far:
--------------------------------------------------------------------------------------------------------------
import ddf.minim.*;
import ddf.minim.signals.*;
import ddf.minim.analysis.*;
import ddf.minim.effects.*;
Minim minim;
AudioPlayer song1;
AudioPlayer song2;
AudioPlayer song3;
AudioPlayer song4;
AudioPlayer song5;
AudioPlayer song6;
AudioPlayer song7;
AudioPlayer song8;
AudioPlayer song9;
AudioPlayer song10;
//ArrayList Line1 = new ArrayList();
//Line.add(Line1);
int s1=0;
void setup(){
size(500,500);
background(255);
minim = new Minim(this);
song1 = minim.loadFile("1.wav");
song2 = minim.loadFile("2.wav");
song3 = minim.loadFile("3.wav");
song4 = minim.loadFile("4.wav");
song5 = minim.loadFile("5.wav");
song6 = minim.loadFile("6.wav");
song7 = minim.loadFile("7.wav");
song8 = minim.loadFile("8.wav");
song9 = minim.loadFile("9.wav");
song10 = minim.loadFile("10.wav");
}
void draw(){
}
/*void mouseDragged(){
background(255);
smooth();
stroke(0);
strokeWeight(0.2);
int x1,x2;
int m1=mouseX;
int m2=mouseY;
for(x1=0; x1<=500; x1=x1+5){
line(x1,0,m1,m2);
}
for(x2=0; x2<=500; x2=x2+5){
line(m1,m2,x2,500);
}
//song.play();
}*/
void mouseClicked(){
background(255);
smooth();
stroke(0);
strokeWeight(5);
point(mouseX,mouseY);
}
void mouseDragged(){
background(255);
smooth();
stroke(50);
strokeWeight(0.2);
int x3,x4;
float m3=mouseX;
float m4=mouseY;
for(x3=0; x3<=500; x3=x3+20){
line(x3,0,m3,m4);
}
for(x4=0; x4<=500; x4=x4+20){
line(m3,m4,x4,500);
}
}
void mouseReleased(){
background(255);
smooth();
stroke(0);
strokeWeight(0.2);
int x1,x2;
float m1=mouseX;
float m2=mouseY;
for(x1=0; x1<=500; x1=x1+20){
line(x1,0,m1,m2);
}
for(x2=0; x2<=500; x2=x2+20){
line(m1,m2,x2,500);
}
if (m1<=50){
song1.loop();
stroke(0.2);
fill(255,100);
s1=s1+5;
ellipse(m1,m2,s1,s1);
}
if (m1>50 && m1<=100){
song2.loop();
}
if (m1>100 && m1<=150){
song3.loop();
}
if (m1>150 && m1<=200){
song4.loop();
}
if (m1>200 && m1<=250){
song5.loop();
}
if (m1>250 && m1<=300){
song6.loop();
}
if (m1>300 && m1<=350){
song7.loop();
}
if (m1>350 && m1<=400){
song8.loop();
}
if (m1>400 && m1<=450){
song9.loop();
}
if (m1>450){
song10.loop();
}
}
void stop()
{
song1.close();
song2.close();
song3.close();
song4.close();
song5.close();
song6.close();
song7.close();
song8.close();
song9.close();
song10.close();
minim.stop();
super.stop();
}
void keyPressed()
{
if(key == 's' || key == 'S')
{
String filePath = selectInput("Saving PNG - Select or Type File Name"); // Opens file chooser
if(filePath != null)
{
save(filePath + ".png");
}
}
}
--------------------------------------------------------------------------------------------------------------
So what it does?
![]() |
| If you drag the midpoint, the pattern will change according to the new mousex position and mousey position |
What i want it to be done: -I want to make other pattern by clicking in the white space on the screen. To achieve these i have to use arrayList but i still dont really get it.
-I want the circal appears wherever the midpoint is when the mouse released. And it will get bigger when the sound plays (prob the value will change from 0-20 range) and vanishes when the sound stops and then begins another loop when the sound plays again.This idea is actually inspired by the xylophone sound (as i mentioned in the earlier post). It always make me think about water drop whenever this sound plays
- I want the midpoint of each pattern connect with others by straight lines and these line will change the length if you change either or both midpoints' position that they connect.
Where has my project been?
It has been a while since i last updated my blog. I couldn't upload my code to openprocessing anymore. I dont know why but it seems like openprocessing is refusing my brilliant code ( kidding! :-) )
This afternoon i just spent about an hour to find my desired sound for the project and to edit it (the sound).
Well, the thing was that it was hard to find a proper sound that actually fits the images when the code plays. There were millions of sound samples over the net.
But, i think today is my lucky day because i have finally found the sound that fit the project quite well( in my opinion ). I came across the xylophone sound samples when skimming through hundreds of sound on the site named : freesound.org. I really like them. They even inspired me. And the best think: I got some new idea for the project thanks to the sound.
With the sound ready, i am half way to the goal.
I am trying to upload the code one more time to illustrate what i have done so far. If openprocessing still refuse my code then i will have no other way than upload the code and the images here.
This afternoon i just spent about an hour to find my desired sound for the project and to edit it (the sound).
Well, the thing was that it was hard to find a proper sound that actually fits the images when the code plays. There were millions of sound samples over the net.
But, i think today is my lucky day because i have finally found the sound that fit the project quite well( in my opinion ). I came across the xylophone sound samples when skimming through hundreds of sound on the site named : freesound.org. I really like them. They even inspired me. And the best think: I got some new idea for the project thanks to the sound.
With the sound ready, i am half way to the goal.
I am trying to upload the code one more time to illustrate what i have done so far. If openprocessing still refuse my code then i will have no other way than upload the code and the images here.
Friday, 8 April 2011
Tuesday, 5 April 2011
Internim Presentation of Project number TWO
After hours thinking about what to do in this up coming project 2 and a lot of sketches was created ( which will be uploaded in the later posts), i have finally came up with the best sketch (in my collection) that i could offer at the time ( the image below this text ) to present to the class in Friday.
Background size : 500x500
Default background: black or white - blank ( according to the image below, there would be a pattern in the background as default, but i changed the idea )
SamplePattern ( when mouse clicked at the point (250,250) - play sound number 5-6 volume 50% )
Mousedrag ( drag the midpoints of the patterns ) change the sound and the volume according to the new position of the midpoint.
Detail:
Default background: black or white - blank ( according to the image below, there would be a pattern in the background as default, but i changed the idea )
Sounding: the background will be divided vertically into 10 sections ( 10 different sound in each section ) and horizontally into 100 sections ( volume level 0-99 ). And the grid is not visible to the users.
Mouse click (everywhere in the screen): Creates a line pattern as seen in project 1 ( image below). Wherever the mouse click,the mid point of the pattern will be generated and gradually connect to the edges by lines. And also depending on where a midpoint is made, the patten has its own sounding characteristic.SamplePattern ( when mouse clicked at the point (250,250) - play sound number 5-6 volume 50% )
Midpoint vs. midpoint Patterns will interact with each other through their midpoint. When a new pattern is created, the midpoint of it will draw a line to connect with the midpoint of the older pattern appeared on the screen. (The sound will play in order from old to new.)
Idea to be developed : I am thinking about adding some more effect. For instance what does it like if i drag quickly the pattern and then suddenly release the mouse -> the pattern will keep flying across the screen and bounce back until it hits the wall...
Thursday, 24 March 2011
Note on "Programming-the bigger picture"
-Programming helps design and architect students as it is a part of some regular used software in school
-Knowing about programming is benificial for designers. (especially interactive, web, games designers)
Cons: -Not used to create complicated static pictures or animations that are not patterns based or constantly changing.
Pros: -Helpful whenever need : variation, interaction, generation, scalability, repetition and calculation.
-There are many different programming languages. Each one has its own pros and cons. Depending on what you are doing, choose the suitable language.
-Plagiarism is very bad, always have to acknowledge others' works if use
-Knowing about programming is benificial for designers. (especially interactive, web, games designers)
Cons: -Not used to create complicated static pictures or animations that are not patterns based or constantly changing.
Pros: -Helpful whenever need : variation, interaction, generation, scalability, repetition and calculation.
-There are many different programming languages. Each one has its own pros and cons. Depending on what you are doing, choose the suitable language.
-Plagiarism is very bad, always have to acknowledge others' works if use
Reflection
After 3 weeks of coding for the project 1 of this class, i think i have learnt quite a lot. From a complete moron at coding, now i can write some codes to make the computer draw something. That's quite an achievement. And actually in the process of learning, i found that coding is quite fun and not boring like i used to think about it. I am getting used to loop and variable now. So hopefully, i can reduce from 300 lines of code to 10 lines of code doing the same task in the next project.
Also, i have learned about documenting my work and expressing my ideas in words, which i found it had been hard to do so before i took this paper.
The thing that motivated me in this class probably was the other students. Thanks to open processing, I could see what others were doing and I could compare my work to theirs. I didn't want to lose to them so I always tried to improve my works in order to beat them.
My goal for the next project:
-Finish sooner therefore i will have more time to refine the idea before submitting.
-Use advance coding technique where available (variable and loop)
-Try to get as many idea on the first hand. Work on many side development at the same time then compare and choose the best one then refine.
Also, i have learned about documenting my work and expressing my ideas in words, which i found it had been hard to do so before i took this paper.
The thing that motivated me in this class probably was the other students. Thanks to open processing, I could see what others were doing and I could compare my work to theirs. I didn't want to lose to them so I always tried to improve my works in order to beat them.
My goal for the next project:
-Finish sooner therefore i will have more time to refine the idea before submitting.
-Use advance coding technique where available (variable and loop)
-Try to get as many idea on the first hand. Work on many side development at the same time then compare and choose the best one then refine.
Subscribe to:
Posts (Atom)





