Welcome on MasterOf13FPS! MasterOf13FPS

Register today or sign up if you are already a member and never miss any cool content again :)

ShaderUtil

MasterOf13FPS

Administrator
Staff member
Administrator
MasterOf13FPS
Joined
Jul 11, 2020
Messages
0
Reaction score
25
Points
0
Hallo Leute ich versuche mich an dem ShaderUtil vom lieben DIZe jedoch verstehe ich nicht was bei FRAGMENTSHADER hinkommt bitte um hilfe
 
Der source vom Shader in einem String
auf http://glslsandbox.com/ gibt es ganz gute Shader...
Wenn du auf einen Klickst, siehst du den code, den kannst du dann in den String kopieren
 
Jap, beim DiZe ShaderUtil ist der VertexShaderSource schon drinnen
 
wie kopiert man etwas als String?
Wusste garnicht dass man heute zu Tage schon zu dumm ist um Strg c und Strg v zu drücken. Vielleicht ist das aber auch gut und man wird angeregt etwas selber zu machen
 
Wusste garnicht dass man heute zu Tage schon zu dumm ist um Strg c und Strg v zu drücken. Vielleicht ist das aber auch gut und man wird angeregt etwas selber zu machen
Habe es mittlerweile verstanden habe es falsch verstanden
 
1. bei mir wird auch ein bild gerendert
2. meine coolen guibuttons aus grauen drawRects sind jetzt buggig - weiß.
--> ich liege gerade mit augenkrebs im krankenhaus
 
1. bei mir wird auch ein bild gerendert
2. meine coolen guibuttons aus grauen drawRects sind jetzt buggig - weiß.
--> ich liege gerade mit augenkrebs im krankenhaus
Um den rect Bug zu beheben musst du einfach ein rect drawen drawrect(0,0,0,0,-1);
 
danke, aber schau mal:
wenn ich private static final String FRAGMENTSHADER = "C/Users/ICH/Desktop/MEINClient/mcp/src/minecraft/assets/minecraft/MEINClient/shader/fragmentShader.txt";
eingebe kommt als error:

--> Error creating shader: 0(1) : error C0000: syntax error, unexpected '/', expecting "::" at token "/"
---->>>> als lösung habe ich gemacht:

private static final String FRAGMENTSHADER = "C::Users/ICH/Desktop/MEINClient/mcp/src/minecraft/assets/minecraft/MEINClient/shader/fragmentShader.txt";

jetzt kommt kommt als error:

--> Error creating shader: 0(1) : error C0000: syntax error, unexpected identifier, expecting template identifier or type identifier at token "Users"
---->>>> als lösung habe ich einfach mal zwei slashs dazwischengemacht:

private static final String FRAGMENTSHADER = "C:://Users/ICH/Desktop/MEINClient/mcp/src/minecraft/assets/minecraft/MEINClient/shader/fragmentShader.txt";


doch jetzt kommt kommt als error:

--> Error creating shader: (0) : error C0000: syntax error, unexpected $end, expecting template identifier or type identifier at token "<EOF>"
---->>>> jetzt hatte ich keine lösung mehr.


Anhänge:
Bild vom Error:
View attachment 336

Code vom TestShaderGui (dieses hab ich als guibutton ins mainmenu geklatscht, sobald ich den knopf drücke stürzt das spiel ab):
[HIDE]
Code:
import com.google.common.collect.Lists;

import java.awt.Color;
import java.awt.Font;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.InetAddress;
import java.net.URI;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.Iterator;
import java.util.Random;
import java.util.concurrent.atomic.AtomicInteger;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.GuiScreen;
import net.minecraft.client.gui.GuiYesNoCallback;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.client.renderer.OpenGlHelper;
import net.minecraft.client.renderer.Tessellator;
import net.minecraft.client.renderer.WorldRenderer;
import net.minecraft.client.renderer.texture.DynamicTexture;
import net.minecraft.client.resources.I18n;
import net.minecraft.realms.RealmsBridge;
import net.minecraft.util.EnumChatFormatting;
import net.minecraft.util.MathHelper;
import net.minecraft.util.ResourceLocation;
import net.minecraft.world.demo.DemoWorldServer;
import net.minecraft.world.storage.ISaveFormat;
import net.minecraft.world.storage.WorldInfo;
import org.apache.commons.io.Charsets;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.lwjgl.input.Keyboard;
import org.lwjgl.opengl.GL11;
import org.lwjgl.opengl.GLContext;
import org.lwjgl.util.glu.Project;
import org.newdawn.slick.Graphics;
import org.newdawn.slick.particles.ParticleSystem;

public class TestShaderGui extends GuiScreen implements GuiYesNoCallback {
   private static final String FRAGMENTSHADER = "C:://Users/ICH/Desktop/MEINClient/mcp/src/minecraft/assets/minecraft/MEINClient/shader/fragmentShader.txt";
   private static final String VERTEXSHADER = "#version 330 core\r\n" + "\r\n" + "in vec3 position;\r\n" + "\r\n" + "void main()\r\n" + "{\r\n" + "   gl_Position = vec4(position, 1.0);\r\n" + "}";
   ShaderUtil shader = new ShaderUtil(FRAGMENTSHADER, VERTEXSHADER);
 
