processing / processing/processing4
loadImage(...) and createGraphics(..., P2D) have different y-coordinates
Nadie ha tomado este issue todavía.
- Lenguaje dominante
- Java
- Estrellas
- 497
- Forks
- 183
- Merge medio
- 4 h 39 min
- PR fusionados (30 d)
- 3
Descripción
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...
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
Reproduce el sketch proporcionado y compara el comportamiento de las coordenadas de textura de loadImage(...) con createGraphics(..., P2D), incluida la ruta de BufferedImage y la salida del shader. Empieza por estos puntos de entrada y PGraphics, y determina después si la convención de coordenadas puede hacerse coherente; se considera terminado cuando ambas fuentes de imagen producen la misma orientación en y bajo el shader.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- computer-graphics
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100