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
|
#maven.buildNumber.plugin properties file
|
||||||
#Sat Nov 16 12:45:38 EST 2024
|
#Sat Nov 16 20:18:53 EST 2024
|
||||||
buildNumber=387
|
buildNumber=390
|
||||||
|
|||||||
@ -1055,6 +1055,7 @@ Update visuals on pine tree
|
|||||||
(11/16/2024)
|
(11/16/2024)
|
||||||
Mountain generation work
|
Mountain generation work
|
||||||
Implement crafting
|
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.ActorPanel;
|
||||||
import electrosphere.renderer.ui.elements.Button;
|
import electrosphere.renderer.ui.elements.Button;
|
||||||
import electrosphere.renderer.ui.elements.FormElement;
|
import electrosphere.renderer.ui.elements.FormElement;
|
||||||
|
import electrosphere.renderer.ui.elements.ImagePanel;
|
||||||
import electrosphere.renderer.ui.elements.Slider;
|
import electrosphere.renderer.ui.elements.Slider;
|
||||||
import electrosphere.renderer.ui.elements.StringCarousel;
|
import electrosphere.renderer.ui.elements.StringCarousel;
|
||||||
import electrosphere.renderer.ui.elements.VirtualScrollable;
|
import electrosphere.renderer.ui.elements.VirtualScrollable;
|
||||||
@ -61,6 +62,7 @@ public class MenuGeneratorsUITesting {
|
|||||||
"Generic",
|
"Generic",
|
||||||
"Slider",
|
"Slider",
|
||||||
"Button",
|
"Button",
|
||||||
|
"ImagePanel1",
|
||||||
"CharacterCustomizer",
|
"CharacterCustomizer",
|
||||||
"NaturalInventoryPanel",
|
"NaturalInventoryPanel",
|
||||||
"EquipInventoryPanel",
|
"EquipInventoryPanel",
|
||||||
@ -124,6 +126,15 @@ public class MenuGeneratorsUITesting {
|
|||||||
case "Button": {
|
case "Button": {
|
||||||
formEl.addChild(Button.createButton("test", () -> {}));
|
formEl.addChild(Button.createButton("test", () -> {}));
|
||||||
} break;
|
} 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": {
|
case "CharacterCustomizer": {
|
||||||
formEl.addChild(CharacterCustomizer.createCharacterCustomizerPanel("human", (CreatureTemplate template) ->{}));
|
formEl.addChild(CharacterCustomizer.createCharacterCustomizerPanel("human", (CreatureTemplate template) ->{}));
|
||||||
} break;
|
} break;
|
||||||
|
|||||||
@ -655,7 +655,7 @@ public class Globals {
|
|||||||
solidPlaneModelID = assetManager.registerModel(RenderUtils.createInWindowPanel("Shaders/ui/plainBox/plainBox.vs", "Shaders/ui/plainBox/plainBox.fs"));
|
solidPlaneModelID = assetManager.registerModel(RenderUtils.createInWindowPanel("Shaders/ui/plainBox/plainBox.vs", "Shaders/ui/plainBox/plainBox.fs"));
|
||||||
|
|
||||||
//image panel
|
//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");
|
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);
|
boxPosition = new Vector3f(ndcX,ndcY,0);
|
||||||
boxDimensions = new Vector3f(ndcWidth,ndcHeight,0);
|
boxDimensions = new Vector3f(ndcWidth,ndcHeight,0);
|
||||||
|
|
||||||
Model planeModel = Globals.assetManager.fetchModel(Globals.imagePlaneModelID);
|
Model planeModel = Globals.assetManager.fetchModel(imagePanelModelPath);
|
||||||
if(texture != null){
|
if(texture != null){
|
||||||
customMat.setTexturePointer(texture.getTexturePointer());
|
customMat.setTexturePointer(texture.getTexturePointer());
|
||||||
} else if(this.texturePath != null){
|
} 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