   private static final AtomicInteger field_175373_f = new AtomicInteger(0);
   private static final Logger logger = LogManager.getLogger();
   private static final Random field_175374_h = new Random();
   private DynamicTexture viewportTexture;
   private boolean field_175375_v = true;
   private final Object field_104025_t = new Object();
   private String field_92025_p;
   private String field_146972_A;
   private String field_104024_v;
   private static final ResourceLocation splashTexts = new ResourceLocation("texts/splashes.txt");
   private static final ResourceLocation minecraftTitleTextures = new ResourceLocation(
           "textures/gui/title/minecraft.png");
   public static final String field_96138_a = "Please click " + EnumChatFormatting.UNDERLINE + "here"
           + EnumChatFormatting.RESET + " for more information.";
   private int field_92024_r;
   private int field_92023_s;
   private int field_92022_t;
   private int field_92021_u;
   private int field_92020_v;
   private int field_92019_w;
   private ResourceLocation field_110351_G;
   private static final String __OBFID = "CL_00001154";

   public TestShaderGui() {

       this.field_146972_A = field_96138_a;
       this.splashText = "missingno";
       BufferedReader var1 = null;

       this.updateCounter = field_175374_h.nextFloat();
       this.field_92025_p = "";

       if (!GLContext.getCapabilities().OpenGL20 && !OpenGlHelper.areShadersSupported()) {
           this.field_92025_p = I18n.format("title.oldgl1", new Object[0]);
           this.field_146972_A = I18n.format("title.oldgl2", new Object[0]);
           this.field_104024_v = "https://help.mojang.com/customer/portal/articles/325948?ref=game";
       }
   }

   public void updateScreen() {
       ++this.panoramaTimer;
   }


   public boolean doesGuiPauseGame() {
       return false;
   }


   public void initGui() {
       this.viewportTexture = new DynamicTexture(256, 256);
       this.field_110351_G = this.mc.getTextureManager().getDynamicTextureLocation("background", this.viewportTexture);
   }


   public void drawScreen(int mouseX, int mouseY, float partialTicks) {
       shader.draw();
   }
}
[/HIDE]


Und noch (mein) FRAGMENTSHADER:
[HIDE]
Code:
// Modified so it doesn't really move. Very childish and easy fix.
#ifdef GL_ES
precision mediump float;
#endif

uniform vec2 resolution;
uniform float time;

uniform vec2 mouse;

    // More points of color.
const float mouse_factor    = 56.0;  // Makes it more/less jumpy.
const float mouse_offset    = 0.0;   // Drives complexity in the amount of curls/cuves.  Zero is a single whirlpool.
const float fluid_speed     = 108.0;  // Drives speed, higher number will make it slower.
const float color_intensity = 0.8;
 
float rand(vec2 co){
    return fract(sin(dot(co.xy ,vec2(12.9898,78.233))) * 43758.5453);
}
void main()
{
 
  vec2 p=(2.0*gl_FragCoord.xy-resolution)/max(resolution.x,resolution.y);
  for(int i=1;i<45;i++)
  {
    vec2 newp=p + time*0.02;
    newp.x+=0.6/float(i)*sin(float(i)*p.y+time/fluid_speed+0.3*float(i)) + 0.5; // + mouse.y/mouse_factor+mouse_offset;
    newp.y+=0.6/float(i)*sin(float(i)*p.x+time/fluid_speed+0.3*float(i+10)) - 0.5; // - mouse.x/mouse_factor+mouse_offset;
    p=newp;
  }
  vec3 col=vec3(color_intensity*sin(3.0*p.x)+color_intensity,color_intensity*sin(3.0*p.y)+color_intensity,color_intensity*sin(p.x+p.y)+color_intensity
          );
  gl_FragColor=vec4(col, 1.0);
}
[/HIDE]
 
Last edited by a moderator:
Du musst schon den Inhalt der Datei beim konstruktive übergeben und nicht den pfad
 
was ist dieses <EOF> ? und was konstruktive ? :p
 
Ganz ehrlich, wieso helf ich dir. Du bist arrogant, bist zu feige den namen deines clientes zu zeigen und machst nichts an deinem client selber.

Was sagst du eigentlich als Unbeteiligter eigentlich zum Thema Hilfsbereitschaft?
Und wieso bin ich jetzt plötzlich arrogant??
Und mein client heißt wie mein nachname. kannst mich nicht zwingen den zu zeigen.
Du brauchst mir nicht zu helfen.
Mit solchen leuten will ich nichts zu tun haben.
Verzieh dich zu dize oder sonst wem.
~danke

ich hab mich extra dumm gestellt das auch brauchbare erklärungen über den error zu kommen. aber solche leute wie du können dabei, und bei dem thema intelligenz, ja nicht mitreden.

SG Antiskid
 
Ganz ehrlich, wieso helf ich dir. Du bist arrogant, bist zu feige den namen deines clientes zu zeigen und machst nichts an deinem client selber.

Und ich frage mich was du hast.
Ich habe vor 5 monaten mit java angefangen,
vor 2 monaten mit meinem minecraftclient,
und vor 1 monat hab ich mich in dem forum registriert.

wie alt bist du denn? dein verhalten war erst wie ein erwachsener, jetzt ist es wie ein 10jähriger.
 
shape1
shape2
shape3
shape4
shape5
shape6
Back
Top