#mousemap
Explore tagged Tumblr posts
stonegiant81 3 years ago
Photo
Tumblr media
The map of the realms where Aldrich Halftail and crew reside. #penandink #penandinkart #fantasyart #ttrpgart #osrart #mouseart #worldbuilding #mausritter #swordandwizardry #oldschoolessentials #osric #handdrawnart #dungeonsandteatime #pastoraldnd #fantasymap #mousemap #ttrpgmap #mausrittermap #handdrawnmap #fantasycartography https://www.instagram.com/p/CjSCIAau5qM/?igshid=NGJjMDIxMWI=
1 note View note
narutu 8 years ago
Photo
Tumblr media
im twelve
4 notes View notes
cmpmajorproject 8 years ago
Text
REAL TIME GLITCH USING PROCESSING
At the moment I am looking for Processing sketches in which the glitch effect is applied to the webcam feed so that glitchy images are generated in real time. I believe this is what comes closer to the final concept of my project.
All the processing sketches I will be experimenting with are found in github.com, a website which encourages open source and collaborative projects. Obviously the sketches which I will be using will be modified and adapt by me to better fit my project, nonetheless I believe this is the best way to give a start to the practical experimentation considering my limited experience with processing or any other software to create interactive installations.聽
Having specified that, these are two Processing sketches which I have found particularly interesting, not really for the glitch generated ( I am among for something more 鈥済enerative鈥澛爐han this to convey a sense of wilderness within a machine, although the glitch itself can be defined that) but mostly for the fact that the glitch is generated from the feedback of the webcam. I believe I could start from these types of sketches and modify them to adapt them to my idea.聽
WebcamGlitcher
accessible here聽:聽https://github.com/GlitchTools/WebcamGlitcher/blob/master/WebcamGlitcher.pde聽聽
import processing.video.*; Capture video;
PImage img1; int w=640, h=480;
boolean bright = true; boolean greyScale; int shiftAmount = 4; int grid = 1;
void setup() { 聽size(w, h); 聽video = new Capture(this, w, h); 聽video.start(); }
void draw() { 聽loadPixels(); // Fills pixelarray 聽float mouseMap = (int) map(mouseX, 0, width, 0, 255*3); // Brightness threshold mapped to mouse coordinates
if(shiftAmount > 24 || shiftAmount < 0){shiftAmount = 0;};
聽for (int y = 0; y< h; y++) 聽{ 聽 聽for (int x = 0; x< w; x++) 聽 聽{ 聽 聽 聽color c = video.pixels[y*video.width+x];
聽 聽 聽int a = (c >> 24) & 0xFF; 聽 聽 聽int r = (c >> 16) & 0xFF; 聽 聽 聽 聽int g = (c >> 8) & 0xFF; 聽 聽 聽 聽int b = c & 0xFF;
聽 聽 聽if (y %grid == 0) {
聽 聽 聽 聽if (bright) 聽 聽 聽 聽{ 聽 聽 聽 聽 聽if (r+g+b > mouseMap) { 聽 聽 聽 聽 聽 聽pixels[y*w+x] = c << shiftAmount; // Bit-shift based on shift amount 聽 聽 聽 聽 聽} 聽 聽 聽 聽}
聽 聽 聽 聽if (!bright) 聽 聽 聽 聽{ 聽 聽 聽 聽 聽if (r+g+b < mouseMap) { 聽 聽 聽 聽 聽 聽pixels[y*w+x] = c << shiftAmount; // Bit-shift based on shift amount 聽 聽 聽 聽 聽} 聽 聽 聽 聽} 聽 聽 聽} 聽 聽} 聽} 聽updatePixels();
聽if (greyScale) { 聽 聽filter(GRAY); 聽}
聽println("Shift amount: " + shiftAmount + " Frame rate: " + (int) frameRate + " Greyscale: " + greyScale) ; }
void keyPressed() // Keyboard controls { 聽switch(keyCode) { 聽case UP: 聽 聽shiftAmount++; 聽 聽break; 聽case DOWN: 聽 聽shiftAmount--; 聽 聽break; 聽case LEFT: 聽 聽if (grid > 1) { 聽 聽 聽grid--; 聽 聽} 聽 聽 聽 聽break; 聽case RIGHT: 聽 聽grid++; 聽 聽 聽 聽break; 聽case TAB: 聽 聽if (bright) { 聽 聽 聽bright = false; 聽 聽} 聽 聽if (!bright) { 聽 聽 聽bright = true; 聽 聽} 聽 聽break; 聽case ENTER: 聽 聽if (!greyScale) { 聽 聽 聽greyScale = true; 聽 聽 聽break; 聽 聽} 聽 聽if (greyScale) { 聽 聽 聽greyScale = false; 聽 聽 聽break; 聽 聽} 聽} }
void captureEvent(Capture c) { 聽c.read(); }
1 note View note