Skip to content

Commit 153879d

Browse files
committed
Refactor render state mixins
- Add blend op state
1 parent 6c854fa commit 153879d

File tree

5 files changed

+147
-308
lines changed

5 files changed

+147
-308
lines changed

src/main/java/net/vulkanmod/mixin/render/GlStateManagerM.java

Lines changed: 119 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,6 @@ public static void _enableBlend() {
5151
public static void _blendFunc(int i, int j) {
5252
RenderSystem.assertOnRenderThread();
5353
VRenderSystem.blendFunc(i, j);
54-
5554
}
5655

5756
/**
@@ -61,7 +60,15 @@ public static void _blendFunc(int i, int j) {
6160
public static void _blendFuncSeparate(int i, int j, int k, int l) {
6261
RenderSystem.assertOnRenderThread();
6362
VRenderSystem.blendFuncSeparate(i, j, k, l);
63+
}
6464

65+
/**
66+
* @author
67+
*/
68+
@Overwrite(remap = false)
69+
public static void _blendEquation(int i) {
70+
RenderSystem.assertOnRenderThread();
71+
VRenderSystem.blendOp(i);
6572
}
6673

6774
/**
@@ -110,7 +117,6 @@ public static void _scissorBox(int x, int y, int width, int height) {
110117
Renderer.setScissor(x, y, width, height);
111118
}
112119

113-
//TODO
114120
/**
115121
* @author
116122
*/
@@ -124,7 +130,7 @@ public static int _getError() {
124130
*/
125131
@Overwrite(remap = false)
126132
public static void _texImage2D(int target, int level, int internalFormat, int width, int height, int border, int format, int type, @Nullable IntBuffer pixels) {
127-
RenderSystem.assertOnRenderThreadOrInit();
133+
RenderSystem.assertOnRenderThread();
128134
VkGlTexture.texImage2D(target, level, internalFormat, width, height, border, format, type, pixels != null ? MemoryUtil.memByteBuffer(pixels) : null);
129135
}
130136

@@ -133,7 +139,7 @@ public static void _texImage2D(int target, int level, int internalFormat, int wi
133139
*/
134140
@Overwrite(remap = false)
135141
public static void _texSubImage2D(int target, int level, int offsetX, int offsetY, int width, int height, int format, int type, long pixels) {
136-
RenderSystem.assertOnRenderThreadOrInit();
142+
RenderSystem.assertOnRenderThread();
137143
VkGlTexture.texSubImage2D(target, level, offsetX, offsetY, width, height, format, type, pixels);
138144
}
139145

@@ -174,8 +180,7 @@ public static int _getTexLevelParameter(int i, int j, int k) {
174180
*/
175181
@Overwrite(remap = false)
176182
public static void _pixelStore(int pname, int param) {
177-
//Used during upload to set copy offsets
178-
RenderSystem.assertOnRenderThreadOrInit();
183+
RenderSystem.assertOnRenderThread();
179184
VkGlTexture.pixelStoreI(pname, param);
180185
}
181186

@@ -184,7 +189,7 @@ public static void _pixelStore(int pname, int param) {
184189
*/
185190
@Overwrite(remap = false)
186191
public static int _genTexture() {
187-
RenderSystem.assertOnRenderThreadOrInit();
192+
RenderSystem.assertOnRenderThread();
188193
return VkGlTexture.genTextureId();
189194
}
190195

@@ -193,7 +198,7 @@ public static int _genTexture() {
193198
*/
194199
@Overwrite(remap = false)
195200
public static void _deleteTexture(int i) {
196-
RenderSystem.assertOnRenderThreadOrInit();
201+
RenderSystem.assertOnRenderThread();
197202
VkGlTexture.glDeleteTextures(i);
198203
}
199204

@@ -210,61 +215,98 @@ public static void _colorMask(boolean red, boolean green, boolean blue, boolean
210215
* @author
211216
*/
212217
@Overwrite(remap = false)
213-
public static void _depthFunc(int i) {
214-
RenderSystem.assertOnRenderThreadOrInit();
215-
VRenderSystem.depthFunc(i);
218+
public static void _polygonMode(int face, int mode) {
219+
RenderSystem.assertOnRenderThread();
220+
VRenderSystem.setPolygonModeGL(mode);
216221
}
217222

218223
/**
219224
* @author
220225
*/
221226
@Overwrite(remap = false)
222-
public static void _clearColor(float f, float g, float h, float i) {
223-
RenderSystem.assertOnRenderThreadOrInit();
224-
VRenderSystem.setClearColor(f, g, h, i);
227+
public static void _enablePolygonOffset() {
228+
RenderSystem.assertOnRenderThread();
229+
VRenderSystem.enablePolygonOffset();
225230
}
226231

227232
/**
228233
* @author
229234
*/
230235
@Overwrite(remap = false)
231-
public static void _clearDepth(double d) {
232-
// TODO
236+
public static void _disablePolygonOffset() {
237+
RenderSystem.assertOnRenderThread();
238+
VRenderSystem.disablePolygonOffset();
233239
}
234240

235241
/**
236242
* @author
237243
*/
238244
@Overwrite(remap = false)
239-
public static void _clear(int mask, boolean bl) {
245+
public static void _polygonOffset(float f, float g) {
246+
RenderSystem.assertOnRenderThread();
247+
VRenderSystem.polygonOffset(g, f);
248+
}
249+
250+
/**
251+
* @author
252+
*/
253+
@Overwrite(remap = false)
254+
public static void _enableColorLogicOp() {
255+
RenderSystem.assertOnRenderThread();
256+
VRenderSystem.enableColorLogicOp();
257+
}
258+
259+
/**
260+
* @author
261+
*/
262+
@Overwrite(remap = false)
263+
public static void _disableColorLogicOp() {
264+
RenderSystem.assertOnRenderThread();
265+
VRenderSystem.disableColorLogicOp();
266+
}
267+
268+
/**
269+
* @author
270+
*/
271+
@Overwrite(remap = false)
272+
public static void _logicOp(int i) {
273+
RenderSystem.assertOnRenderThread();
274+
VRenderSystem.logicOp(i);
275+
}
276+
277+
/**
278+
* @author
279+
*/
280+
@Overwrite(remap = false)
281+
public static void _clearColor(float f, float g, float h, float i) {
240282
RenderSystem.assertOnRenderThreadOrInit();
241-
VRenderSystem.clear(mask);
283+
VRenderSystem.setClearColor(f, g, h, i);
242284
}
243285

244286
/**
245287
* @author
246288
*/
247289
@Overwrite(remap = false)
248-
public static int glCreateProgram() {
290+
public static void _clearDepth(double d) {
249291
RenderSystem.assertOnRenderThread();
250-
return VkGlProgram.genProgramId();
292+
VRenderSystem.clearDepth(d);
251293
}
252294

253295
/**
254296
* @author
255297
*/
256298
@Overwrite(remap = false)
257-
public static void _glUseProgram(int i) {
299+
public static void _clear(int mask, boolean bl) {
258300
RenderSystem.assertOnRenderThread();
259-
VkGlProgram.glUseProgram(i);
301+
VRenderSystem.clear(mask);
260302
}
261303

262304
/**
263305
* @author
264306
*/
265307
@Overwrite(remap = false)
266308
public static void _disableDepthTest() {
267-
RenderSystem.assertOnRenderThreadOrInit();
309+
RenderSystem.assertOnRenderThread();
268310
VRenderSystem.disableDepthTest();
269311
}
270312

@@ -273,10 +315,19 @@ public static void _disableDepthTest() {
273315
*/
274316
@Overwrite(remap = false)
275317
public static void _enableDepthTest() {
276-
RenderSystem.assertOnRenderThreadOrInit();
318+
RenderSystem.assertOnRenderThread();
277319
VRenderSystem.enableDepthTest();
278320
}
279321

322+
/**
323+
* @author
324+
*/
325+
@Overwrite(remap = false)
326+
public static void _depthFunc(int i) {
327+
RenderSystem.assertOnRenderThreadOrInit();
328+
VRenderSystem.depthFunc(i);
329+
}
330+
280331
/**
281332
* @author
282333
*/
@@ -292,7 +343,7 @@ public static void _depthMask(boolean bl) {
292343
*/
293344
@Overwrite(remap = false)
294345
public static int glGenFramebuffers() {
295-
RenderSystem.assertOnRenderThreadOrInit();
346+
RenderSystem.assertOnRenderThread();
296347
return VkGlFramebuffer.genFramebufferId();
297348
}
298349

@@ -310,7 +361,7 @@ public static int glGenRenderbuffers() {
310361
*/
311362
@Overwrite(remap = false)
312363
public static void _glBindFramebuffer(int i, int j) {
313-
RenderSystem.assertOnRenderThreadOrInit();
364+
RenderSystem.assertOnRenderThread();
314365
VkGlFramebuffer.bindFramebuffer(i, j);
315366
}
316367

@@ -319,7 +370,7 @@ public static void _glBindFramebuffer(int i, int j) {
319370
*/
320371
@Overwrite(remap = false)
321372
public static void _glFramebufferTexture2D(int i, int j, int k, int l, int m) {
322-
RenderSystem.assertOnRenderThreadOrInit();
373+
RenderSystem.assertOnRenderThread();
323374
VkGlFramebuffer.framebufferTexture2D(i, j, k, l, m);
324375
}
325376

@@ -373,7 +424,7 @@ public static int _glGenBuffers() {
373424
*/
374425
@Overwrite(remap = false)
375426
public static void _glBindBuffer(int i, int j) {
376-
RenderSystem.assertOnRenderThreadOrInit();
427+
RenderSystem.assertOnRenderThread();
377428
VkGlBuffer.glBindBuffer(i, j);
378429
}
379430

@@ -382,7 +433,7 @@ public static void _glBindBuffer(int i, int j) {
382433
*/
383434
@Overwrite(remap = false)
384435
public static void _glBufferData(int i, ByteBuffer byteBuffer, int j) {
385-
RenderSystem.assertOnRenderThreadOrInit();
436+
RenderSystem.assertOnRenderThread();
386437
VkGlBuffer.glBufferData(i, byteBuffer, j);
387438
}
388439

@@ -391,7 +442,7 @@ public static void _glBufferData(int i, ByteBuffer byteBuffer, int j) {
391442
*/
392443
@Overwrite(remap = false)
393444
public static void _glBufferData(int i, long l, int j) {
394-
RenderSystem.assertOnRenderThreadOrInit();
445+
RenderSystem.assertOnRenderThread();
395446
VkGlBuffer.glBufferData(i, l, j);
396447
}
397448

@@ -410,7 +461,7 @@ public static ByteBuffer _glMapBuffer(int i, int j) {
410461
*/
411462
@Overwrite(remap = false)
412463
public static void _glUnmapBuffer(int i) {
413-
RenderSystem.assertOnRenderThreadOrInit();
464+
RenderSystem.assertOnRenderThread();
414465
VkGlBuffer.glUnmapBuffer(i);
415466
}
416467

@@ -428,4 +479,41 @@ public static void _glDeleteBuffers(int i) {
428479
*/
429480
@Overwrite(remap = false)
430481
public static void _disableVertexAttribArray(int i) {}
482+
483+
/**
484+
* @author
485+
*/
486+
@Overwrite(remap = false)
487+
public static void _glUseProgram(int i) {
488+
RenderSystem.assertOnRenderThread();
489+
VkGlProgram.glUseProgram(i);
490+
}
491+
492+
/**
493+
* @author
494+
*/
495+
@Overwrite(remap = false)
496+
public static int glCreateProgram() {
497+
RenderSystem.assertOnRenderThread();
498+
return VkGlProgram.genProgramId();
499+
}
500+
501+
/**
502+
* @author
503+
*/
504+
@Overwrite(remap = false)
505+
public static void glDeleteProgram(int i) {
506+
RenderSystem.assertOnRenderThread();
507+
// GL20.glDeleteProgram(i);
508+
}
509+
510+
/**
511+
* @author
512+
*/
513+
@Overwrite(remap = false)
514+
public static int _glGenVertexArrays() {
515+
RenderSystem.assertOnRenderThreadOrInit();
516+
// TODO
517+
return 0;
518+
}
431519
}

0 commit comments

Comments
 (0)