Skip to main content

Processing ile Renk Oyunu Yapmak

Merhaba;
Bu çalışmamızda Arduino uygulamalarımızı bir kenara bırakarak renkli Processing dünyasına renkli bir adım atmayı deneyeceğiz.


Çalışmamı anlatacak olursam, programı çalıştırdığınız zaman bir harf girmeniz gerekiyor.
Girebileceğinizi harfler:

  • Kırmızı için : k
  • Yeşil için : y
  • Mavi için : m
  • Sarı için : s
  • Pembe için : p
  • Turkuaz için : t
  • Beyaz için : b
  • Siyah için : x
  • Ekranın ortasından başlayan çubuklar için : ç
  • Ekranı temizlemek için : z
Örneğin programı açtıktan sonra 'm' harfine basıp elinizi çektikten sonra her tıklamanızda mavi bir daire oluşturacaksınız. Diğer harflere basarak renginizi değiştirebilirsiniz.
Eğer 'm' harfine basılı tutarak farenize tıklarsanız mavi bir kare şeklini ekrana basacaksınız.Aynı şekilde diğer harflere basılı tutarak çeşitli renklerde kareler elde edebilirsiniz.
Diğer bir seçenek ise 'ç' harfine basmanızdır, bastıktan sonra ekranın ortasını merkez kabul eden bir çubuğun diğer ucunun konumunu siz belirleyeceksiniz.


Son olarak 'z' harfine basıp ekrana bir kere tıklamanızı ekranı temizleyecektir.

