(Program program, String filename)
| 2600 | } |
| 2601 | |
| 2602 | private static int createVertShader(Program program, String filename) |
| 2603 | { |
| 2604 | int i = ARBShaderObjects.glCreateShaderObjectARB(ARBVertexShader.GL_VERTEX_SHADER_ARB); |
| 2605 | |
| 2606 | if (i == 0) |
| 2607 | { |
| 2608 | return 0; |
| 2609 | } |
| 2610 | else |
| 2611 | { |
| 2612 | StringBuilder stringbuilder = new StringBuilder(131072); |
| 2613 | BufferedReader bufferedreader = null; |
| 2614 | |
| 2615 | try |
| 2616 | { |
| 2617 | bufferedreader = new BufferedReader(getShaderReader(filename)); |
| 2618 | } |
| 2619 | catch (Exception var10) |
| 2620 | { |
| 2621 | ARBShaderObjects.glDeleteObjectARB(i); |
| 2622 | return 0; |
| 2623 | } |
| 2624 | |
| 2625 | ShaderOption[] ashaderoption = getChangedOptions(shaderPackOptions); |
| 2626 | List<String> list = new ArrayList(); |
| 2627 | |
| 2628 | if (bufferedreader != null) |
| 2629 | { |
| 2630 | try |
| 2631 | { |
| 2632 | bufferedreader = ShaderPackParser.resolveIncludes(bufferedreader, filename, shaderPack, 0, list, 0); |
| 2633 | MacroState macrostate = new MacroState(); |
| 2634 | |
| 2635 | while (true) |
| 2636 | { |
| 2637 | String s = bufferedreader.readLine(); |
| 2638 | |
| 2639 | if (s == null) |
| 2640 | { |
| 2641 | bufferedreader.close(); |
| 2642 | break; |
| 2643 | } |
| 2644 | |
| 2645 | s = applyOptions(s, ashaderoption); |
| 2646 | stringbuilder.append(s).append('\n'); |
| 2647 | |
| 2648 | if (macrostate.processLine(s)) |
| 2649 | { |
| 2650 | ShaderLine shaderline = ShaderParser.parseLine(s); |
| 2651 | |
| 2652 | if (shaderline != null) |
| 2653 | { |
| 2654 | if (shaderline.isAttribute("mc_Entity")) |
| 2655 | { |
| 2656 | useEntityAttrib = true; |
| 2657 | progUseEntityAttrib = true; |
| 2658 | } |
| 2659 | else if (shaderline.isAttribute("mc_midTexCoord")) |
no test coverage detected