Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Processing 处理3将文本直接写入屏幕_Processing - Fatal编程技术网

Processing 处理3将文本直接写入屏幕

Processing 处理3将文本直接写入屏幕,processing,Processing,在处理过程中,我有一个3D场景,其中相机移动了很多。通常,如果我想渲染可见文本,我必须旋转文本,使其法线与摄影机位置和目标之间的向量对齐。对于我想要的东西来说,这似乎有些过分:我只是想在屏幕上显示2D文本,比如字幕 我想知道有没有简单的方法?我知道set函数允许您在不受变换矩阵干扰的情况下手动设置像素值,我认为应该有一种方法可以通过文本来实现这一点,尽管我找不到它。有什么建议吗?堆栈溢出并不是为一般的“我该怎么做”类型的问题而设计的。这是针对特定的“我尝试了X,期望是Y,但得到了Z”类型的问题。

在处理过程中,我有一个3D场景,其中相机移动了很多。通常,如果我想渲染可见文本,我必须旋转文本,使其法线与摄影机位置和目标之间的向量对齐。对于我想要的东西来说,这似乎有些过分:我只是想在屏幕上显示2D文本,比如字幕


我想知道有没有简单的方法?我知道
set
函数允许您在不受变换矩阵干扰的情况下手动设置像素值,我认为应该有一种方法可以通过文本来实现这一点,尽管我找不到它。有什么建议吗?

堆栈溢出并不是为一般的“我该怎么做”类型的问题而设计的。这是针对特定的“我尝试了X,期望是Y,但得到了Z”类型的问题。将来,试着发布一个展示你所坚持的东西的帖子

你几乎已经知道该怎么做了:

我知道set函数可以让你在不受变换矩阵干扰的情况下手动设置像素值,我想应该有一种方法可以通过文本来实现这一点

您可以使用将文本绘制到的
PGraphics
缓冲区,然后将该缓冲区绘制到屏幕上。大概是这样的:

PGraphics pg;

void setup(){
 size(500, 500, P3D); 
 pg = createGraphics(100, 50);
 pg.beginDraw();
 pg.background(255, 0, 0);
 pg.text("hello", 10, 20);
 pg.endDraw();
}

void draw(){
 background(128);

 pushMatrix();
 translate(mouseX, mouseY, 100);
 sphere(100);
 popMatrix();

 set(0, 0, pg);
}

A展示你正在努力实现的目标可能会有所帮助。