loadImage(...) and createGraphics(..., P2D) have different y-coordinates
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 35/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- java
- Domínio
- computer-graphics
Direção de pesquisa
Reproduza o sketch fornecido e compare o comportamento das coordenadas de textura de loadImage(...) com createGraphics(..., P2D), incluindo o caminho de BufferedImage e a saída do shader. Comece por estes pontos de entrada e por PGraphics, então determine se a convenção de coordenadas pode ser tornada consistente; considera-se concluído quando ambas as fontes de imagem produzem a mesma orientação em y sob o shader.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Most appropriate sub-area of Processing 4?
OpenGL
Processing version
4.4.4
Operating system
MacOSX
Steps to reproduce this
PShader texCoordShader;
PGraphics pgP2D, pgDefault;
void setup() {
size(800, 400, P2D);
String fragShader =
"#ifdef GL_ES\n" +
"precision mediump float;\n" +
"#endif\n" +
"varying vec4 vertTexCoord;\n" +
"void main() {\n" +
" gl_FragColor = vec4(vertTexCoord.st, 0.0, 1.0);\n" +
"}";
saveStrings("frag.glsl", split(fragShader, "\n"));
texCoordShader = loadShader("frag.glsl");//, "vert.glsl");
pgP2D = createGraphics(400, 400, P2D);
pgDefault = createGraphics(400, 400); // Default JAVA2D renderer
pgP2D.beginDraw();
pgP2D.endDraw();
pgDefault.beginDraw();
pgDefault.endDraw();
}
void draw() {
background(0);
shader(texCoordShader);
image(pgP2D, 0, 0);
image(pgDefault, 400, 0);
}
Additional context
I'm working on a keystone library that is using a shader.
Because a image has different coordinates then a graphics created with P2D I need to know what the user is giving.
Not only that, it complicates the shader math way more then I would like.
To give an example:
The difference between those is P2D and default renderer (both in a sketch that is P2D).
Notice that the text is correct in both cases!!!
This does not just apply for PGraphics, using loadImage is different as well (cause also baked by a BufferedImage).
Having a mix of both of them really complicate things.
Complaining is easy however. I will dig into seeing if I can find a solution.
Would you like to work on the issue?
Trying...
- Linguagem predominante
- Java
- Estrelas
- 497
- Forks
- 183
- Merge médio
- 4h 39min
- PRs com merge (30d)
- 3
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de processing/processing4
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 64/100
processing/processing4#1554 · 1 comentário ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
processing/processing4#1515 · 1 reação ·
-
bug
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 55/100
processing/processing4#1573 ·
-
startup error Aberta
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 25/100
processing/processing4#1569 · 7 comentários ·
-
Binaries under bin directory lack executable permissions for the snap and .deb packages for Linux Abertabug
processing/processing4#1567 · 3 comentários · 1 reação · 1 responsável ·
Todas as issues de processing/processing4
Issues semelhantes
-
executions.Query — startDate and timeRange filters are sent with inverted comparison operators Abertaarea/plugin
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
kestra-io/plugin-kestra#190 ·
-
litertlm-android AAR ships no consumer ProGuard rules → "mid == null" SIGABRT in minified apps Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
google-ai-edge/LiteRT-LM#3739 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
integra-team-red/meet-map#249 ·
-
[Studio][Bug] Cancelled create-user dialog keeps the password and admin switch for the next attempt Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
apache/rocketmq-dashboard#5064 ·
-
Consent portal: creating a duplicate Purpose shows a generic error instead of "already exists" Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
wso2/dpdp-accelerator#287 ·