week 09 P語言
step 1.Bump Mapping & 實作
網址體驗:
https://www.openprocessing.org/sketch/249457

執行processing.exe:

使用processing讀圖:
PImage img=loadImage("kuso.jpg");
size(300,300);
image(img,0,0,300,300);

PImage img;
void setup()
{
size(1280,960);
img=loadImage("naruto.jpg");
}
void draw()
{
//rect(mouseX,mouseY,300,300);
image(img,mouseX,mouseY);
}

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 imgDragon,imgBrick,imgBrick2;
void setup()
{
size(800,760);
imgDragon=loadImage("dragon.png");
imgBrick=loadImage("brick.png");
imgBrick2=loadImage("brick2.png");
}
float dragonX=200, dragonY=100, dragonVX=0, dragonVY=0;
boolean dragonOnFloor=false;
void draw()
{
background(255);
//for(int x=0;x<20;x++) image(imgBrick,x*50,500,50,50);
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(imgDragon,dragonX,dragonY,100,100);
dragonY += dragonVY;
dragonX += dragonVX;
dragonVY += 0.98;
if(dragonY>=500-100)
{
dragonY=500-100;
dragonVY=0;
dragonOnFloor=true;
}
}
void keyPressed()
{
if(keyCode==UP && dragonOnFloor) { dragonVY=-15; dragonOnFloor=false;}
if(keyCode==RIGHT) dragonVX=5;
if(keyCode==LEFT) dragonVX=-5;
}
void keyReleased()
{
if(keyCode==RIGHT || keyCode==LEFT) dragonVX=0;
}

沒有留言:
張貼留言