1.3D跑起來
2.用小電腦晶片控制硬體設備
第一階段:載入OBJLoader --->開範例檔來看效果
為可將3D Model 的obj 載入Processing的lab
按不同按鈕看效果
======================================================
自己照著範例練習寫看看
part1.
import saito.objloader.*;
OBJModel model ;
void setup(){
size(800,600,P3D);
model = new OBJModel(this,"dma.obj","absolute",TRIANGLES);
model.scale(20);
model.translateToCenter();
}
void draw()
{
translate(width/2,height/2);
model.draw();
}
==============================================================
part2.
PImage imgDino;
void setup(){
size(800,600);
imgDino = loadImage("dino.png");
}
float dinoX = 400 , dinoY = 0, dinoVY = 0;
void draw()
{
background(255);
image(imgDino,dinoX,dinoY,100,100);
//dinoY++;
dinoY += dinoVY ;
dinoVY += 0.98 ;
}
void mousePressed(){
dinoVY = -25 ;
}
=================================================================
part3.
-----------------------------------------------------------------------------------------
能卡在地板並藉由滑鼠左右走動
PImage imgDino;
void setup(){
size(800,600);
imgDino = loadImage("dino.png");
}
float dinoX = 400 , dinoY = 0, dinoVY = 0;
void draw()
{
background(255);
image(imgDino,dinoX,dinoY,100,100);
//dinoY++;
dinoY += dinoVY ;
//卡在地板
if(dinoY < 450)
dinoVY += 0.98 ;
else
dinoVY =0;
}
void mousePressed(){
dinoVY = -25 ;
}
//可藉由滑鼠左右走動
void mouseMoved(){
dinoX = mouseX;
}
---------------------------------------------------------------------------------------
隨機產生十方框(白色的)
PImage imgDino;
PVector [] board = new PVector[10];
void setup(){
size(800,600);
imgDino = loadImage("dino.png");
for(int i=0;i<10;i++){
board[i] = new PVector(random(800),i*60);
}
}
float dinoX = 400 , dinoY = 0, dinoVY = 0;
void draw()
{
background(255);
for(int i = 0;i<10;i++){
rect(board[i].x,board[i].y,100,20); //畫方框(長:100、寬:20)
}
image(imgDino,dinoX,dinoY,100,100);
dinoY += dinoVY ;
if(dinoY < 450)
dinoVY += 0.98 ;
else
dinoVY =0;
}
void mousePressed(){
dinoVY = -25 ;
}
void mouseMoved(){
dinoX = mouseX;
}
-----------------------------------------------------------------------------------------------------
PImage imgDino;
PVector [] board = new PVector[10];
void setup(){
size(800,600);
imgDino = loadImage("dino.png");
for(int i=0;i<10;i++){
board[i] = new PVector(random(800),i*60);
}
}
float dinoX = 400 , dinoY = 0, dinoVY = 0;
void draw()
{
background(255);
dinoY += dinoVY ;
for(int i = 0;i<10;i++){
rect(board[i].x,board[i].y,100,20);
if( dinoX+100 > board[i].x && dinoX < board[i].x + 100
&& abs(dinoY+100 - board[i].y) < 100 )
{
dinoVY = 0; dinoY = board[i].y - 100 ;
}
}
rect(dinoX , dinoY , 100 , 100 );
image(imgDino,dinoX,dinoY,100,100);
//dinoY += dinoVY ;
if(dinoY < 450)
dinoVY += 0.98 ;
else
dinoVY =0;
}
void mousePressed(){
dinoVY = -25 ;
}
void mouseMoved(){
dinoX = mouseX;
}



















沒有留言:
張貼留言