Bump Mapping
*先在moodle下載Processing 3軟體
體驗一位網友寫的程式碼:
https://www.openprocessing.org/sketch/249457
將它程式複製到Processing中
用Processing寫簡單的程式
程式碼:
PImage img=loadImage("doraemon.jpeg");
size(600, 600);
image(img, 0,0, 600,600);
*要先把doramon.jpeg圖檔拖曳至程式中
寫進一步的程式
程式碼:
PImage img;
void setup(){
size(1280, 800);
img=loadImage("error.jpg");
}
void draw(){
//rect(mouseX, mouseY, 50, 50); <- 用來畫正方形的碼
image(img, mouseX,mouseY, 400,250);
}
寫出簡易超級瑪莉歐
程式碼:
int [][]map={{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,1,1,2,2,1,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{1,1,1,1,1,1,1,1,1,1,1,1,1,1}};
PImage imgMario, imgBrick, imgBrick2;
void setup(){
size(800, 600);
imgMario=loadImage("mario.png");
imgBrick=loadImage("brick.png");
imgBrick2=loadImage("brick2.png");
}
float marioX=200, marioY=100, marioVX=0, marioVY=0;
boolean marioOnFloor=false;
void draw(){
background(255);
for(int x=0;x<14;x++){
for(int y=0;y<11;y++){
if(map[y][x]==1) image(imgBrick, x*50, y*50, 50,50);
if(map[y][x]==2) image(imgBrick2, x*50, y*50, 50,50);
}
}
image(imgMario, marioX, marioY, 50,50);
marioY += marioVY; marioX += marioVX;
marioVY += 0.98;
if(marioY>=500-50)
{marioY=500-50; marioVY=0; marioOnFloor=true;}
}
void keyPressed(){
if(keyCode==UP && marioOnFloor) {marioVY=-15; marioOnFloor=false;}
if(keyCode==RIGHT) marioVX=5;
if(keyCode==LEFT) marioVX=-5;
}
void keyReleased(){
if(keyCode==RIGHT || keyCode==LEFT) marioVX=0;
}




沒有留言:
張貼留言