대학에서 3D 설치를 설정하고 싶습니다. 처리를 위해 두 개의 눈이있는 카메라를 설정할 수 있는지 여부를 알고 싶습니다. 각각 1 대 2 대의 서로 다른 프로젝터를 사용하여 출력을 혼합하여 3D 효과를 구현할 수 있습니다.가공을 사용하여 두 대의 프로젝터에 여러 번 렌더링 (편광 기반 3D 용)
2
A
답변
1
처리 중에 두 번째 창을 열려면 PApplet의 인스턴스를 만들고 새 JFrame 창에 추가하십시오. 다음 예제에서는 두 개의 창을 연 간단한 스케치를 작성하고 두 개 중 하나에서 왼쪽으로 약간 이동 한 원을 그리고 두 번째 창에서 오른쪽으로 원을 그립니다. 이 창은 내가 더 복잡한로 간단한에서 몇 가지 아이디어를 가지고
import javax.swing.JFrame;
PFrame f;
void setup() {
size(300,300);
PFrame f = new PFrame();
}
void draw() {
background(0);
ellipse(140,150,100,100);
}
public class Second extends PApplet {
public void setup() {
size(300,300);
}
public void draw() {
background(0);
ellipse(160,150,100,100);
}
}
public class PFrame extends JFrame {
public PFrame() {
setBounds(0,0,300,300);
Second s = new Second();
add(s);
s.init();
show();
}
}
0
다른 프로젝터에 배치 할 수 있습니다 :
- 간단히 분리 그리기 명령/렌더링 다른 사용 공간을
- 좌표 레이어
간단한 방법 pushMatrix()/popMatrix()는 올바른 시점에서 왼쪽을 분리하고 다른 값을 사용하여 호출 할 수 있습니다. fo
void setup(){
size(200,100,P3D);
noFill();
}
void draw(){
background(255);
stroke(255,0,0);
//view 1
pushMatrix();
camera(70.0, 0.0, 200.0, 50.0, 50.0, 0.0, 0.0, 1.0, 0.0);
drawBox();
popMatrix();
stroke(0,0,255);
//view 2
pushMatrix();
camera(90.0, 0.0, 200.0, 50.0, 50.0, 0.0, 0.0, 1.0, 0.0);
translate(100,0,0);//move everything to the right
drawBox();
popMatrix();
}
void drawBox(){
pushMatrix();
rotateY(map(mouseX,0,width,-PI,PI));
box(50);
popMatrix();
}
방법 2 : R perspective() 투사
다음아이디어를 설명하기 위해 매우 거친 예입니다 당신은 드로잉 코드에서 값/수의 업데이트를 분리하고 동일한 프레임에 두 번 그릴 수 있지만,로 수 당신이 창을 분리하려면 아마도 PGraphics 인스턴스
를 사용하여 별도의 '레이어', 당신은 당신이 것을 구현하는 방식을 좋아하지만 표시 할 필요가 this answer
의 코드 예제를 볼 수 있습니다 두 개의 별도 프로젝터에서 – jubin
두 대의 프로젝터가 무슨 뜻입니까? (두 개의 다른 투영 행렬, 두 개의 창, 다른 것)? –
LCD 프로젝터 또는 두 개의 개별 디스플레이. – jubin