Fix image panel regression
All checks were successful
studiorailgun/Renderer/pipeline/head This commit looks good
All checks were successful
studiorailgun/Renderer/pipeline/head This commit looks good
This commit is contained in:
parent
9bd81242fc
commit
d65efefc92
18
assets/Shaders/core/imagepanel/imagepanel.fs
Normal file
18
assets/Shaders/core/imagepanel/imagepanel.fs
Normal file
@ -0,0 +1,18 @@
|
||||
#version 430 core
|
||||
out vec4 FragColor;
|
||||
|
||||
in vec2 TexCoords;
|
||||
|
||||
uniform sampler2D screenTexture;
|
||||
uniform vec3 color;
|
||||
|
||||
void main(){
|
||||
vec4 textureColor = texture(screenTexture, TexCoords);
|
||||
textureColor.r = textureColor.r * color.r;
|
||||
textureColor.g = textureColor.g * color.g;
|
||||
textureColor.b = textureColor.b * color.b;
|
||||
if(textureColor.a < 0.1){
|
||||
discard;
|
||||
}
|
||||
FragColor = textureColor;
|
||||
}
|
||||
33
assets/Shaders/core/imagepanel/imagepanel.vs
Normal file
33
assets/Shaders/core/imagepanel/imagepanel.vs
Normal file
@ -0,0 +1,33 @@
|
||||
#version 430 core
|
||||
layout (location = 0) in vec3 aPos;
|
||||
layout (location = 4) in vec2 aTexCoords;
|
||||
|
||||
out vec2 TexCoords;
|
||||
|
||||
uniform vec3 mPosition;
|
||||
uniform vec3 mDimension;
|
||||
uniform vec3 tPosition;
|
||||
uniform vec3 tDimension;
|
||||
|
||||
void main(){
|
||||
|
||||
vec2 finalPos = vec2(
|
||||
((aPos.x + 1)/2 * mDimension.x + mPosition.x) * 2 - 1,
|
||||
((aPos.y + 1)/2 * mDimension.y + (1 - mDimension.y) - mPosition.y) * 2 - 1
|
||||
|
||||
// ((((aPos.y + 1)/2) * mDimension.y + mPosition.y) * 2 - 1)
|
||||
// aPos.y * mDimension.y + (mPosition.y) + (1 - mDimension.y)
|
||||
);
|
||||
gl_Position = vec4(finalPos.x, finalPos.y, 0.0, 1.0);
|
||||
|
||||
vec2 finalTex = vec2(
|
||||
aTexCoords.x * tDimension.x + tPosition.x,
|
||||
aTexCoords.y * tDimension.y + tPosition.y
|
||||
);
|
||||
// vec2 finalTex = aTexCoords;
|
||||
// vec2 finalTex = vec2(
|
||||
// aTexCoords.x + 0.7,
|
||||
// aTexCoords.y
|
||||
// );
|
||||
TexCoords = finalTex + vec2(0,-1);
|
||||
}
|
||||
@ -1,3 +1,3 @@
|
||||
#maven.buildNumber.plugin properties file
|
||||
#Sat Nov 16 12:45:38 EST 2024
|
||||
buildNumber=387
|
||||
#Sat Nov 16 20:18:53 EST 2024
|
||||
buildNumber=390
|
||||
|
||||
@ -1055,6 +1055,7 @@ Update visuals on pine tree
|
||||
(11/16/2024)
|
||||
Mountain generation work
|
||||
Implement crafting
|
||||
Fix image panel test
|
||||
|
||||
|
||||
|
||||
|
||||
@ -31,6 +31,7 @@ import electrosphere.renderer.actor.ActorUtils;
|
||||
import electrosphere.renderer.ui.elements.ActorPanel;
|
||||
import electrosphere.renderer.ui.elements.Button;
|
||||
import electrosphere.renderer.ui.elements.FormElement;
|
||||
import electrosphere.renderer.ui.elements.ImagePanel;
|
||||
import electrosphere.renderer.ui.elements.Slider;
|
||||
import electrosphere.renderer.ui.elements.StringCarousel;
|
||||
import electrosphere.renderer.ui.elements.VirtualScrollable;
|
||||
@ -61,6 +62,7 @@ public class MenuGeneratorsUITesting {
|
||||
"Generic",
|
||||
"Slider",
|
||||
"Button",
|
||||
"ImagePanel1",
|
||||
"CharacterCustomizer",
|
||||
"NaturalInventoryPanel",
|
||||
"EquipInventoryPanel",
|
||||
@ -124,6 +126,15 @@ public class MenuGeneratorsUITesting {
|
||||
case "Button": {
|
||||
formEl.addChild(Button.createButton("test", () -> {}));
|
||||
} break;
|
||||
case "ImagePanel1": {
|
||||
Globals.assetManager.addTexturePathtoQueue("Textures/default_diffuse.png");
|
||||
ImagePanel panel = ImagePanel.createImagePanel("Textures/default_diffuse.png");
|
||||
panel.setMinWidth(100);
|
||||
panel.setMinHeight(100);
|
||||
panel.setWidth(100);
|
||||
panel.setHeight(100);
|
||||
formEl.addChild(panel);
|
||||
} break;
|
||||
case "CharacterCustomizer": {
|
||||
formEl.addChild(CharacterCustomizer.createCharacterCustomizerPanel("human", (CreatureTemplate template) ->{}));
|
||||
} break;
|
||||
|
||||
@ -655,7 +655,7 @@ public class Globals {
|
||||
solidPlaneModelID = assetManager.registerModel(RenderUtils.createInWindowPanel("Shaders/ui/plainBox/plainBox.vs", "Shaders/ui/plainBox/plainBox.fs"));
|
||||
|
||||
//image panel
|
||||
ImagePanel.imagePanelModelPath = assetManager.registerModel(RenderUtils.createPlaneModel("Shaders/core/plane/plane.vs", "Shaders/core/plane/plane.fs"));
|
||||
ImagePanel.imagePanelModelPath = assetManager.registerModel(RenderUtils.createPlaneModel("Shaders/core/imagepanel/imagepanel.vs", "Shaders/core/imagepanel/imagepanel.fs"));
|
||||
|
||||
Globals.assetManager.addShaderToQueue("Shaders/ui/plainBox/plainBox.vs", "Shaders/ui/plainBox/plainBox.fs");
|
||||
|
||||
|
||||
@ -133,7 +133,7 @@ public class ImagePanel extends StandardElement implements DrawableElement, Drag
|
||||
boxPosition = new Vector3f(ndcX,ndcY,0);
|
||||
boxDimensions = new Vector3f(ndcWidth,ndcHeight,0);
|
||||
|
||||
Model planeModel = Globals.assetManager.fetchModel(Globals.imagePlaneModelID);
|
||||
Model planeModel = Globals.assetManager.fetchModel(imagePanelModelPath);
|
||||
if(texture != null){
|
||||
customMat.setTexturePointer(texture.getTexturePointer());
|
||||
} else if(this.texturePath != null){
|
||||
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
Loading…
Reference in New Issue
Block a user