Çocukların renkleri öğrenmesi için güzel bir oyun olması ümidi ile (:

Kaynak kodu için :

//Processing ile Renkli bir oyun denemesi
//M.Furkan Bahat 

int k,y,m;

void setup()
{
  size (1350,690);
}
void draw()
{
  if(mousePressed)
  {
    
   if (keyPressed)
   {
     switch (key) {
    case 'k':
      k = 255;
      y = 0;
      m = 0;
      fill(k, y, m);  
       rect(mouseX, mouseY, 50, 50);
      break;
    case 'y':
      k = 0;
      y = 255;
      m = 0;
      fill(k, y, m);   
       rect(mouseX, mouseY, 50, 50);
      break; 
    case 'm':
      k = 0;
      y = 0;
      m = 255;
      fill(k, y, m);   
       rect(mouseX, mouseY, 50, 50);
      break;  
    case 's':
      k = 255;
      y = 255;
      m = 0;
      fill(k, y, m);  
       rect(mouseX, mouseY, 50, 50);
       break;
    case 'p':
      k = 255;
      y = 0;
      m = 255;
      fill(k, y, m);  
       rect(mouseX, mouseY, 50, 50);
       break;
    case 't':
      k = 0;
      y = 255;
      m = 255;
      fill(k, y, m);  
       rect(mouseX, mouseY, 50, 50);
      break;   
    case 'b':
      k = 255;
      y = 255;
      m = 255;
      fill(k, y, m);  
       rect(mouseX, mouseY, 50, 50);
      break; 
    case 'x':
      k = 0;
      y = 0;
      m = 0;
      fill(k, y, m);  
       rect(mouseX, mouseY, 50, 50);
      break; 
    default: 
      break;
    }
   } 
  
  if (key == 'ç' )
  {
    triangle(mouseX, mouseY,mouseX, mouseY, 675, 345);  
  }
  
  if (keyPressed != true)
  {
   switch (key) 
    {
    case 'k':
      k = 255;
      y = 0;
      m = 0;
      fill(k, y, m);  
       ellipse(mouseX, mouseY, 50, 50);
      break;
    case 'y':
      k = 0;
      y = 255;
      m = 0;
      fill(k, y, m);   
       ellipse(mouseX, mouseY, 50, 50);
      break; 
    case 'm':
      k = 0;
      y = 0;
      m = 255;
      fill(k, y, m);   
       ellipse(mouseX, mouseY, 50, 50);
      break;  
    case 's':
      k = 255;
      y = 255;
      m = 0;
      fill(k, y, m);  
       ellipse(mouseX, mouseY, 50, 50);
       break;
    case 'p':
      k = 255;
      y = 0;
      m = 255;
      fill(k, y, m);  
       ellipse(mouseX, mouseY, 50, 50);
       break;
    case 't':
      k = 0;
      y = 255;
      m = 255;
      fill(k, y, m);  
       ellipse(mouseX, mouseY, 50, 50);
      break;   
    case 'b':
      k = 255;
      y = 255;
      m = 255;
      fill(k, y, m);  
       ellipse(mouseX, mouseY, 50, 50);
      break; 
    case 'x':
      k = 0;
      y = 0;
      m = 0;
      fill(k, y, m);  
       ellipse(mouseX, mouseY, 50, 50);
      break; 
    default: 
      break;
     }
    if(key == 'z')
      {
      background(209);
      }  
    }
  }
}

Comments

Popular posts from this blog

Artificial Horizon and Compass Using Arduino-Processing-MPU6050

Hi everyone, Today we will realize our artificial horizon using Arduino, Processing and MPU 6050 IMU. In this application I use Arduino Uno, If you should use different card, you should examine i2c communication for your card. For Arduino Uno connections will be like that: MPU6050 Pins       Arduino Uno Pins Vcc                        3.3V Gnd                       Gnd SCL                       A5 SDA                      A4 INT                       2 (Digital Pin) This my MPU6050, if you want more information about it: http://www.invensense.com/mems/gyro/documents/PS-MPU-6000A-00v3.4.pdf After it we connecting the MPU6050 to Arduino. If our Arduino-MPU6050 sy...

Onuncu Yıl Marşı - Arduino

Bir önceki çalışmamızda sizlere Arduino'nun hazır melodilerinden dinletiler sunmuştuk. Bu gün ise sınırları biraz daha zorlayıp Nokia 3310 Besteleyici deneyimime güvendiğim için kodları kurcalayarak bestelediğim Onuncu Yıl Marşı'nı bayrak sallayarak dinletmek istiyorum. Eğer gerçekten Onuncu Yıl Marşı olarak dinlerseniz öyle oluyor, lütfen biraz ön yargı :) (3310'nun besteleyisinden kat be kat zor bir iş olduğunu itiraf etmeliyim) Servo ucuna bağladığım bayrağı sürekli olarak bir sağa bir sola sallama isteğim, Tone.h kütüphanesinin Servo.h kütüphanesini yanında barındırmak istememesi üzerine sekteye uğradı. Timer hatası sebebiyle bunu yapamadım, fakat yılmadım servo'yu direkt melodi sinyalinin geldiği bacağa bağladım. Bu ise her ne kadar dolu dolu bir bayrak sallayış olmasa da gönlümüzü etmeye yetiyor :) Gerekli malzemeler: Servo Hoparlör Bağlantı Kabloları Olmazsa olmazımız bayrağımız. Bağlantının nasıl yapılacağına gelecek olursak Hoparlörün si...

Görüntü işleme için Uçuş Denemesi

Merhabalar, Bu çalışmamızda havandan görüntü almak isteyen veyahut bu görüntüleri işlemek isteyen arkadaşlara referans olsun diye iki adet video paylaşacağım. Videoları kişisel bilgisayarınıza indirip görüntü işleme açısından çalışmalar yapabilirsiniz. Diğer taraftan yerde belirlediğimiz bir nesnenin boyutunun irtifa değerlerine göre ekranda kapladığı piksel değişimini inceleyebilirsiniz. Ya da en azından belirli irtifa değerlerinden nesneler ve insanların nasıl göründüğü hakkında genel kültür olur :) İlk videoda 70cm x 70cm beyaz bir levha kullanıldı, diğer taraftan oturan, ayakta ve yürüyen insan figürleri de videoda mevcut. Bunların çeşitli irtifa değerlerine göre dikey şekilde konumlandırılmış, yere doğru bakan kameradan nasıl göründüğü konusunda fikir sahibi olmanıza sebep olacağını düşünmekteyim. İkinci videoda 30-100 metre arasında dolaşan (genelinde 45 metre civarında) bir insansız hava aracından alınan görüntüler mevcut. Aşağı konumlandırılmış hedefler 70 cm x ...