Clean
[esp.git] / src / net / encode / wurmesp / util / RenderUtils.java
1 package net.encode.wurmesp.util;
2
3 import com.wurmonline.client.renderer.PickRenderer;
4 import com.wurmonline.client.renderer.PickRenderer.CustomPickOutlineRender;
5 import com.wurmonline.client.renderer.backend.IndexBuffer;
6 import com.wurmonline.client.renderer.backend.Primitive;
7 import com.wurmonline.client.renderer.backend.Queue;
8 import com.wurmonline.client.renderer.backend.RenderState;
9 import com.wurmonline.client.renderer.backend.VertexBuffer;
10
11 import net.encode.wurmesp.WurmEspMod;
12
13 import java.nio.FloatBuffer;
14 import java.nio.IntBuffer;
15
16 public class RenderUtils {
17 public static void renderPrimitiveLines(int numvertex, float[] vertexdata, int[] indexdata, Queue queue, float[] color) {
18 VertexBuffer _vBuffer = VertexBuffer.create((VertexBuffer.Usage)VertexBuffer.Usage.PICK, (int)numvertex, (boolean)true, (boolean)false, (boolean)false, (boolean)false, (boolean)false, (int)0, (int)0, (boolean)false, (boolean)true);
19 FloatBuffer vdata = _vBuffer.lock();
20 vdata.put(vertexdata);
21 _vBuffer.unlock();
22 IndexBuffer _iBuffer = IndexBuffer.create((int)indexdata.length, (boolean)false, (boolean)true);
23 IntBuffer idata = _iBuffer.lock();
24 idata.put(indexdata);
25 _iBuffer.unlock();
26
27 PickRenderer tmp1257_1254 = WurmEspMod._pickRenderer;
28 CustomPickOutlineRender customPickOutline = tmp1257_1254.new CustomPickOutlineRender();
29
30 RenderState renderStateOutline = new RenderState();
31 renderStateOutline.alphaval = 0.5F;
32 renderStateOutline.twosided = false;
33 renderStateOutline.depthtest = Primitive.TestFunc.LESS;
34 renderStateOutline.depthwrite = false;
35 renderStateOutline.blendmode = Primitive.BlendMode.ALPHABLEND;
36 renderStateOutline.customstate = customPickOutline;
37
38 Primitive p = queue.reservePrimitive();
39 p.copyStateFrom(renderStateOutline);
40 p.vertex = _vBuffer;
41 p.index = _iBuffer;
42 p.num = _iBuffer.getNumIndex() / 2;
43 p.type = Primitive.Type.LINES;
44 p.nolight = true;
45 p.nofog = true;
46 p.texture[0] = null;
47 p.setColor(color[0], color[1], color[2], color[3]);
48 queue.queue(p, null);
49 }
50 }
51