MCPcopy Create free account
hub / github.com/DGVPSH/SlackOpen / createGeomShader

Method createGeomShader

src/main/java/net/optifine/shaders/Shaders.java:2706–2803  ·  view source on GitHub ↗
(Program program, String filename)

Source from the content-addressed store, hash-verified

2704 }
2705
2706 private static int createGeomShader(Program program, String filename)
2707 {
2708 int i = ARBShaderObjects.glCreateShaderObjectARB(36313);
2709
2710 if (i == 0)
2711 {
2712 return 0;
2713 }
2714 else
2715 {
2716 StringBuilder stringbuilder = new StringBuilder(131072);
2717 BufferedReader bufferedreader = null;
2718
2719 try
2720 {
2721 bufferedreader = new BufferedReader(getShaderReader(filename));
2722 }
2723 catch (Exception var11)
2724 {
2725 ARBShaderObjects.glDeleteObjectARB(i);
2726 return 0;
2727 }
2728
2729 ShaderOption[] ashaderoption = getChangedOptions(shaderPackOptions);
2730 List<String> list = new ArrayList();
2731 progArbGeometryShader4 = false;
2732 progMaxVerticesOut = 3;
2733
2734 if (bufferedreader != null)
2735 {
2736 try
2737 {
2738 bufferedreader = ShaderPackParser.resolveIncludes(bufferedreader, filename, shaderPack, 0, list, 0);
2739 MacroState macrostate = new MacroState();
2740
2741 while (true)
2742 {
2743 String s = bufferedreader.readLine();
2744
2745 if (s == null)
2746 {
2747 bufferedreader.close();
2748 break;
2749 }
2750
2751 s = applyOptions(s, ashaderoption);
2752 stringbuilder.append(s).append('\n');
2753
2754 if (macrostate.processLine(s))
2755 {
2756 ShaderLine shaderline = ShaderParser.parseLine(s);
2757
2758 if (shaderline != null)
2759 {
2760 if (shaderline.isExtension("GL_ARB_geometry_shader4"))
2761 {
2762 String s1 = Config.normalize(shaderline.getValue());
2763

Callers 1

setupProgramMethod · 0.95

Calls 15

getShaderReaderMethod · 0.95
getChangedOptionsMethod · 0.95
resolveIncludesMethod · 0.95
applyOptionsMethod · 0.95
processLineMethod · 0.95
parseLineMethod · 0.95
isExtensionMethod · 0.95
normalizeMethod · 0.95
getValueMethod · 0.95
isConstIntMethod · 0.95
getValueIntMethod · 0.95
severeMethod · 0.95

Tested by

no test coverage detected